body { background: #f6f7f9; }
.card.stat .label { font-size: .8rem; color: #6c757d; text-transform: uppercase; letter-spacing: .03em; }
.card.stat .value { font-size: 1.6rem; font-weight: 600; }
.table-sm td, .table-sm th { padding: .25rem .4rem; white-space: nowrap; }
.num { text-align: right; font-variant-numeric: tabular-nums; }
.calc { background: #eef3f8; }
.filter-bar .form-control, .filter-bar .form-select { min-width: 9rem; }
.nav-icon { vertical-align: -3px; margin-right: .25rem; }
.btn-icon { padding: .2rem .45rem; line-height: 1; }
.btn-icon svg { vertical-align: -2px; }
/* Challan list: a challan whose paper has not come in from the agent, and one received but not yet paid. */
.table .row-unreceived > td { background-color: #ffd8a8; }
.table .row-unpaid > td { background-color: #fff3bf; }
.legend-swatch { display: inline-block; width: 1em; height: 1em; vertical-align: -2px; border: 1px solid #ccc; margin-right: .25rem; }
.pagination { flex-wrap: wrap; }
.form-label { margin-bottom: .15rem; font-size: .9rem; }
@media (max-width: 991.98px) {
    .calc.sticky-top { position: static; }
}
@media (max-width: 767.98px) {
    h3 { font-size: 1.3rem; }
    .card.stat .value { font-size: 1.2rem; }
    .filter-bar .form-control, .filter-bar .form-select { min-width: 0; width: 100%; }
    .filter-bar .col-auto { flex: 1 1 45%; }
    main.container-fluid { padding-left: .6rem; padding-right: .6rem; }
    .table-sm td, .table-sm th { padding: .2rem .3rem; font-size: .85rem; }
    .form-control, .form-select { font-size: 16px; } /* keeps iOS from zooming into inputs */
}
@media print {
    .no-print { display: none !important; }
    body { background: #fff; }
    main { padding: 0 !important; }
    .table { font-size: 11px; }
}
