/* Meu Dinheiro — Utilitários */

.text-income { color: var(--color-income) !important; }
.text-expense { color: var(--color-expense) !important; }
.text-navy { color: var(--color-navy) !important; }
.text-muted-corporate { color: var(--color-slate-muted) !important; }

.bg-surface { background: var(--color-surface) !important; }
.bg-muted { background: var(--surface-muted) !important; }

.border-corporate { border: 1px solid var(--color-border) !important; }

.truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Densidade mobile */
@media (max-width: 768px) {
    .dense-mobile .row {
        --bs-gutter-x: 0.5rem;
        --bs-gutter-y: 0.5rem;
    }

    .dense-mobile .card-body {
        padding: var(--spacing-sm) !important;
    }

    .dense-mobile .page-header {
        padding: var(--spacing-sm) var(--spacing-md);
        margin-bottom: var(--spacing-sm);
    }
}

/* Grid stats — dashboard tem 3 cards */
.stats-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: var(--spacing-sm);
}

@media (min-width: 768px) {
    .stats-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: var(--spacing-md);
    }
}

/* Hide decorative elements */
.no-emoji::before {
    content: none !important;
}

/* Alert corporate */
.alert-corporate {
    border-radius: var(--radius-md);
    border: 1px solid var(--color-border);
    font-size: var(--font-size-sm);
}

/* Table responsive dense */
.table-dense {
    font-size: var(--font-size-sm);
}

.table-dense th,
.table-dense td {
    padding: var(--spacing-sm) var(--spacing-md);
    vertical-align: middle;
}

/* Icon in headers */
.header-icon {
    color: var(--color-navy);
    font-size: var(--font-size-lg);
    margin-right: var(--spacing-xs);
}
