body {
    background: #f5f7fb;
    color: #1f2937;
}

.hero-panel {
    border: 0;
    border-radius: 22px;
    padding: 2.2rem;
}

.hero-logo {
    max-width: 240px;
    filter: drop-shadow(0 12px 24px rgba(0, 0, 0, 0.08));
}

.card,
.small-box,
.alert,
.modal-content {
    border-radius: 18px;
    box-shadow: 0 10px 26px rgba(15, 23, 42, 0.05);
    border: 0;
}

.card-header {
    background: rgba(13, 110, 253, 0.04);
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}

.brand-link,
.main-header {
    border-bottom: 0;
}

.chart-container {
    min-height: 320px;
}

.card-stat h3 {
    font-size: 2rem;
    font-weight: 700;
}

.timeline-item-public {
    padding-bottom: 1rem;
    margin-bottom: 1rem;
    border-bottom: 1px solid #e5e7eb;
}

.timeline-item-public:last-child {
    padding-bottom: 0;
    margin-bottom: 0;
    border-bottom: 0;
}

.profile-avatar {
    width: 112px;
    height: 112px;
    object-fit: cover;
    border-radius: 50%;
    border: 4px solid #e5e7eb;
}

.table td,
.table th {
    vertical-align: middle !important;
}

#map {
    border-radius: 16px;
}

.theme-default-blue .main-sidebar {
    background: #1f2937 !important;
}
.theme-default-blue .main-header,
.theme-default-blue .bg-primary,
.theme-default-blue .btn-primary {
    background-color: #0d6efd !important;
    border-color: #0d6efd !important;
}

.theme-emerald .main-sidebar {
    background: #064e3b !important;
}
.theme-emerald .main-header,
.theme-emerald .bg-primary,
.theme-emerald .btn-primary {
    background-color: #059669 !important;
    border-color: #059669 !important;
}

.theme-sunset .main-sidebar {
    background: #7c2d12 !important;
}
.theme-sunset .main-header,
.theme-sunset .bg-primary,
.theme-sunset .btn-primary {
    background-color: #ea580c !important;
    border-color: #ea580c !important;
}

.theme-midnight .main-sidebar {
    background: #0f172a !important;
}
.theme-midnight .main-header,
.theme-midnight .bg-primary,
.theme-midnight .btn-primary {
    background-color: #334155 !important;
    border-color: #334155 !important;
}

@media print {
    .main-sidebar,
    .main-header,
    .btn,
    .dataTables_filter,
    .dataTables_length,
    .dataTables_paginate,
    .dataTables_info,
    footer {
        display: none !important;
    }
    .content-wrapper {
        margin-left: 0 !important;
    }
}

@media (max-width: 991.98px) {
    .hero-panel {
        padding: 1.5rem;
    }
}

@media (max-width: 767.98px) {
    .content-wrapper {
        padding: 0.75rem !important;
    }

    .btn {
        margin-bottom: 0.35rem;
    }

    .chart-container {
        min-height: 240px;
    }
}
