body { font-size: 0.9rem; }

.navbar-brand { font-size: 1rem; letter-spacing: 0.02em; }

/* Dashboard table: tighter cells */
.table.small td, .table.small th { padding: 0.35rem 0.5rem; }

/* Progress color shortcuts */
.bg-success { background-color: #198754 !important; }
.table-success td { background-color: #d1e7dd; }
.table-warning td { background-color: #fff3cd; }

/* Custom row hover — preserves row color */
.job-table tbody tr:hover td { filter: brightness(0.93); cursor: default; }

/* Touch-friendly scan checkboxes */
.dept-scan-check {
    width: 1.6rem;
    height: 1.6rem;
    cursor: pointer;
    flex-shrink: 0;
}

/* Touch-friendly scan icons (shop view) */
.scan-status-icon { font-size: 1.5rem; line-height: 1; }

/* Tablet/mobile adjustments */
@media (max-width: 991px) {
    /* More breathing room in cabinet scan rows */
    .cabinet-scan-table td { padding: 0.55rem 0.4rem; }
    /* Dept buttons on scan page: min height for finger tap */
    .dept-btn { min-height: 2.5rem; padding: 0.4rem 0.85rem; }
}

/* Mobile: make tables scrollable */
@media (max-width: 768px) {
    .table-responsive { font-size: 0.8rem; }
    .container-fluid { padding: 0.5rem; }
}

/* PIN pad buttons */
.pin-btn { font-size: 1.2rem; font-weight: 600; }

/* Drag handle */
.drag-handle { user-select: none; }
tr[draggable="true"]:hover { background: #f8f9fa; }

/* Schedule grid */
.schedule-table th, .schedule-table td {
    min-width: 90px;
    font-size: 0.75rem;
    padding: 2px 4px;
    white-space: nowrap;
}
.schedule-table .monday { background-color: #ffcccc !important; font-weight: bold; }
.schedule-table .delivery-row td { background-color: #add8e6; }
