.driver-operations { margin: 20px 0; }
.driver-operations-head { display: flex; gap: 16px; align-items: flex-start; justify-content: space-between; margin-bottom: 16px; }
.driver-operations-head h2, .driver-operations h3 { margin: 0 0 8px; }
.driver-operations-head p { margin: 0; max-width: 75ch; }
.driver-operations-grid { display: grid; gap: 16px; grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr)); }
.driver-operations-card { padding: 18px; border: 1px solid var(--line, #dededc); border-radius: 14px; min-width: 0; background: var(--surface, #fff); }
.driver-operations-card header { display: flex; justify-content: space-between; gap: 12px; }
.driver-operations-totals { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 14px; margin: 14px 0; }
.driver-operations-totals div { display: flex; flex-direction: column; gap: 3px; }
.driver-operations-totals dt { font-size: .85rem; }
.driver-operations-totals dd { margin: 0; font-weight: 700; font-variant-numeric: tabular-nums; }
.driver-operations form { display: grid; gap: 12px; margin-top: 14px; }
.driver-operations label { display: grid; gap: 6px; }
.driver-operations input, .driver-operations textarea, .driver-operations select { width: 100%; box-sizing: border-box; border: 1px solid var(--line, #dededc); border-radius: 8px; padding: 10px; font: inherit; color: inherit; background: #fff; }
.driver-operations label > span { display: flex; align-items: flex-start; gap: 9px; line-height: 1.45; }
.driver-operations input[type=checkbox] { width: 18px; height: 18px; padding: 0; margin: 2px 0 0; flex: 0 0 18px; }
.driver-operations button { min-height: 42px; border-radius: 8px; padding: 10px 14px; font: inherit; }
.driver-operations button:not(.primary-action) { border: 1px solid var(--line, #dededc); background: #f4f3f0; color: #1b1b1b; }
.driver-operations textarea { min-height: 84px; }
.driver-operations-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.driver-operations-note, .driver-operations-history p { white-space: pre-wrap; overflow-wrap: anywhere; }
.driver-operations-history { margin-top: 12px; padding-top: 12px; border-top: 1px solid var(--line, #dededc); }
.driver-operations-history summary { cursor: pointer; font-weight: 600; }
.driver-operations-history article { padding: 10px 0; border-bottom: 1px solid var(--line, #dededc); }
.driver-operations-alert { padding: 10px 12px; background: #fff2e8; border: 1px solid #f0cbae; border-radius: 8px; }
.driver-operations [role=alert] { white-space: pre-wrap; overflow-wrap: anywhere; }
.driver-operations .cash-variance { color: #a6252c; }
.driver-operations small { display: block; margin-top: 6px; }
@media (max-width: 600px) { .driver-operations-head { flex-direction: column; } .driver-operations-totals { grid-template-columns: 1fr; } }
