﻿.filter-card {
    background-color: #f8f9fa;
    border-radius: 0.5rem;
}

.invoice-card {
    border: 1px solid #e9ecef;
    border-radius: 0.75rem;
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.05);
    transition: box-shadow .2s ease-in-out, transform .2s ease-in-out;
    background-color: #fff;
}

    .invoice-card:hover {
        transform: translateY(-4px);
        box-shadow: 0 0.5rem 1.5rem rgba(0, 0, 0, 0.08);
    }

    .invoice-card .card-body {
        padding: 1.25rem;
    }

    .invoice-card .label {
        font-size: 0.8rem;
        color: #6c757d;
        margin-bottom: 0.1rem;
        text-transform: uppercase;
        letter-spacing: .5px;
    }

    .invoice-card .value {
        font-size: 1rem;
        font-weight: 500;
        color: #212529;
    }

        .invoice-card .value.invoice-number {
            color: var(--bs-primary);
            font-weight: 600;
        }

        .invoice-card .value.invoice-amount {
            font-weight: 600;
            font-size: 1.1rem;
            color: #343a40;
        }

.filter-input-cell {
    padding: 0.25rem;
}

.invoice-card-mobile {
    border: 1px solid #dee2e6;
    border-radius: 0.75rem;
    box-shadow: 0 2px 4px rgba(0,0,0,0.05);
    background-color: #fff;
    overflow: hidden;
    transition: box-shadow .2s ease-in-out, transform .2s ease-in-out;
}

    .invoice-card-mobile:hover {
        transform: translateY(-4px);
        box-shadow: 0 0.5rem 1rem rgba(0,0,0,0.1);
    }

    .invoice-card-mobile .card-header {
        background-color: #f8f9fa;
        border-bottom: 1px solid #dee2e6;
        padding: 0.75rem 1rem;
    }

    .invoice-card-mobile .invoice-id {
        font-weight: 600;
        color: #212529;
    }

    .invoice-card-mobile .card-body {
        padding: 1rem;
    }

    .invoice-card-mobile .balance-label {
        font-size: 0.8rem;
        color: #6c757d;
        text-transform: uppercase;
        letter-spacing: .5px;
    }

    .invoice-card-mobile .balance-amount {
        font-size: 1.75rem;
        font-weight: 700;
        color: var(--bs-primary);
    }

    .invoice-card-mobile .invoice-details-list {
        font-size: 0.9rem;
    }

        .invoice-card-mobile .invoice-details-list .list-group-item {
            background-color: transparent;
            border: none;
            padding: 0.5rem 0;
        }

        .invoice-card-mobile .invoice-details-list i {
            color: #6c757d;
            width: 1.25rem;
        }

.invoice-status {
    font-size: 0.75rem;
    font-weight: 600;
    padding: 0.35rem 0.7rem;
    border-radius: 50rem;
    letter-spacing: .5px;
    text-transform: uppercase;
    white-space: nowrap;
}

.invoice-status-paid {
    color: #198754;
    background-color: rgba(25, 135, 84, 0.1);
    border: 1px solid rgba(25, 135, 84, 0.2);
}

.invoice-status-due {
    color: #fd7e14;
    background-color: rgba(253, 126, 20, 0.1);
    border: 1px solid rgba(253, 126, 20, 0.2);
}

@media (max-width: 575.98px) {
    .d-flex.align-items-center.mb-2 {
        display
