/* GPS387 Freight/TMS v0.9: integrated blue enterprise theme, EN/BS and mobile. */
.freight-shell{display:flex;flex-direction:column;gap:15px;color:var(--ink2);padding-bottom:24px}
.freight-header{display:flex;align-items:start;justify-content:space-between;gap:16px;border:1px solid var(--border);border-radius:11px;background:var(--paper);padding:21px 23px}
.freight-header h2{color:var(--ink);font-size:18px;font-weight:650;letter-spacing:-.6px;margin:9px 0}
.freight-header p{font-size:11px;color:var(--muted);line-height:1.75;max-width:655px;margin:0}
.freight-header button{flex-shrink:0}
.freight-workflow{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:10.5px;line-height:1.8;color:var(--primary);background:var(--primary-light);padding:11px 15px;border-radius:8px;margin:0}
.freight-workflow svg,.freight-bottom svg{width:15px;height:15px;flex-shrink:0}
.freight-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.freight-stat{border:1px solid var(--border);background:var(--paper);border-radius:9px;display:grid;gap:9px;padding:15px}
.freight-stat svg{width:17px;height:17px;color:var(--primary)}
.freight-stat strong{color:var(--ink);font-size:21px;font-weight:650}
.freight-stat span{font-size:10px;color:var(--muted)}
.freight-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.freight-tabs{display:flex;gap:4px;background:var(--paper-soft);padding:4px;border-radius:9px}
.freight-tabs button{border:0;padding:9px 14px;border-radius:6px;background:transparent;color:var(--muted);font-size:10.5px;cursor:pointer}
.freight-tabs button.active{color:var(--primary);background:var(--paper);box-shadow:0 1px 5px #17305416;font-weight:600}
.freight-toolbar-end{display:flex;gap:8px;flex-wrap:wrap;align-items:center;flex:0 1 auto}
.freight-toolbar-end input{border:1px solid var(--border);background:var(--paper);border-radius:8px;color:var(--ink);height:36px;min-width:200px;width:min(280px,100%);font-size:10.5px;padding:0 12px}
.freight-layout{display:grid;grid-template-columns:minmax(295px,.95fr) minmax(340px,1.05fr);align-items:start;gap:13px;min-width:0}
.freight-table-card,.freight-detail{min-width:0;border:1px solid var(--border);background:var(--paper);border-radius:10px;overflow:hidden}
.freight-records{max-height:630px;overflow-y:auto}
.freight-record{display:flex;text-align:left;width:100%;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;border:0;border-bottom:1px solid var(--border);background:transparent;cursor:pointer;color:var(--ink2)}
.freight-record:last-child{border-bottom:0}
.freight-record:hover,.freight-record.active{background:var(--primary-light)}
.freight-record.active{box-shadow:inset 3px 0 var(--primary)}
.freight-record-main{min-width:0;flex:1;display:grid;gap:5px}
.freight-record-main strong{font-size:11px;color:var(--ink);font-weight:650;overflow-wrap:anywhere;line-height:1.6}
.freight-record-main small{font-size:9.7px;color:var(--muted);line-height:1.6;overflow-wrap:anywhere}
.freight-record-side{display:grid;gap:7px;justify-items:end;flex-shrink:0}
.freight-record-side small{font-size:9px;color:var(--muted);max-width:120px;overflow-wrap:anywhere}
.freight-status{font-size:9px;padding:5px 7px;border-radius:5px;background:var(--paper-soft);color:var(--muted);font-weight:600}
.freight-status.ready,.freight-status.completed{background:#e6f5eb;color:#227645}
.freight-status.in_progress,.freight-status.dispatched,.freight-status.assigned,.freight-status.accepted,.freight-status.planned{background:#e8f0ff;color:#2764bd}
.freight-status.cancelled{background:#fbe9e9;color:#b44646}
[data-theme=dark] .freight-status.ready,[data-theme=dark] .freight-status.completed{background:#183d2d;color:#92dfb0}
[data-theme=dark] .freight-status.dispatched,[data-theme=dark] .freight-status.in_progress,[data-theme=dark] .freight-status.planned{background:#1e3459;color:#a0c4f9}
.freight-empty{padding:23px;color:var(--muted);font-size:11px;line-height:1.8;margin:0}
.freight-prompt{text-align:center;padding:57px 27px;color:var(--muted)}
.freight-prompt>svg{color:var(--primary);height:28px;width:28px}
.freight-prompt h3{font-size:13px;color:var(--ink);font-weight:600;margin:13px 0 6px}
.freight-prompt p{font-size:10px;line-height:1.8;margin:0}
.freight-detail-top{padding:20px 20px 13px}
.freight-detail-top h3{color:var(--ink);font-size:16px;letter-spacing:-.4px;margin:8px 0 5px;font-weight:650;overflow-wrap:anywhere}
.freight-detail-top p{font-size:10px;color:var(--muted);margin:7px 0}
.freight-facts{padding:3px 20px 15px}
.freight-fact{display:flex;gap:11px;justify-content:space-between;align-items:start;border-bottom:1px solid var(--border);padding:9px 0}
.freight-fact:last-child{border-bottom:0}
.freight-fact>span{font-size:10px;color:var(--muted);flex:0 0 42%;overflow-wrap:anywhere}
.freight-fact>strong{font-size:10.5px;color:var(--ink2);font-weight:600;text-align:right;min-width:0;overflow-wrap:anywhere}
.freight-detail-heading{border-top:1px solid var(--border);display:flex;align-items:center;gap:7px;padding:14px 20px 9px;font-weight:650;font-size:10.5px;color:var(--ink)}
.freight-detail-heading svg{width:15px;height:15px;color:var(--primary)}
.freight-mini-list{padding:2px 20px 12px}
.freight-mini-list>div{display:grid;gap:4px;padding:9px 0;border-bottom:1px solid var(--border)}
.freight-mini-list>div:last-child{border-bottom:0}
.freight-mini-list strong{font-size:10.5px;color:var(--ink)}
.freight-mini-list span{font-size:9.5px;line-height:1.7;color:var(--muted);overflow-wrap:anywhere}
.freight-op-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:8px 20px 13px}
.freight-op-cards>div{background:var(--paper-soft);border-radius:7px;padding:9px;display:grid;justify-items:center;gap:5px}
.freight-op-cards svg{height:14px;width:14px;color:var(--primary)}
.freight-op-cards strong{font-size:13px;color:var(--ink)}
.freight-op-cards span{font-size:9px;color:var(--muted);text-align:center}
.freight-detail-actions{padding:15px 20px;display:flex;align-items:center;gap:7px;flex-wrap:wrap;border-top:1px solid var(--border)}
.freight-muted,.freight-caveat{padding:3px 20px 13px;margin:0;font-size:10px;color:var(--muted);line-height:1.8}
.freight-caveat{padding:0 4px}
.freight-bottom{display:flex;gap:9px;align-items:center;font-size:10.5px;color:var(--muted)}
.freight-dialog-mask{position:fixed;inset:0;background:#0b19328e;z-index:160;display:grid;place-items:center;padding:20px}
.freight-dialog{max-width:650px;width:100%;max-height:min(91dvh,900px);display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--border);border-radius:13px;box-shadow:0 20px 80px #0b193266}
.freight-dialog>header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--border)}
.freight-dialog>header h3{font-size:14px;color:var(--ink);margin:0;font-weight:650}
.freight-dialog>header button{border:0;background:transparent;color:var(--muted);cursor:pointer}
.freight-dialog>header svg{height:18px;width:18px}
.freight-dialog form{min-height:0;overflow-y:auto;padding:16px 22px 19px}
.freight-form-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.freight-field{display:grid;gap:7px;min-width:0;font-size:10px;color:var(--ink2);font-weight:600}
.freight-field:has(textarea){grid-column:1/-1}
.freight-field input,.freight-field select,.freight-field textarea{width:100%;min-width:0;max-width:100%;border:1px solid var(--border);border-radius:7px;background:var(--paper-soft);color:var(--ink);font-size:11px;font-family:inherit;padding:9px 10px}
.freight-field input,.freight-field select{height:38px}
.freight-field textarea{resize:vertical;min-height:65px}
.freight-form-error{min-height:18px;font-size:10px;margin:9px 0;color:#bf4c48}
.freight-dialog-actions{display:flex;gap:9px;justify-content:flex-end;margin-top:8px}
.freight-alloc-list{grid-column:1/-1;max-height:310px;overflow:auto}
.freight-alloc-row{display:flex;align-items:start;gap:9px;padding:11px 3px;border-bottom:1px solid var(--border)}
.freight-alloc-row input{margin-top:4px;accent-color:var(--primary)}
.freight-alloc-row span{display:grid;gap:4px}
.freight-alloc-row strong{font-size:10px;color:var(--ink)}
.freight-alloc-row small{font-size:10px;color:var(--muted);line-height:1.6}
.freight-dialog-note{grid-column:1/-1;font-size:10px;line-height:1.7;color:var(--muted);margin:0}
@media(max-width:1200px){.freight-layout{grid-template-columns:1fr}.freight-records{max-height:350px}}
@media(max-width:710px){.freight-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.freight-header{flex-wrap:wrap;padding:15px}.freight-toolbar-end{width:100%}.freight-toolbar-end input{flex:1;min-width:145px}.freight-layout{grid-template-columns:1fr}.freight-header h2{font-size:16px}.freight-dialog-mask{padding:10px}.freight-dialog form{padding:13px}.freight-form-fields{grid-template-columns:1fr}.freight-dialog>header{padding:15px}.freight-op-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v0.9.13A — Freight/TMS contracted-price input; no new module. */
.freight-field.freight-agreed-confirm{grid-column:1/-1;display:flex;align-items:flex-start;gap:12px;padding:13px;border:1px solid var(--border);border-radius:9px;cursor:pointer;font-size:13px;line-height:1.6}
.freight-agreed-confirm input[type=checkbox]{width:20px;height:20px;flex:none;accent-color:var(--primary);margin-top:2px}
.freight-contract-hint{grid-column:1/-1;font-size:12px;line-height:1.7;color:var(--muted);margin:0}
