:root {
    --brand-primary: #0d6efd;
    --brand-secondary: #123a67;
    --panel-bg: #f4f6f9;
    --pastel-sidebar: #eaf2ff;
    --pastel-sidebar-deep: #dbe8ff;
    --pastel-topbar: #f2f6ff;
    --pastel-text: #324f73;
    --pastel-active: #c7dcff;
}

body {
    background: var(--panel-bg);
}

.content-wrapper {
    background: linear-gradient(180deg, #f8fbff 0%, #f2f5f9 100%);
}

.main-header.navbar.navbar-pastel {
    background: var(--pastel-topbar) !important;
    border-bottom: 1px solid #d9e6fb !important;
}

.main-sidebar.sidebar-pastel {
    background: linear-gradient(180deg, var(--pastel-sidebar) 0%, var(--pastel-sidebar-deep) 100%) !important;
    border-right: 1px solid #d4e2f8;
}

.main-sidebar.sidebar-pastel .brand-link {
    border-bottom: 1px solid rgba(50, 79, 115, 0.2) !important;
    background: rgba(255, 255, 255, 0.34) !important;
}

.main-sidebar.sidebar-pastel .brand-link,
.main-sidebar.sidebar-pastel .brand-link .brand-text,
.main-sidebar.sidebar-pastel .nav-header {
    color: var(--pastel-text) !important;
}

.main-sidebar.sidebar-pastel .nav-sidebar .nav-link {
    border-radius: 0.55rem;
    margin: 2px 8px;
    color: var(--pastel-text) !important;
}

.main-sidebar.sidebar-pastel .nav-sidebar .nav-link p,
.main-sidebar.sidebar-pastel .nav-sidebar .nav-link .nav-icon {
    color: var(--pastel-text) !important;
}

.main-sidebar.sidebar-pastel .nav-sidebar .nav-link.active {
    background: var(--pastel-active) !important;
    color: #1e3f68 !important;
    box-shadow: inset 0 0 0 1px rgba(30, 63, 104, 0.15);
}

.main-sidebar.sidebar-pastel .nav-sidebar .nav-link:hover {
    background: rgba(255, 255, 255, 0.5) !important;
}

.page-title {
    font-weight: 700;
    color: #22344b;
}

.card {
    border-radius: 0.9rem;
    border: 0;
    box-shadow: 0 0.5rem 1rem rgba(15, 35, 67, 0.08);
}

.metric-card,
.summary-box,
.calc-box,
.report-line,
.account-line,
.alert-item {
    border-radius: 0.9rem;
}

.metric-card {
    background: #fff;
    padding: 1rem;
    border: 1px solid #e8edf5;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    height: 100%;
}

.metric-card.danger {
    background: linear-gradient(135deg, #fff8ea, #ffecd2);
    border-color: #ffd7a8;
}

.metric-card span,
.summary-box span,
.summary-box small {
    color: #6b7d93;
}

.metric-card strong,
.summary-box strong,
.calc-box strong {
    font-size: 1.25rem;
}

.summary-box {
    background: #f8fbff;
    border: 1px solid #e4ebf5;
    padding: 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
    min-height: 120px;
}

.calc-box {
    background: linear-gradient(120deg, #10233a, #173a63);
    color: #fff;
    padding: 1rem;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
    gap: 1rem;
}

.calc-box div {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
}

.account-line,
.report-line,
.alert-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    padding: 0.85rem 0;
    border-bottom: 1px solid #edf2f7;
}

.account-line:last-child,
.report-line:last-child,
.alert-item:last-child {
    border-bottom: 0;
}

.login-modern {
    background: linear-gradient(135deg, #0c2541 0%, #1b4f8b 55%, #2f7dd3 100%);
}

.login-page .card {
    box-shadow: 0 0.7rem 1.2rem rgba(0, 0, 0, 0.2);
}

.login-logo-image {
    width: 88px;
    height: 88px;
    object-fit: cover;
    border-radius: 14px;
    border: 3px solid #d8e7ff;
    box-shadow: 0 0.35rem 0.8rem rgba(33, 67, 118, 0.2);
}

@media (max-width: 767.98px) {
    .content-header {
        padding-left: 0.2rem;
        padding-right: 0.2rem;
    }

    .summary-box {
        min-height: auto;
    }
}
