:root{--bda-orange:#f5822a;--bda-orange-dark:#dd6717;--bda-green:#4f8544;--bda-green-dark:#386b32;--bda-ink:#26302a;--bda-muted:#727b75;--bda-line:#e3e5e3;--bda-background:#f4f5f4;--bda-shadow:0 14px 36px rgba(48,61,52,.09)}
body{color:var(--bda-ink);background-color:var(--bda-background)}
.app-footer{min-height:50px;display:flex;align-items:center;justify-content:center;padding:.8rem 1.25rem;color:#1f2320;text-align:center;background:#f4f5f4;border-top:1px solid var(--bda-line);box-shadow:none}
.bda-brand{display:inline-flex;align-items:center;gap:.72rem;color:inherit;text-decoration:none}.bda-logo{display:block;width:auto;height:54px;object-fit:contain}.bda-logo-card{display:block;width:min(100%,260px);height:auto;margin-inline:auto}.sidebar .bda-logo{width:100%;height:auto;max-height:82px}.bda-brand-copy strong,.bda-brand-copy small{display:block}.bda-brand-copy strong{line-height:1.05}.bda-brand-copy small{margin-top:.18rem;color:var(--bda-muted);font-size:.7rem}
.btn-primary{--bs-btn-bg:var(--bda-orange);--bs-btn-border-color:var(--bda-orange);--bs-btn-hover-bg:var(--bda-orange-dark);--bs-btn-hover-border-color:var(--bda-orange-dark);--bs-btn-active-bg:var(--bda-orange-dark);--bs-btn-active-border-color:var(--bda-orange-dark)}.btn-outline-primary{--bs-btn-color:var(--bda-orange-dark);--bs-btn-border-color:var(--bda-orange);--bs-btn-hover-bg:var(--bda-orange);--bs-btn-hover-border-color:var(--bda-orange)}
.form-control:focus,.form-select:focus,.form-check-input:focus{border-color:rgba(245,130,42,.75);box-shadow:0 0 0 .25rem rgba(245,130,42,.16)}.form-check-input:checked{background-color:var(--bda-green);border-color:var(--bda-green)}.text-primary{color:var(--bda-orange-dark)!important}.bg-primary{background-color:var(--bda-orange)!important}.card,.card-stat{border-color:var(--bda-line)}.page-link{color:var(--bda-orange-dark)}.active>.page-link,.page-link.active{background-color:var(--bda-orange);border-color:var(--bda-orange)}

/* Dashboard: ikon statistik selalu bulat dan animasinya tetap halus. */
.stat-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 68px;
    width: 68px;
    height: 68px;
    aspect-ratio: 1 / 1;
    padding: 0 !important;
    border-radius: 50% !important;
    overflow: hidden;
}
.stat-icon i { display: block; line-height: 1; transform-origin: center; }
.dashboard-stat,
.dashboard-panel { animation: dashboardReveal .52s cubic-bezier(.22,.72,.24,1) both; }
.dashboard-stat { transition: transform .24s ease, box-shadow .24s ease; }
.dashboard-stat:hover { transform: translateY(-4px); box-shadow: 0 18px 38px rgba(48,61,52,.13); }
.dashboard-stat:hover .stat-icon i { animation: iconHello .55s ease; }
.dashboard-stats > div:nth-child(2) .dashboard-stat { animation-delay: .05s; }
.dashboard-stats > div:nth-child(3) .dashboard-stat { animation-delay: .10s; }
.dashboard-stats > div:nth-child(4) .dashboard-stat { animation-delay: .15s; }
.dashboard-stats > div:nth-child(5) .dashboard-stat { animation-delay: .20s; }
.dashboard-stats > div:nth-child(6) .dashboard-stat { animation-delay: .25s; }
.dashboard-panels > div:nth-child(2) .dashboard-panel { animation-delay: .10s; }
@keyframes dashboardReveal { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
@keyframes iconHello { 0%,100% { transform: scale(1) rotate(0); } 45% { transform: scale(1.1) rotate(-4deg); } 70% { transform: scale(1.04) rotate(3deg); } }
@media (prefers-reduced-motion: reduce) {
    .dashboard-stat,.dashboard-panel,.dashboard-stat:hover .stat-icon i { animation: none !important; }
    .dashboard-stat { transition: none; }
    .dashboard-stat:hover { transform: none; }
}
