 :root{--gzhoa-green:#2f6b3f;--gzhoa-green-dark:#1f4d2d;--gzhoa-lime:#8dbf45;--gzhoa-charcoal:#1f2421}body{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.text-gzhoa{color:var(--gzhoa-green)!important}.app-sidebar{background:var(--gzhoa-charcoal)!important}.gzhoa-brand-link{gap:.65rem}.gzhoa-brand-mark{width:36px!important;height:36px!important;object-fit:contain;margin-left:.1rem}.gzhoa-nav-disabled{cursor:default;opacity:.72}.gzhoa-nav-disabled:hover{background:transparent!important}.gzhoa-nav-disabled .badge{font-size:.62rem;vertical-align:middle}.gzhoa-card-accent{border-top:3px solid var(--gzhoa-green)}.gzhoa-icon-box{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border-radius:.75rem;background:rgba(47,107,63,.1);color:var(--gzhoa-green);font-size:1.25rem}.user-avatar{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:rgba(47,107,63,.12);color:var(--gzhoa-green)}.gzhoa-login-logo{display:block;width:145px;height:145px;object-fit:contain;margin:0 auto}@media(max-width:575.98px){.app-content-header .breadcrumb{display:none}.gzhoa-login-logo{width:125px;height:125px}}.gzhoa-theme-check{font-size:1rem}.dropdown-menu .dropdown-item.active,.dropdown-menu .dropdown-item:active{background-color:var(--bs-primary-bg-subtle);color:var(--bs-emphasis-color)}

/* GZHOA theme selector: keep the trigger visibly identifiable on the light navbar. */
.gzhoa-theme-toggle{width:38px;height:38px;display:inline-flex!important;align-items:center;justify-content:center;padding:0!important;margin:.15rem .25rem;border:1px solid var(--bs-border-color);border-radius:50%;color:var(--bs-body-color)!important;background:var(--bs-body-bg);line-height:1;text-decoration:none!important}
.gzhoa-theme-toggle:hover,.gzhoa-theme-toggle:focus{color:var(--gzhoa-green)!important;background:var(--bs-tertiary-bg);border-color:var(--gzhoa-green);box-shadow:none}
.gzhoa-theme-toggle i{font-size:1.05rem;line-height:1}

/* Dashboard */
.gzhoa-dashboard-stat,
.gzhoa-dashboard-finance-card{border:1px solid var(--bs-border-color);transition:transform .15s ease,box-shadow .15s ease}.gzhoa-dashboard-stat:hover{transform:translateY(-2px);box-shadow:0 .35rem 1rem rgba(0,0,0,.08)}.gzhoa-dashboard-stat-success{border-top:3px solid var(--bs-success)}.gzhoa-dashboard-stat-primary{border-top:3px solid var(--bs-primary)}.gzhoa-dashboard-stat-info{border-top:3px solid var(--bs-info)}.gzhoa-dashboard-stat-secondary{border-top:3px solid var(--bs-secondary)}.gzhoa-dashboard-icon{width:46px;height:46px;display:inline-flex;align-items:center;justify-content:center;border-radius:.8rem;background:var(--bs-tertiary-bg);color:var(--gzhoa-green);font-size:1.35rem;flex:0 0 auto}.gzhoa-chart-container{position:relative;height:300px}.gzhoa-chart-container-small{height:250px}.gzhoa-activity-icon{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--bs-tertiary-bg);color:var(--gzhoa-green);flex:0 0 auto}.min-w-0{min-width:0}@media(max-width:575.98px){.gzhoa-chart-container{height:240px}.gzhoa-chart-container-small{height:220px}}

.gzhoa-chart-year-select{min-width:92px;width:auto}

/* Listing UI */
.gzhoa-filter-card{border:1px solid var(--bs-border-color);box-shadow:0 .1rem .35rem rgba(0,0,0,.03)}
.gzhoa-filter-card .form-control,.gzhoa-filter-card .form-select{min-height:40px}
.gzhoa-filter-card .input-group-text{background:var(--bs-tertiary-bg);color:var(--bs-secondary-color)}
.gzhoa-list-card{border:1px solid var(--bs-border-color);box-shadow:0 .1rem .35rem rgba(0,0,0,.03);overflow:hidden}
.gzhoa-list-card .card-header{padding:.9rem 1rem;background:var(--bs-body-bg);border-bottom:1px solid var(--bs-border-color)}
.gzhoa-data-table thead th{font-size:.75rem;text-transform:uppercase;letter-spacing:.035em;color:var(--bs-secondary-color);font-weight:700;white-space:nowrap;background:var(--bs-tertiary-bg);border-bottom:1px solid var(--bs-border-color)}
.gzhoa-data-table tbody td{padding:.78rem .9rem}
.gzhoa-data-table tbody tr:last-child td{border-bottom:0}
.gzhoa-list-footer{display:flex;gap:1rem;justify-content:space-between;align-items:center;flex-wrap:wrap}
.gzhoa-pagination-meta{font-size:.8rem;color:var(--bs-secondary-color)}
.gzhoa-pagination{gap:.2rem}
.gzhoa-pagination .page-link{border-radius:.4rem;min-width:34px;text-align:center;border-color:var(--bs-border-color);color:var(--bs-body-color)}
.gzhoa-pagination .page-item.active .page-link{background:var(--gzhoa-green);border-color:var(--gzhoa-green);color:#fff}
.gzhoa-pagination .page-item.disabled .page-link{color:var(--bs-secondary-color);background:var(--bs-tertiary-bg)}
.gzhoa-pagination .page-link:hover{background:var(--bs-success-bg-subtle);border-color:var(--gzhoa-green);color:var(--gzhoa-green)}
/* Lighter, compact AdminLTE sidebar */
.gzhoa-sidebar{background:var(--bs-body-bg)!important;border-right:1px solid var(--bs-border-color);box-shadow:2px 0 10px rgba(0,0,0,.04)!important}
.gzhoa-sidebar .sidebar-brand{background:var(--bs-body-bg);border-bottom:1px solid var(--bs-border-color)}
.gzhoa-sidebar .brand-link{color:var(--bs-emphasis-color)!important}
.gzhoa-sidebar .sidebar-menu>.nav-item>.nav-link{color:var(--bs-body-color);border-radius:.45rem;margin:.08rem .55rem;padding:.62rem .7rem}
.gzhoa-sidebar .sidebar-menu>.nav-item>.nav-link:hover{background:var(--bs-tertiary-bg);color:var(--gzhoa-green)}
.gzhoa-sidebar .sidebar-menu>.nav-item>.nav-link.active{background:rgba(47,107,63,.1);color:var(--gzhoa-green);font-weight:600}
.gzhoa-sidebar .gzhoa-nav-group{margin:.12rem .35rem}
.gzhoa-sidebar .gzhoa-nav-group-toggle{font-weight:600;color:var(--bs-secondary-color)!important;text-transform:none}
.gzhoa-sidebar .gzhoa-nav-group-toggle .nav-arrow{transition:transform .15s ease}
.gzhoa-sidebar .gzhoa-nav-group.menu-open>.gzhoa-nav-group-toggle{color:var(--gzhoa-green)!important;background:var(--bs-tertiary-bg)}
.gzhoa-sidebar .gzhoa-nav-group .nav-treeview{padding-bottom:.2rem}
.gzhoa-sidebar .nav-treeview .nav-link{margin:.02rem .55rem .02rem 1.1rem;padding:.45rem .7rem;border-radius:.4rem;color:var(--bs-secondary-color)}
.gzhoa-sidebar .nav-treeview .nav-link:hover{background:var(--bs-tertiary-bg);color:var(--gzhoa-green)}
.gzhoa-sidebar .nav-treeview .nav-link.active{background:rgba(47,107,63,.1);color:var(--gzhoa-green);font-weight:600}
.gzhoa-sidebar .nav-treeview .nav-icon{font-size:.9rem}
.gzhoa-sidebar .gzhoa-nav-disabled{cursor:default;opacity:.62}
.gzhoa-sidebar .gzhoa-nav-disabled:hover{background:transparent!important;color:var(--bs-secondary-color)!important}
.gzhoa-sidebar .sidebar-wrapper{padding-bottom:1rem}


/* GZHOA Green AdminLTE shell */
:root {
  --gzhoa-green: #2f6b3f;
  --gzhoa-green-dark: #1f4d2d;
  --gzhoa-green-deep: #173b25;
  --gzhoa-lime: #8dbf45;
  --gzhoa-green-soft: #e9f3e5;
}

/* Keep header and sidebar brand perfectly aligned. */
.app-header {
  min-height: 64px !important;
  height: 64px !important;
  background: linear-gradient(90deg, var(--gzhoa-green-dark), var(--gzhoa-green)) !important;
  border-bottom: 1px solid rgba(255,255,255,.12) !important;
  color: #fff !important;
}
.app-header .navbar-nav .nav-link,
.app-header .navbar-nav .nav-link i,
.app-header .text-gzhoa {
  color: #fff !important;
}
.app-header .nav-link:hover {
  background: rgba(255,255,255,.10);
}
.app-header .gzhoa-theme-toggle {
  border: 1px solid rgba(255,255,255,.28);
  border-radius: 50%;
  width: 38px;
  height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.app-header .user-avatar {
  background: rgba(255,255,255,.16);
  color: #fff;
}

.gzhoa-sidebar {
  background: linear-gradient(180deg, var(--gzhoa-green-dark) 0%, var(--gzhoa-green-deep) 100%) !important;
  border-right: 1px solid rgba(0,0,0,.18) !important;
  color: rgba(255,255,255,.92) !important;
}
.gzhoa-sidebar .sidebar-brand,
.gzhoa-sidebar .brand-link {
  height: 64px !important;
  min-height: 64px !important;
}
.gzhoa-sidebar .sidebar-brand {
  background: var(--gzhoa-green-dark) !important;
  border-bottom: 1px solid rgba(255,255,255,.12) !important;
}
.gzhoa-sidebar .brand-link {
  display: flex !important;
  align-items: center !important;
  padding: .75rem 1rem !important;
  color: #fff !important;
}
.gzhoa-sidebar .gzhoa-brand-mark {
  width: 38px !important;
  height: 38px !important;
  margin: 0 !important;
}
.gzhoa-sidebar .brand-text {
  color: #fff !important;
}
.gzhoa-sidebar .sidebar-menu > .nav-item > .nav-link {
  color: rgba(255,255,255,.88) !important;
}
.gzhoa-sidebar .sidebar-menu > .nav-item > .nav-link:hover,
.gzhoa-sidebar .gzhoa-nav-group-toggle:hover {
  background: rgba(255,255,255,.09) !important;
  color: #fff !important;
}
.gzhoa-sidebar .gzhoa-nav-group-toggle {
  color: rgba(255,255,255,.76) !important;
}
.gzhoa-sidebar .gzhoa-nav-group.menu-open > .gzhoa-nav-group-toggle {
  color: #fff !important;
  background: rgba(255,255,255,.08) !important;
}
.gzhoa-sidebar .nav-treeview .nav-link {
  color: rgba(255,255,255,.74) !important;
}
.gzhoa-sidebar .nav-treeview .nav-link:hover {
  background: rgba(255,255,255,.08) !important;
  color: #fff !important;
}
.gzhoa-sidebar .sidebar-menu .nav-link.active,
.gzhoa-sidebar .nav-treeview .nav-link.active {
  background: var(--gzhoa-lime) !important;
  color: #173b25 !important;
  font-weight: 700;
  box-shadow: 0 2px 8px rgba(0,0,0,.16);
}
.gzhoa-sidebar .gzhoa-nav-disabled {
  color: rgba(255,255,255,.42) !important;
}
.gzhoa-sidebar .gzhoa-nav-disabled:hover {
  background: transparent !important;
  color: rgba(255,255,255,.42) !important;
}

.app-footer {
  border-top: 3px solid var(--gzhoa-green) !important;
  background: linear-gradient(90deg, rgba(47,107,63,.10), rgba(141,191,69,.06)) !important;
}
.app-footer strong { color: var(--gzhoa-green-dark); }

[data-bs-theme="dark"] .app-footer {
  background: rgba(47,107,63,.16) !important;
}
[data-bs-theme="dark"] .app-footer strong { color: var(--gzhoa-lime); }


/* Keep the currently active AdminLTE treeview group expanded on page load. */
.gzhoa-sidebar .gzhoa-nav-group.menu-open > .nav-treeview {
  display: block !important;
}
.gzhoa-sidebar .gzhoa-nav-group.menu-open > .gzhoa-nav-group-toggle .nav-arrow {
  transform: rotate(90deg);
}
.gzhoa-sidebar .gzhoa-nav-group > .gzhoa-nav-group-toggle.active {
  background: rgba(255,255,255,.12) !important;
  color: #fff !important;
}
