/* Visual tokens and TMS component mapping from gani TMS redesign 1.0.pdf.
   Activate only for the Redesign 1.0 interface, on screen. */
@font-face{font-family:'IBM Plex Sans';src:url('/vendor/IBMPlexSans-Regular.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:'IBM Plex Sans';src:url('/vendor/IBMPlexSans-Medium.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:'IBM Plex Sans';src:url('/vendor/IBMPlexSans-SemiBold.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:'IBM Plex Sans';src:url('/vendor/IBMPlexSans-Bold.woff2') format('woff2');font-weight:700;font-display:swap}
@font-face{font-family:'IBM Plex Mono';src:url('/vendor/IBMPlexMono-Regular.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:'IBM Plex Mono';src:url('/vendor/IBMPlexMono-SemiBold.woff2') format('woff2');font-weight:600;font-display:swap}
@media screen {
 :root{--side:232px;--ink:#0b1220;--muted:#5b6b81;--surface:#fff;--canvas:#eef1f6;--line:#d9dee7;--rd-shell:#0b1220;--rd-surface:#131c2e;--rd-active:#1b2a44;--rd-indicator:#2dd4bf;--rd-nav:#c3cad6;--rd-muted:#8b98ad;--rd-action:#0f766e;--rd-tint:#e6f4f2;font:14px/1.5 'IBM Plex Sans',sans-serif;color:var(--ink);background:var(--canvas)}
 body{margin:0;background:var(--canvas)}
 h1,h2,h3{color:var(--ink);letter-spacing:0}h1{font-size:26px;font-weight:700}h2{font-size:20px;font-weight:600}h3{font-size:15px;font-weight:600}
 p,small{color:var(--muted)}
 button,input,select,textarea{font-family:inherit;font-size:13px}
 button{min-height:34px;border:1px solid var(--line);border-radius:6px;background:#fff;color:#334155;font-weight:500;padding:6px 12px;box-shadow:none}
 button.primary{background:var(--rd-action);color:#fff;border-color:var(--rd-action);box-shadow:none}
 button.primary:hover:not(:disabled){background:#0a625c;border-color:#0a625c}
 button:hover:not(:disabled){background:#f6f8fb;border-color:#a4b0c0}
 button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--rd-action);outline-offset:3px}
 button:disabled{color:#8b98ad;background:#f6f8fb;border-color:var(--line);opacity:1}
 input:not([type=checkbox]):not([type=radio]),select,textarea{color:var(--ink);background:#fff;border:1px solid #b9c4d5;border-radius:6px;min-height:34px;padding:7px 10px;font-size:13px}
 input:focus,select:focus,textarea:focus{outline:2px solid #0f766e25;outline-offset:1px;border-color:var(--rd-action);box-shadow:none}
 input[type=checkbox],input[type=radio]{accent-color:var(--rd-action)}
 label,.field-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.4px;color:var(--muted)}
 .sidebar{background:var(--rd-shell);color:var(--rd-nav);border:0;border-radius:0}
 .brand{height:58px;padding:0 18px;color:#fff;font-size:20px;letter-spacing:0}
 .brand-mark{background:var(--rd-action);color:#fff!important;box-shadow:none;border-radius:6px}
 .brand>span:last-child{color:var(--rd-muted);font-size:10px;letter-spacing:1px}
 .workspace-label{color:var(--rd-muted);font-size:10px;padding:16px 20px 8px}
 .sidebar nav{padding:0 14px}
 .sidebar .nav-section-toggle,.sidebar .nav-section-items>.nav-item,.sidebar .order-queues button{color:var(--rd-nav);font-size:13px;min-height:36px;border-radius:6px;background:transparent;box-shadow:none}
 .sidebar .nav-section-items{margin:0;padding:0;border:0}
 .sidebar .nav-section-items>.nav-item{padding:8px 12px;margin:2px 0}
 .sidebar .current-section>.nav-section-toggle,.sidebar .nav-section[data-section=finance].current-section>.nav-section-toggle{color:#fff;background:transparent}
 .sidebar .nav-section-items>.nav-item.active,.sidebar .nav-section[data-section=finance] .nav-item.active,.sidebar .order-queues button.active{background:var(--rd-active);color:#fff;box-shadow:inset 3px 0 var(--rd-indicator)}
 .sidebar nav button:hover:not(:disabled){color:#fff;background:var(--rd-surface);border-color:transparent}
 .sidebar-foot{color:var(--rd-muted);background:var(--rd-shell);border-color:#25344e}
 .sidebar-foot small{color:var(--rd-muted)}
 .sidebar-foot button{color:var(--rd-nav);border-color:#25344e;background:transparent}
 .sidebar .queue-count{font:600 11px 'IBM Plex Mono',monospace;color:var(--rd-indicator);background:transparent;border:0}
 .shell>header{height:52px;background:#fff;border-bottom:1px solid var(--line);padding:0 24px;backdrop-filter:none;box-shadow:none}
 .header-location,.breadcrumb{font-size:12px;color:var(--muted)}
 .entity-switch{font-size:10px;letter-spacing:0;text-transform:none}
 .entity-switch select{font-size:12px}
 .release-badge{background:#f6f8fb;border-color:var(--line);color:var(--muted)}
 main{padding:24px 28px}
 .heading{margin-bottom:20px}.heading p{font-size:12px}
 .panel,.filter-block,.form-block,.workspace-card,.planning-stat,.workspace-metric{border:1px solid var(--line);border-radius:10px;box-shadow:none;background:#fff}
 .block-heading,.list-caption{padding:14px 16px;background:#fff;border-color:var(--line);border-radius:10px 10px 0 0}
 .block-body{padding:16px}.filter-block{padding:12px}
 .filter-row{background:#f6f8fb;border-color:var(--line)}
 table{border-spacing:0;border-collapse:collapse}
 th{background:#f6f8fb;color:var(--muted);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.45px;padding:10px 14px;border-bottom:1px solid var(--line)}
 td{font-size:13px;color:#334155;padding:12px 14px;border-bottom:1px solid #edf0f5;background:#fff}
 tr:hover td{background:#f7f9fc}
 .order-link{font:600 13px 'IBM Plex Mono',monospace;color:var(--ink);background:transparent;border:0;padding:0;white-space:nowrap}
 .badge{border:0;border-radius:4px;font-size:11px;font-weight:600}
 .badge.blue{color:#1e40af;background:#e8eefb}.badge.green{color:#166534;background:#e6f6ea}.badge.amber{color:#92400e;background:#fdf1dc}.badge.red{color:#b91c1c;background:#fdebeb}
 .segmented{background:#f6f8fb;border:1px solid var(--line);border-radius:6px}
 .segmented button{font-size:12px;min-height:28px;padding:4px 9px;border:0;color:#334155;background:transparent}
 .segmented button.active,.segmented button[aria-pressed=true]{background:#fff;color:var(--ink);box-shadow:0 1px 3px #0b122018}
 .planning-categories button.active{box-shadow:inset 0 -3px var(--rd-action)}
 .dossier-head,.dossier-top,.modal-head,.modal-foot,.dossier-foot{background:#fff;border-color:var(--line)}
 .dossier-tabs{background:#fff;border-color:var(--line)}
 .dossier-tabs button{color:var(--muted);font-size:13px}
 .dossier-tabs button.active{color:var(--ink);border-color:var(--rd-action);background:#fff}
 .order-panel,dialog{color:var(--ink);border-color:var(--line);border-radius:10px}
 .stop-card,.goods-card,.cmr-drop-card,.planning-card,.invoice-block{border:1px solid var(--line);border-radius:10px;box-shadow:none;background:#fff}
 .stop-card-top,.goods-card-head,.planning-lane-head{background:#fff;border-color:var(--line)}
 .cmr-drop-zone,.invoice-drop-zone{border-color:#b9c4d5;background:#f6f8fb;border-radius:6px}
 .cmr-drop-zone.drag-over,.invoice-drop-zone.drag-over{border-color:var(--rd-action);background:var(--rd-tint)}
 .callout.amber{background:#fdf1dc;border:1px solid #f4c873;color:#92400e}
 .form-error,.danger{color:#b91c1c}.login-card{border-top-color:var(--rd-action);box-shadow:none}
 input[type=date],input[type=time],input[type=datetime-local],input[type=number],.stop-number,.planning-card-time,.record-metadata,.result-count{font-family:'IBM Plex Mono',monospace}
 @media(max-width:1050px){main{padding:20px}.shell>header{padding-inline:16px;gap:8px}}
 @media(max-width:750px){:root{--side:0px}.shell{margin-left:0;min-width:0}.sidebar{width:232px;transform:translateX(-100%);visibility:hidden}.mobile-menu-open .sidebar{width:min(270px,85vw);transform:none;visibility:visible}.mobile-menu-open .sidebar .nav-section-items{margin:0;border:0}.shell>header{min-height:52px;height:auto;padding-block:8px;flex-wrap:wrap}.shell>header .global-order-search{min-width:0;flex:1}.heading,.list-caption{flex-wrap:wrap;gap:12px}main{padding:14px}.heading p{overflow-wrap:anywhere}td,th{padding:10px 12px}}
}

/* Layout mapping uses the real TMS form nodes and existing navigation actions. */
@media screen {
 :root{--red:#0f766e}
 .sidebar .nav-section[data-section=finance]>.nav-section-toggle{color:var(--rd-nav);background:transparent}
 .transport-category-tabs button[aria-pressed=true],.transport-workspace-views button[aria-pressed=true]{color:var(--rd-action);border-color:var(--rd-action);background:var(--rd-tint)}
 input[type=checkbox],input[type=radio]{padding:0;min-height:16px;width:16px;height:16px}
 .interface-switch select{min-height:30px;padding:5px}
 .rd-queue-cards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;width:100%}
 .workspace-subnav:has(.rd-queue-cards){display:block;padding:0;background:transparent;border:0;overflow:visible}
 .rd-queue-cards>button{display:flex;flex-direction:column;align-items:flex-start;gap:10px;min-width:0;white-space:normal;min-height:100px;padding:16px;background:#fff;border:1px solid var(--line);border-radius:10px;color:var(--muted);text-align:left}
 .rd-queue-cards>button[aria-current=page]{border-color:var(--rd-action);box-shadow:inset 0 3px var(--rd-action);color:var(--rd-action)}
 .rd-queue-total{font:600 26px 'IBM Plex Mono',monospace;color:var(--ink)}
 .rd-queue-note{margin:8px 0 16px;font-size:10px}
 body.design-workspace .phone-view-switch:has(+ .workspace-subnav .rd-queue-cards){display:none!important}
 body.design-workspace .phone-view-switch+.workspace-subnav:has(.rd-queue-cards){display:block!important}
 .rd-date-row td{background:#e9edf4;padding:8px 14px;font-size:11px;font-weight:600;color:var(--muted)}
 .rd-pipeline{display:flex;gap:18px;flex-wrap:wrap;list-style:none;margin:0;padding:12px 24px;border-top:1px solid var(--line)}
 .rd-pipeline li{display:flex;align-items:center;gap:8px;font-size:11px;min-width:0}
 .rd-pipeline li:not(:last-child)::after{content:'→';color:#a4b0c0;margin-left:8px}
 .rd-pipeline span{color:var(--muted)}
 .rd-pipeline strong{font-size:12px;font-weight:600}
 .rd-order-grid{display:grid;grid-template-columns:270px minmax(0,1fr);align-items:start;gap:18px;width:100%;min-width:0}
 .rd-order-sidebar,.rd-order-main{min-width:0;display:flex;flex-direction:column;gap:16px}
 .rd-order-sidebar .form-block,.rd-order-main .form-block{margin:0}
 .rd-order-sidebar .order-information{padding:14px}
 .rd-order-sidebar .block-heading{padding:0 0 12px;display:block}
 .rd-order-sidebar #overview-form>.form-grid,.rd-order-sidebar .reference-fields{grid-template-columns:1fr}
 .rd-order-sidebar .order-next-step{display:flex;flex-direction:column;align-items:stretch;margin:0}
 .rd-order-sidebar .arrangement-summary{display:block!important}
 .rd-checklist{padding:14px}
 .rd-checklist h3{margin:0 0 12px}
 .rd-checklist ul{list-style:none;padding:0;margin:0;display:grid;gap:8px;font-size:12px;color:#92400e}
 .rd-checklist li{border-left:3px solid #f4c873;padding-left:8px}
 .rd-checklist button{margin-top:12px;width:100%;white-space:normal}
 .workflow-redesign .rd-order-main .order-workflow-layout{width:100%;grid-template-columns:minmax(0,1fr) 250px;gap:16px}
 @media(max-width:1550px){.workflow-redesign .rd-order-main .workflow-stop-times{grid-template-columns:1fr}.workflow-redesign .rd-order-main .workflow-actual{border-left:0;border-top:1px solid var(--line);padding:16px 0 0}}
 .rd-order-main .transport-block{order:2}
 .rd-communication{display:grid;grid-template-columns:320px minmax(0,1fr);gap:18px;align-items:start;min-width:0}
 .rd-message-nav{display:flex;flex-direction:column;padding:0;gap:8px;min-width:0;max-height:70vh;overflow:auto}
 .rd-message-choice{display:block;white-space:normal;text-align:left;line-height:1.6;padding:14px;background:#fff;border:1px solid var(--line);border-radius:8px;color:var(--muted);overflow-wrap:anywhere}
 .rd-message-choice.active{border-color:var(--rd-action);color:var(--ink);box-shadow:inset 3px 0 var(--rd-action)}
 .rd-communication .communication-timeline{min-width:0;margin:0}
 .rd-communication .communication-message{margin:0;border:1px solid var(--line);border-radius:10px;overflow:hidden}
 .rd-communication .communication-message:not([data-rd-selected]){display:none}
 .rd-communication .communication-message summary{display:none}
 .rd-communication .communication-message-body{padding:20px;min-width:0}
 .rd-communication pre{white-space:pre-wrap;overflow-wrap:anywhere;font:13px/1.7 'IBM Plex Sans',sans-serif}
 .order-panel .dossier-foot{position:sticky;bottom:0;z-index:10;background:#fff;border-top:1px solid var(--line)}
 .order-panel .dossier-body{padding-bottom:24px}
 @media(max-width:1250px){.workflow-redesign .rd-order-main .order-workflow-layout{grid-template-columns:1fr}}
 @media(max-width:960px){.rd-order-grid{grid-template-columns:230px minmax(0,1fr)}.rd-communication{grid-template-columns:260px minmax(0,1fr)}.rd-queue-cards{gap:8px}.rd-queue-cards>button{padding:12px;font-size:11px}}
 @media(max-width:750px){.rd-order-grid,.rd-communication{grid-template-columns:1fr}.rd-queue-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.rd-queue-cards>button:last-child{grid-column:1/-1;min-height:75px}.rd-queue-cards>button{min-height:90px}.rd-pipeline{padding:12px;gap:8px}.rd-pipeline li{font-size:10px}.rd-pipeline strong{font-size:11px}.rd-pipeline li::after{display:none}.rd-message-nav{max-height:280px}.rd-communication .communication-message-body{padding:14px}.rd-order-sidebar .order-information{padding:12px}.dossier-top{flex-wrap:wrap}.order-panel .dossier-foot{flex-wrap:wrap;gap:8px}.order-panel .dossier-foot .save-actions{flex-wrap:wrap}}
}
@media print {
 .rd-queue-cards,.rd-queue-note,.rd-date-row,.rd-pipeline,.rd-checklist,.rd-message-nav{display:none!important}
 .rd-order-grid,.rd-order-sidebar,.rd-order-main,.rd-communication{display:block!important}
 .rd-communication .communication-message{display:block!important}
}
