body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; }
.tab-btn.active { background-color: rgb(51 65 85); }
#modal-load:not(.hidden), #modal-customer:not(.hidden), #modal-carrier:not(.hidden), #modal-lead:not(.hidden), #modal-activity:not(.hidden), #modal-user:not(.hidden), #modal-columns:not(.hidden) { display: flex; }
#loads-table tbody tr { border-top: 1px solid #e2e8f0; }
#loads-table tbody tr:hover { background: #f8fafc; cursor: pointer; }
.status-pill { display: inline-block; padding: 2px 8px; border-radius: 9999px; font-size: 0.7rem; font-weight: 600; }
select.status-pill { appearance: none; -webkit-appearance: none; padding-right: 18px; background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10'><path d='M2 4l3 3 3-3' stroke='%23334155' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/></svg>"); background-repeat: no-repeat; background-position: right 4px center; outline: none; }
select.status-pill:focus { box-shadow: 0 0 0 2px rgba(249,115,22,0.4); }
.status-notbooked { background: #fee2e2; color: #991b1b; }
.status-booked { background: #dbeafe; color: #1e40af; }
.status-pickedup { background: #fed7aa; color: #9a3412; }
.status-delivered { background: #d1fae5; color: #065f46; }
.status-invoiced { background: #e9d5ff; color: #6b21a8; }
.status-paid { background: #bbf7d0; color: #14532d; }
th.sortable { cursor: pointer; user-select: none; position: relative; }
th.sortable:hover { background: #e2e8f0; }
th.sortable::after { content: " ↕"; opacity: 0.3; font-size: 0.65rem; }
th.sortable.sort-asc::after { content: " ▲"; opacity: 1; color: #ea580c; }
th.sortable.sort-desc::after { content: " ▼"; opacity: 1; color: #ea580c; }
@media print { header, nav, .no-print { display: none; } }
