/* Custom styles for BudgetBlazorClient */

.btn-group-sm .btn {
    margin-right: 2px;
}


.category-badge {
    display: inline-block;
    padding: 0.35em 0.65em;
    font-size: 0.75em;
    font-weight: 700;
    line-height: 1;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    border-radius: 0.25rem;
}

.modal {
    transition: opacity 0.15s linear;
}

/* Transaction amount styling */
.amount-credit {
    color: #198754;
    font-weight: 500;
}

.amount-debit {
    color: #dc3545;
    font-weight: 500;
}

/* Custom card styling */
.card {
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
    margin-bottom: 1.5rem;
}

.card-header {
    background-color: rgba(0, 0, 0, 0.03);
    border-bottom: 1px solid rgba(0, 0, 0, 0.125);
}

/* Dashboard summary cards */
.summary-card {
    text-align: center;
    padding: 1rem;
}

.summary-card .value {
    font-size: 1.5rem;
    font-weight: bold;
}

.summary-card .label {
    font-size: 0.9rem;
    color: #6c757d;
}

.summary-card.income {
    background-color: rgba(25, 135, 84, 0.1);
}

.summary-card.expense {
    background-color: rgba(220, 53, 69, 0.1);
}

.summary-card.net {
    background-color: rgba(13, 110, 253, 0.1);
}

/* Dashboard styles */
.dashboard-section {
    margin-bottom: 2rem;
}

.dashboard-card {
    transition: all 0.3s ease;
}

.dashboard-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

.dashboard-icon {
    font-size: 2rem;
    margin-bottom: 0.5rem;
}

.stats-value {
    font-size: 2rem;
    font-weight: bold;
}

.stats-label {
    font-size: 0.9rem;
    color: #6c757d;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.trend-up {
    color: #198754;
}

.trend-down {
    color: #dc3545;
}

.chart-container {
    position: relative;
    height: 300px;
    margin-top: 1rem;
}

/* Grid layout for dashboard widgets */
.dashboard-grid {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-gap: 1rem;
}

.grid-col-12 {
    grid-column: span 12;
}

.grid-col-6 {
    grid-column: span 6;
}

.grid-col-4 {
    grid-column: span 4;
}

.grid-col-3 {
    grid-column: span 3;
}

@media (max-width: 992px) {
    .grid-col-6, .grid-col-4, .grid-col-3 {
        grid-column: span 6;
    }
}

@media (max-width: 768px) {
    .dashboard-grid {
        grid-template-columns: 1fr;
    }
    
    .grid-col-6, .grid-col-4, .grid-col-3 {
        grid-column: span 1;
    }
}

/* Summary card colors */
.income-card .card-header {
    background-color: #198754;
}

.expense-card .card-header {
    background-color: #dc3545;
}

.balance-card .card-header {
    background-color: #0d6efd;
}
