/* Bookings + Dispatch pages */
.bk-filters{display:flex;flex-direction:column;gap:var(--s2)}
.fare-box{background:var(--card-2);border:1px dashed var(--line-strong);border-radius:var(--r);padding:var(--s3)}
.fare-box table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)} .fare-box td{padding:3px 0} .fare-box td.r{text-align:right;font-variant-numeric:tabular-nums}
.rq-flow{display:flex;flex-direction:column} .rq-step[hidden]{display:none}
.fare-box tr.total td{font-weight:700;font-size:var(--fs-lg);border-top:1px solid var(--line);padding-top:6px}
.bk-detail dl.kv{margin:0} .bk-actions{display:grid;grid-template-columns:1fr 1fr;gap:var(--s2);margin-top:var(--s3)}
.bk-hist{font-size:var(--fs-sm);color:var(--muted)} .bk-hist div{padding:3px 0;border-bottom:1px solid var(--line)}
.dp-cols{display:flex;flex-direction:column;gap:var(--s3)}
.dp-col{display:none} .dp-col.on{display:block}
.dp-col h2{margin:var(--s2) 0}
.dp-card .t small{font-weight:400;color:var(--muted);margin-left:6px}
.cand{display:flex;align-items:center;gap:var(--s3);min-height:var(--tap);padding:var(--s2) var(--s3);border:1px solid var(--line);border-radius:var(--r);background:var(--card);cursor:pointer}
.cand input{width:22px;height:22px} .cand.blocked{opacity:.55} .cand .cb{font-size:var(--fs-xs);color:var(--bad)} .cand .cw{font-size:var(--fs-xs);color:var(--new)}
.cand[aria-checked=true]{border-color:var(--brand);background:var(--brand-soft)}
.cand .tok{min-width:36px;height:36px;border-radius:50%;background:var(--asg-bg);color:var(--asg);display:grid;place-items:center;font-weight:700}
.cand-list{display:flex;flex-direction:column;gap:var(--s2);max-height:38vh;overflow:auto}
/* Desktop keeps the tabbed single-list board (one column at a time, tabs carry the counts); only the candidate list grows */
@media (min-width:900px){
  .cand-list{max-height:60vh}
  #dpSeg button{min-width:140px}
}
