.logistics-workspace { min-width: 0; }
.logistics-workspace .page-summary { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.logistics-workspace .status.red, .logistics-detail-status .status.red, .logistics-demo-card .status.red { color: #a44835; background: #fbece7; }
.logistics-toolbar, .logistics-tabs, .logistics-view-toggle { display: flex; align-items: center; gap: 5px; }
.logistics-toolbar { justify-content: space-between; gap: 12px; margin: 22px 0 16px; flex-wrap: wrap; }
.logistics-tabs { border-bottom: 1px solid #dce5df; gap: 20px; }
.logistics-tabs button { background: none; border: 0; border-bottom: 2px solid transparent; padding: 12px 1px; cursor: pointer; color: #687c71; font: inherit; font-size: 13px; }
.logistics-tabs button.active { color: #174e3c; border-bottom-color: #237457; font-weight: 650; }
.logistics-view-toggle { background: #eaf0eb; border-radius: 8px; padding: 3px; }
.logistics-view-toggle button { border: 0; border-radius: 6px; padding: 7px 12px; background: none; cursor: pointer; color: #62736a; font: inherit; font-size: 12px; }
.logistics-view-toggle button.active { background: #fff; box-shadow: 0 1px 4px #17372514; color: #164932; }
.logistics-filters { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 18px; }
.logistics-board { display: flex; gap: 14px; overflow-x: auto; padding: 2px 2px 18px; align-items: stretch; scrollbar-width: thin; }
.logistics-column { flex: 0 0 245px; min-width: 0; background: #eef2ee; border: 1px solid #e0e7df; border-radius: 12px; padding: 12px; }
.logistics-column > header { display: flex; align-items: center; justify-content: space-between; padding: 4px 1px 15px; color: #425c4c; font-size: 12px; font-weight: 650; }
.logistics-column > header span { display: flex; align-items: center; gap: 8px; }
.logistics-column > header i { width: 7px; height: 7px; border-radius: 50%; background: #8c9a8e; }
.logistics-column.scheduled > header i { background: #b38630; }
.logistics-column.picked_up > header i, .logistics-column.in_transit > header i { background: #598fa6; }
.logistics-column.delivered > header i { background: #31825e; }
.logistics-column.exception > header i { background: #c36b58; }
.logistics-column > header b { font-size: 11px; background: #e0e8df; border-radius: 5px; padding: 3px 6px; }
.logistics-column-body { display: grid; gap: 10px; align-content: start; }
.logistics-column-empty { padding: 32px 8px; border: 1px dashed #d4ddd3; border-radius: 9px; text-align: center; font-size: 12px; color: #89958a; }
.logistics-shipment-card { display: flex; flex-direction: column; width: 100%; text-align: left; padding: 15px; border: 1px solid #dce5da; border-radius: 10px; background: #fff; color: #3d5142; box-shadow: 0 2px 3px #18391d03; font-family: inherit; transition: border-color .15s, box-shadow .15s; }
.logistics-card-open{display:flex;flex-direction:column;gap:9px;width:100%;padding:0;background:transparent;text-align:left}.logistics-card-actions{display:flex;padding-top:12px;border-top:1px solid #edf1e9;margin-top:12px}.logistics-card-actions .btn{width:100%}
.logistics-shipment-card:hover { border-color: #7caa87; box-shadow: 0 4px 12px #1741280d; }
.logistics-shipment-card:focus-visible, .logistics-tabs button:focus-visible, .logistics-view-toggle button:focus-visible, .logistics-reminder-row:focus-visible, .logistics-demo-status:focus-visible { outline: 2px solid #368c65; outline-offset: 3px; }
.logistics-card-top, .logistics-card-bottom { display: flex; justify-content: space-between; gap: 8px; align-items: center; }
.logistics-card-top b { font-size: 10px; overflow-wrap: anywhere; font-weight: 650; }
.logistics-kind { color: #839184; font-size: 9px; white-space: nowrap; }
.logistics-customer { font-size: 13px; line-height: 1.5; }
.logistics-card-cargo, .logistics-card-carrier { font-size: 11px; line-height: 1.6; color: #6d7f70; overflow-wrap: anywhere; }
.logistics-card-dates { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; border-top: 1px solid #eef1eb; padding-top: 9px; }
.logistics-card-dates > span { display: flex; flex-direction: column; gap: 4px; font-size: 10px; color: #829080; }
.logistics-card-dates b { font-size: 11px; font-weight: 500; color: #52674e; }
.logistics-card-bottom { font-size: 10px; color: #8b9787; margin-top: 3px; }
.logistics-completeness { display: flex; gap: 9px; align-items: center; min-width: 80px; font-size: 11px; color: #75816e; }
.logistics-progress-track { height: 5px; background: #eaf0e6; flex: 1; border-radius: 9px; overflow: hidden; min-width: 40px; }
.logistics-progress-track span { display: block; height: 100%; background: #b8b985; border-radius: inherit; }
.logistics-progress-track span.complete { background: #4b9465; }
.logistics-alert { display: inline-flex; align-self: flex-start; font-size: 10px; line-height: 1.5; color: #946d30; background: #f8f1df; border-radius: 5px; padding: 3px 6px; margin: 3px 4px 3px 0; }
.logistics-alert.overdue { color: #ad4b38; background: #fbece7; }
.logistics-readonly { display: inline-flex; gap: 6px; align-items: center; color: #788776; font-size: 11px; padding: 6px 9px; border: 1px solid #dde5d9; border-radius: 7px; }
.logistics-detail-status, .logistics-detail-alerts { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; margin-bottom: 16px; }
.logistics-detail-actions { margin-bottom: 25px; }
.logistics-section-title { display: flex; gap: 18px; align-items: center; justify-content: space-between; }
.logistics-section-title .logistics-completeness { width: 130px; }
.logistics-checklist { border: 1px solid #e0e6da; border-radius: 10px; overflow: hidden; }
.logistics-checklist-row { display: flex; align-items: center; gap: 10px; padding: 13px 14px; border-bottom: 1px solid #e9ede3; }
.logistics-checklist-row:last-child { border-bottom: none; }
.logistics-check-icon { color: #ad9a6e; background: #f5f1e5; display: grid; place-items: center; width: 31px; height: 31px; border-radius: 8px; flex-shrink: 0; }
.logistics-check-icon.complete { color: #3b8159; background: #edf4e9; }
.logistics-check-copy { min-width: 0; flex: 1; display: flex; flex-direction: column; gap: 4px; }
.logistics-check-copy b { font-size: 12px; font-weight: 550; }
.logistics-check-copy small { font-size: 11px; color: #8c9783; overflow-wrap: anywhere; }
.logistics-file-history { font-size: 12px; margin: 18px 0 24px; }
.logistics-file-history summary { cursor: pointer; color: #687e5c; padding: 5px 0; }
.logistics-file-link { display: grid; grid-template-columns: 1fr auto; color: #45623d; text-decoration: none; border-bottom: 1px solid #edf0e7; padding: 12px 0; gap: 5px; overflow-wrap: anywhere; }
.logistics-file-link small { grid-column: 1; font-size: 10px; color: #87947b; }
.logistics-file-link svg { grid-column: 2; grid-row: 1 / 3; align-self: center; }
.logistics-timeline { padding: 8px 0; }
.logistics-timeline-event { display: flex; gap: 16px; position: relative; padding: 0 0 24px; }
.logistics-timeline-event:not(:last-child)::before { content: ''; position: absolute; left: 4px; top: 10px; bottom: 0; width: 1px; background: #dce6d5; }
.logistics-timeline-event > i { display: block; height: 9px; width: 9px; margin-top: 5px; flex-shrink: 0; background: #82a27a; border-radius: 50%; }
.logistics-timeline-event > div { flex: 1; min-width: 0; }
.logistics-timeline-event header { display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap; font-size: 12px; }
.logistics-timeline-event header time { font-size: 10px; color: #8d9883; }
.logistics-timeline-event p { font-size: 12px; line-height: 1.8; margin: 8px 0; white-space: pre-wrap; overflow-wrap: anywhere; }
.logistics-event-meta { display: flex; gap: 15px; flex-wrap: wrap; font-size: 10px; color: #8b987d; }
.logistics-reminder-row { display: flex; align-items: center; gap: 15px; text-align: left; padding: 18px 20px; width: 100%; border: 0; background: none; border-bottom: 1px solid #eaf0e5; color: #4b6540; cursor: pointer; font: inherit; }
.logistics-reminder-row:hover { background: #f6f9f2; }
.logistics-reminder-row > span:nth-child(2) { flex: 1; display: flex; flex-direction: column; gap: 5px; min-width: 0; }
.logistics-reminder-row b { font-size: 12px; }
.logistics-reminder-row small { font-size: 10px; color: #9b8d6d; }
.logistics-reminder-icon { padding: 9px; background: #f2f5eb; border-radius: 9px; }
.logistics-reminder-date { display: flex; flex-direction: column; align-items: flex-end; font-size: 11px; }
.logistics-inline-summary { padding: 16px; background: #f4f7ef; border: 1px solid #e0e7d7; border-radius: 10px; display: flex; align-items: center; gap: 18px; flex-wrap: wrap; }
.logistics-inline-summary > div:first-child { display: flex; gap: 10px; flex: 1; align-items: center; font-size: 12px; }
.logistics-inline-summary > .logistics-completeness { width: 100px; }
.logistics-demo-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; margin-bottom: 24px; }
.logistics-demo-card { border: 1px solid #dfe8d9; border-radius: 11px; padding: 16px; background: #f7f9f3; min-width: 0; }
.logistics-demo-card > header { display: flex; justify-content: space-between; gap: 10px; align-items: center; flex-wrap: wrap; font-size: 12px; margin-bottom: 8px; }
.logistics-demo-card .key-value { grid-template-columns: 110px 1fr; }
.logistics-demo-status { border: 0; background: none; cursor: pointer; display: flex; align-items: center; gap: 8px; padding: 4px 0; color: #798a69; font-size: 10px; white-space: nowrap; }
@media (max-width: 700px) {
  .logistics-workspace .page-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .logistics-column { flex-basis: 82vw; max-width: 300px; }
  .logistics-tabs { gap: 14px; }
  .logistics-tabs button { font-size: 12px; }
  .logistics-demo-grid { grid-template-columns: 1fr; }
  .logistics-checklist-row { padding: 11px 9px; gap: 7px; flex-wrap: wrap; }
  .logistics-check-copy { min-width: 110px; }
  .logistics-reminder-row { padding: 15px 12px; gap: 9px; }
  .logistics-reminder-date { max-width: 100px; }
  .logistics-inline-summary { gap: 12px; }
}
@media (prefers-reduced-motion: reduce) { .logistics-shipment-card { transition: none; } }

/* Transport-focused list, detail and forms. */
.logistics-workspace .page-summary { margin-bottom: 22px; }
.logistics-filters { align-items: end; gap: 14px; padding: 16px 18px; margin: 0; border: 1px solid #e0e7df; border-radius: 12px 12px 0 0; background: #f8faf7; }
.logistics-filters label { display: grid; gap: 7px; font-size: 11px; color: #64776d; }
.logistics-filters select { min-width: 160px; padding: 9px 30px 9px 11px; border: 1px solid #d9e2d9; border-radius: 7px; background: white; color: #294c3b; font: inherit; font-size: 12px; }
.logistics-filters output { margin-left: auto; padding: 10px 0; color: #7a897e; font-size: 12px; }
.logistics-table-card { border-radius: 0 0 12px 12px; border-top: 0; overflow: hidden; box-shadow: none; }
.logistics-table-card table { width: 100%; table-layout: fixed; min-width: 0; }
.logistics-table-card th:nth-child(1) { width: 23%; }.logistics-table-card th:nth-child(2) { width: 29%; }.logistics-table-card th:nth-child(3) { width: 19%; }.logistics-table-card th:nth-child(4) { width: 16%; }.logistics-table-card th:nth-child(5) { width: 13%; }
.logistics-table-card td { padding: 20px 15px; vertical-align: top; white-space: normal; overflow-wrap: anywhere; }
.logistics-table-card th { white-space: normal; padding: 15px; }
.logistics-table-card td .table-link { display: block; margin: 6px 0; text-align: left; font-size: 12px; overflow-wrap: anywhere; }
.logistics-table-card .table-secondary { display: block; white-space: normal; line-height: 1.65; font-size: 11px; margin-top: 6px; }
.logistics-list-customer { display: block; font-size: 13px; font-weight: 600; line-height: 1.5; }
.logistics-kind { display: inline-block; font-size: 10px; color: #6f8175; line-height: 1.5; }
.logistics-route { display: grid; gap: 20px; }
.logistics-route > div { display: flex; align-items: start; gap: 11px; position: relative; }
.logistics-route > div:first-child::after { content: ''; position: absolute; top: 15px; bottom: -20px; left: 4px; border-left: 1px dashed #cbd9cc; }
.logistics-route i { width: 9px; height: 9px; margin-top: 5px; border: 2px solid #7e9f85; border-radius: 50%; flex-shrink: 0; background: #fff; }
.logistics-route > div:last-child i { border-color: #28674b; background: #28674b; border-radius: 2px; }
.logistics-route span { display: grid; gap: 4px; min-width: 0; }
.logistics-route small { font-size: 10px; color: #859287; }
.logistics-route b { font-size: 12px; line-height: 1.6; font-weight: 500; overflow-wrap: anywhere; }
.logistics-route.compact { gap: 11px; }.logistics-route.compact > div:first-child::after { bottom: -12px; }.logistics-route.compact small { display: none; }.logistics-route.compact i { width: 7px; height: 7px; border-width: 1.5px; margin-top: 6px; }.logistics-route.compact > div:first-child::after { left: 3px; }
.logistics-list-schedule { display: grid; gap: 5px; margin-top: 15px; font-size: 10px; color: #8a958a; }.logistics-list-schedule b { margin-left: 5px; font-weight: 500; color: #516d57; }
.logistics-assignee { display: block; font-size: 12px; font-weight: 550; line-height: 1.6; }.logistics-assignee.pending { font-weight: 400; color: #9a7b46; }.logistics-owner { display: block; font-size: 10px; color: #8b978a; margin-top: 12px; }
.logistics-row-actions { display: flex; flex-direction: column; align-items: stretch; gap: 8px; }.logistics-row-actions .btn { justify-content: center; white-space: normal; line-height: 1.5; }
.logistics-table-card td > .status { margin-bottom: 8px; max-width: 100%; white-space: normal; }.logistics-table-card .logistics-alert { font-size: 10px; }
.logistics-doc-state { display: block; color: #8b9588; font-size: 10px; line-height: 1.6; margin-top: 7px; }.logistics-doc-state.pending { color: #a48243; }.logistics-doc-state.complete { color: #387c56; }
.logistics-board { display: grid; grid-template-columns: repeat(auto-fit,minmax(245px,1fr)); overflow: visible; gap: 16px; margin-top: 16px; }
.logistics-column { min-width: 0; padding: 13px; }.logistics-card-open { color: inherit; font: inherit; border: 0; }.logistics-card-actions { padding-top: 10px; }.logistics-card-actions .logistics-row-actions { flex-direction: row; width: 100%; }.logistics-card-actions .btn { flex: 1; font-size: 10px; padding: 7px; }.logistics-card-open .status { align-self: flex-start; }.logistics-card-open .logistics-route { width: 100%; margin: 4px 0; }
.logistics-detail-heading { display: flex; justify-content: space-between; align-items: start; gap: 15px; margin: 0 0 22px; }.logistics-detail-heading strong { font-size: 18px; color: #254c36; font-weight: 600; }.logistics-detail-heading p { font-size: 12px; line-height: 1.7; color: #83907f; margin: 8px 0 0; }
.logistics-stage-track { display: grid; grid-template-columns: repeat(4,1fr); margin: 0 0 26px; padding: 17px 15px; list-style: none; background: #f3f6f0; border-radius: 11px; }.logistics-stage-track li { display: flex; align-items: center; gap: 8px; font-size: 11px; color: #a0aa9a; position: relative; }.logistics-stage-track li span { display: grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; background: #e6ecdf; font-size: 10px; flex-shrink: 0; }.logistics-stage-track li b { font-weight: 500; }.logistics-stage-track li.complete { color: #386e46; }.logistics-stage-track li.complete span { color: #fff; background: #5b8c62; }.logistics-stage-track li.current { color: #3d6c47; }.logistics-stage-track li.current span { border: 1px solid #6c956e; background: #fff; }
.logistics-detail-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }.logistics-detail-section { border: 1px solid #e0e7dc; border-radius: 12px; background: #fff; padding: 20px; margin: 0 0 18px; min-width: 0; }.logistics-detail-section > header { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-bottom: 20px; }.logistics-detail-section h3 { margin: 0; font-size: 14px; font-weight: 600; color: #355b3f; }.logistics-detail-section .key-value { margin: 15px 0 0; }.logistics-detail-section .key-value div { overflow-wrap: anywhere; }.logistics-detail-section .logistics-detail-alerts { margin: 12px 0 0; }.logistics-assignment-summary { margin-bottom: 15px; }.logistics-detail-owner { margin: 8px 0; font-size: 11px; color: #8b9880; }.logistics-detail-section .logistics-document-summary { margin: -10px 0 16px; }.logistics-detail-section .logistics-timeline { padding: 0; }
.logistics-form-section { border: 1px solid #e1e7db; border-radius: 12px; padding: 20px; margin-bottom: 18px; }.logistics-form-section > header { display: flex; gap: 10px; align-items: center; margin-bottom: 20px; }.logistics-form-section > header > span { display: grid; place-items: center; width: 25px; height: 25px; border-radius: 7px; background: #edf2e8; color: #5f8054; font-size: 11px; }.logistics-form-section h3 { font-size: 14px; font-weight: 600; color: #3c5f39; margin: 0; }.logistics-form-section .form-grid { margin: 0; }.logistics-form-hint { font-size: 11px; line-height: 1.7; color: #859075; margin: -6px 0 18px; }.logistics-actual-fields[hidden] { display: none; }.logistics-actual-fields:not([hidden]) { margin-top: 18px; padding-top: 18px; border-top: 1px solid #edf0e7; }.logistics-form-section .field.is-required label:not(:has(.required))::after { content: ' *'; color: #a6634c; }
.logistics-demo-card .key-value { margin-top: 14px; }.logistics-demo-card .logistics-doc-state { margin-bottom: 15px; }.logistics-inline-summary > div:first-child { flex-wrap: wrap; }
@media(max-width:1100px) { .logistics-table-card td { padding: 16px 10px; }.logistics-row-actions .btn { font-size: 10px; padding: 7px; }.logistics-filters select { min-width: 135px; } }
@media(max-width:760px) { .logistics-detail-grid { grid-template-columns: 1fr; }.logistics-stage-track { gap: 10px; padding: 15px 10px; }.logistics-stage-track li { flex-direction: column; align-items: center; text-align: center; gap: 7px; font-size: 10px; }.logistics-filters { gap: 12px; }.logistics-filters label { flex: 1; min-width: 130px; }.logistics-filters output { width: 100%; padding: 0; }.logistics-table-card table { min-width: 780px; }.logistics-board { grid-template-columns: 1fr; }.logistics-column { max-width: none; }.logistics-detail-section,.logistics-form-section { padding: 16px; } }

.logistics-party-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }.logistics-party-grid .form-grid { gap: 14px; }.logistics-form-section .shipment-line { box-shadow: none; border-color: #e8ecdf; }
@media(max-width:760px) { .logistics-party-grid { grid-template-columns: 1fr; } }

.logistics-table-card > .table-card { border: 0; border-radius: 0; box-shadow: none; margin-bottom: 0; }.logistics-table-card th:nth-child(3) { width: 17%; }.logistics-table-card th:nth-child(5) { width: 15%; }.logistics-row-actions .btn { font-size: 11px; padding: 8px 6px; gap: 5px; white-space: nowrap; }
.logistics-form-section { scroll-margin-top: 12px; }

.logistics-demo-card > .logistics-route { margin: 20px 0; }.logistics-inline-date { color: #78886e; font-size: 11px; }.logistics-detail-section .logistics-detail-alerts { margin-bottom: 0; }
