html, body {
    font-family: 'Roboto', sans-serif;
    height: 100%;
}

.mud-table-cell { white-space: nowrap; }

.mud-data-grid tbody tr:hover td {
    background: rgba(46, 125, 50, 0.04);
}

.mud-nav-link.active {
    background: rgba(46, 125, 50, 0.12) !important;
    color: #2E7D32 !important;
    font-weight: 500;
}

.rounded-lg { border-radius: 12px !important; }

.mud-button-label { text-transform: none !important; }

/* Compact grid rows */
.dense-grid .mud-table-root {
    table-layout: auto;
}
.dense-grid .mud-table-cell {
    padding-top: 2px !important;
    padding-bottom: 2px !important;
    padding-left: 8px !important;
    padding-right: 12px !important;
    line-height: 1.3 !important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.dense-grid tr {
    height: 32px !important;
    max-height: 32px !important;
    cursor: pointer;
}
.dense-grid tr.mud-selected-row {
    background: rgba(46, 125, 50, 0.12) !important;
}
.dense-grid .mud-icon-button {
    padding: 2px !important;
    width: 26px !important;
    height: 26px !important;
}
.dense-grid .mud-icon-button .mud-icon-root {
    font-size: 18px !important;
    width: 18px !important;
    height: 18px !important;
}

.amount-col     { text-align: right !important; font-variant-numeric: tabular-nums; }
.amount-positive { color: #2e7d32; font-weight: 600; }
.amount-negative { color: #c62828; font-weight: 600; }

/* Compact select dropdown items */
.mud-popover .mud-list-item {
    padding-top: 3px !important;
    padding-bottom: 3px !important;
}
.mud-popover .mud-list-item-text {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

@media print {
    .mud-drawer, .mud-appbar, .mud-button, .mud-icon-button, .no-print {
        display: none !important;
    }
    .mud-main-content, .mud-layout, body {
        padding: 0 !important;
        margin: 0 !important;
        background: #fff !important;
    }
}
