﻿/* ═══════════════════ REPORT DESIGN SYSTEM ═══════════════════ */
:root {
    --rep-bg-card: #ffffff;
    --rep-bg-alt: #f8f9fa;
    --rep-border-color: #e0e0e0;
    --rep-text-primary: #1b3a5c;
    --rep-text-muted: #6c757d;
    --rep-narrative-bg: #f5f5f5;
    --rep-table-header: #e8f5e9;
    --rep-table-accent: #f1f8e9;
}

/* Dark Mode Overrides */
.mud-theme-dark {
    --rep-bg-card: #1e1e1e;
    --rep-bg-alt: #2d2d2d;
    --rep-border-color: #3d3d3d;
    --rep-text-primary: #90caf9;
    --rep-text-muted: #b0bec5;
    --rep-narrative-bg: #263238;
    --rep-table-header: #1b5e20;
    --rep-table-accent: #2e7d32;
}

/* Print Overrides */
@media print {
    .hideWhenPrint {
        display: none !important;
    }

    .report-card {
        box-shadow: none !important;
        border: 1px solid #ddd !important;
        page-break-inside: avoid;
        background: #fff !important;
        color: #000 !important;
    }

    .report-header {
        border-bottom: 3px solid #1B3A5C;
        margin-bottom: 20px;
        padding-bottom: 10px;
    }
}

/* ═══════════════════ COMPONENTS ═══════════════════ */
.report-header {
    padding: 24px 16px;
    text-align: center;
}

    .report-header h5 {
        font-weight: 800 !important;
        color: var(--rep-text-primary);
        letter-spacing: 0.5px;
    }

.report-card {
    background-color: var(--rep-bg-card) !important;
    border-radius: 12px !important;
    transition: transform 0.2s, box-shadow 0.2s;
}

    .report-card:hover {
        transform: translateY(-2px);
    }

.narrative-box {
    background-color: var(--rep-narrative-bg) !important;
    border-radius: 8px;
    border-right: 4px solid #1B3A5C;
    padding: 16px;
}

/* Professional Table Styling */
.pro-table {
    width: 100%;
    max-width: 700px;
    border-collapse: collapse;
    margin-top: 16px;
    background-color: var(--rep-bg-card);
    border-radius: 8px;
    overflow: hidden;
    border: 1px solid var(--rep-border-color);
}

    .pro-table th {
        background-color: var(--rep-table-header) !important;
        color: var(--rep-text-primary) !important;
        font-weight: 700 !important;
        padding: 12px 16px;
        text-transform: uppercase;
        font-size: 0.85rem;
    }

    .pro-table td {
        padding: 12px 16px;
        border-bottom: 1px solid var(--rep-border-color);
        font-size: 0.95rem;
    }

    .pro-table tr.accent-row {
        background-color: var(--rep-table-accent) !important;
        font-weight: 600;
    }

    .pro-table tr.total-row {
        font-weight: 700;
        font-size: 1.05rem;
    }

/* Asset Composition Bar */
.composition-bar {
    display: flex;
    height: 32px;
    border-radius: 6px;
    overflow: hidden;
    width: 100%;
    box-shadow: inset 0 1px 3px rgba(0,0,0,0.2);
    background-color: var(--rep-bg-alt);
}

.composition-segment {
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 11px;
    font-weight: 700;
}
