:root{color:#17202a;background:#edf1f4;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{min-height:38px;border:0;border-radius:6px;padding:9px 13px;background:#17624f;color:#fff;font-weight:750;cursor:pointer}button:disabled{cursor:not-allowed;background:#94a3ad}h1,h2,h3,p{margin-top:0}.secondary-button{border:1px solid #bac5d0;background:#fff;color:#17202a}.login-screen{min-height:100vh;display:grid;place-items:center;align-content:center;gap:14px;padding:24px}.login-panel,.ops-actions,.ops-dashboard,.planning-workspace,.business-ops-workspace,.document-center,.dispatch-board-v2,.trip-workspace,.detail-page{border:1px solid #d3dbe3;border-radius:8px;background:#fff;box-shadow:0 10px 28px #17202a0f}.login-panel{width:min(100%,360px);display:grid;gap:16px;padding:24px}label{display:grid;gap:6px;font-size:14px;font-weight:750}input{width:100%;border:1px solid #bac5d0;border-radius:6px;padding:10px 12px}.app-shell{min-height:100vh;background:#f6f8fa}.topbar{min-height:62px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 24px;border-bottom:1px solid #dbe3ea;background:#fff}.topbar div{display:grid;gap:2px}.topbar span{color:#607080;font-size:13px}.workspace{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;max-width:1440px;margin:0 auto;padding:20px}.wide{grid-column:1 / -1}.banner{max-width:1400px;margin:16px auto 0;padding:10px 14px;border:1px solid #c3d7ea;border-radius:6px;background:#e9f4ff}.environment-banner,.environment-strip{border:1px solid #e0b445;background:#fff6d7;color:#6f4a00;font-size:13px;font-weight:850;letter-spacing:0;text-align:center}.environment-banner{width:min(100%,360px);border-radius:6px;padding:10px 12px}.environment-strip{padding:8px 16px}.seeded-accounts{display:grid;gap:8px;padding-top:6px;border-top:1px solid #e1e7ee}.seeded-accounts strong{font-size:13px}.account-chip{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:36px;border:1px solid #ccd6df;background:#f8fafc;color:#17202a;text-align:left}.account-chip small{color:#607080;font-size:12px;font-weight:650}.error{color:#9a2f2f;border-color:#efc0c0;background:#fff0f0}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:16px}.section-heading h1,.section-heading h2,.trip-hero h2{margin-bottom:4px}.section-heading p,.trip-hero p,.ops-actions p{margin-bottom:0;color:#607080}.ops-dashboard,.ops-actions,.planning-workspace,.business-ops-workspace,.document-center,.dispatch-board-v2,.trip-workspace,.detail-page{display:grid;gap:16px;padding:18px}.metric-grid{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));gap:12px}.metric-card{display:grid;gap:4px;min-height:88px;border:1px solid #dbe3ea;border-radius:8px;padding:14px;background:#f8fafb}.metric-card span{color:#607080;font-size:12px;font-weight:800;text-transform:uppercase}.metric-card strong{font-size:30px}.metric-warning{border-color:#f1cd78;background:#fff8e6}.metric-critical{border-color:#ee9c9c;background:#fff0f0}.attention-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.attention-item{display:grid;gap:3px;min-height:76px;border:1px solid #dbe3ea;border-left:4px solid #de7777;border-radius:8px;background:#fff;color:#17202a;text-align:left}.attention-item span,.attention-item em,.attention-clear{color:#607080;font-size:12px;font-style:normal;font-weight:800}.attention-clear{border:1px solid #9dccb2;border-radius:8px;padding:14px;background:#eaf6ef;color:#17603d}.ops-actions{grid-template-columns:minmax(180px,240px) minmax(0,1fr)}.action-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.ops-action-status{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:8px}.planning-workspace{background:#fff}.planning-kpis,.planning-grid,.planning-board,.capacity-bars,.dispatch-timeline,.timeline-lanes{display:grid;gap:12px}.planning-kpis{grid-template-columns:repeat(4,minmax(140px,1fr))}.planning-metric{min-height:82px;border:1px solid #dbe3ea;border-radius:8px;padding:14px;background:#f8fafb}.planning-metric span{display:block;margin-bottom:6px;color:#607080;font-size:12px;font-weight:800;text-transform:uppercase}.planning-metric strong{font-size:28px}.role-workspace{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #dbe3ea;border-radius:8px;padding:10px;background:#f8fafb}.role-tabs,.timeline-tabs{display:flex;flex-wrap:wrap;gap:8px}.role-tab,.timeline-tab{border:1px solid #bac5d0;background:#fff;color:#17202a}.active-role{border-color:#17624f;background:#17624f;color:#fff}.planning-grid{grid-template-columns:minmax(260px,320px) minmax(0,1fr);align-items:start}.shipment-queue,.planning-trip,.dispatch-timeline{border:1px solid #dbe3ea;border-radius:8px;padding:14px;background:#f8fafb}.shipment-queue{display:grid;gap:10px;position:sticky;top:76px}.shipment-queue>div,.planning-trip-head,.planning-trip-context,.shipment-meta,.capacity-row>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.shipment-card,.planned-shipment,.timeline-trip{display:grid;gap:6px;border:1px solid #dbe3ea;border-left:4px solid #17624f;border-radius:8px;padding:12px;background:#fff;color:#17202a;text-align:left}.shipment-card{cursor:grab}.priority-high{border-left-color:#c24141}.priority-low{border-left-color:#607080}.shipment-card span,.shipment-card small,.planned-shipment span,.planned-shipment small,.planning-trip-context,.route-stops,.timeline-trip em{color:#607080;font-size:12px;font-style:normal;font-weight:750}.planning-board{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));align-items:start}.planning-trip{background:#fff}.planning-trip.has-conflict{border-color:#ee9c9c;box-shadow:0 0 0 3px #fff0f0}.planning-trip h2{margin:2px 0 0;font-size:18px}.capacity-row{display:grid;gap:5px}meter{width:100%;height:10px}.over-capacity strong{color:#9a2f2f}.conflict-row,.route-stops{display:flex;flex-wrap:wrap;gap:6px}.stop-sequence,.stop-drop-wrap{display:grid;gap:6px}.drop-zone{min-height:28px;display:grid;place-items:center;border:1px dashed #bac5d0;border-radius:6px;background:#f8fafb;color:#607080;font-size:12px;font-weight:750}.drop-zone:hover{border-color:#17624f;background:#eaf6ef}.timeline-lanes{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.business-kpis,.business-grid,.finance-workspace,.customs-workspace,.queue-block{display:grid;gap:12px}.business-kpis{grid-template-columns:repeat(6,minmax(120px,1fr))}.business-grid{grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);align-items:start}.finance-workspace,.customs-workspace{border:1px solid #dbe3ea;border-radius:8px;padding:14px;background:#f8fafb}.queue-block,.customs-lane{border:1px solid #dbe3ea;border-radius:8px;padding:12px;background:#fff}.queue-block h3,.customs-lane h3{margin-bottom:4px}.finance-card,.customs-card{display:grid;gap:8px;width:100%;border:1px solid #dbe3ea;border-left:4px solid #17624f;border-radius:8px;padding:12px;background:#fff;color:#17202a;text-align:left}.finance-card.as-button{min-height:68px}.finance-card span,.customs-card span,.customs-card small{color:#607080;font-size:12px;font-weight:750}.customs-lane>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.customs-lane>div span{display:grid;min-width:30px;min-height:30px;place-items:center;border-radius:999px;background:#eaf6ef;color:#17603d;font-weight:850}.empty-state{margin:0;color:#607080;font-size:13px}.document-layout{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(360px,1.1fr) minmax(280px,.9fr);gap:12px;align-items:start}.document-dropzone,.document-matrix,.verification-workspace,.document-intelligence,.communication-actions{display:grid;gap:12px;border:1px solid #dbe3ea;border-radius:8px;padding:14px;background:#f8fafb}.document-dropzone{min-height:220px;border-style:dashed;place-items:start stretch}.document-category-row,.communication-actions,.intelligence-grid,.matrix-grid{display:flex;flex-wrap:wrap;gap:8px}.document-category-row span,.matrix-cell{border:1px solid #dbe3ea;border-radius:999px;padding:6px 9px;background:#fff;font-size:12px;font-weight:800}.matrix-card,.verification-card,.missing-doc-row,.document-intelligence article{display:grid;gap:6px;border:1px solid #dbe3ea;border-left:4px solid #17624f;border-radius:8px;padding:10px;background:#fff}.matrix-cell{display:grid;min-width:112px;border-radius:8px}.status-missing,.status-rejected,.status-expired{border-color:#ee9c9c;background:#fff0f0}.status-pending-verification,.status-uploaded{border-color:#f1cd78;background:#fff8e6}.status-verified{border-color:#9dccb2;background:#eaf6ef}.text-link{min-height:auto;padding:0;background:transparent;color:#17624f;text-align:left}.verification-card span,.missing-doc-row span,.document-intelligence span{color:#607080;font-size:12px;font-weight:750}.ops-action-status span{border:1px solid #dbe3ea;border-radius:999px;padding:7px 10px;background:#f7f9fb;color:#3d4a56;font-size:13px;font-weight:700}.order-list{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:8px}.dispatch-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:14px}.dispatch-card{display:grid;gap:10px;min-height:245px;border:1px solid #d1dae3;border-left:5px solid #7b8792;border-radius:8px;padding:14px;background:#fff;color:#17202a;text-align:left;box-shadow:0 8px 20px #17202a0d}.dispatch-card:hover,.dispatch-card.selected{border-color:#17624f;border-left-color:#17624f}.dispatch-card.status-intransit,.dispatch-card.status-loading,.dispatch-card.status-loaded{border-left-color:#2274a5}.dispatch-card.status-completed,.dispatch-card.status-delivered{border-left-color:#1f7a4d}.card-topline,.card-meta,.indicator-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between}.trip-number{color:#607080;font-size:12px;font-weight:850;text-transform:uppercase}.card-meta{justify-content:start}.card-meta span{border-radius:999px;background:#edf3f2;padding:5px 8px;color:#35424e;font-size:12px;font-weight:700}.indicator-row{justify-content:start}.indicator{display:grid;gap:1px;min-width:92px;border:1px solid #dbe3ea;border-radius:7px;padding:7px;background:#f8fafb;color:#17202a;font-size:12px;font-weight:800}.indicator small{color:#607080;font-size:10px;text-transform:uppercase}.indicator-warning{border-color:#e0ba55;background:#fff8e6}.indicator-critical{border-color:#de7777;background:#fff0f0}.status-badge{display:inline-flex;align-items:center;min-height:26px;border-radius:999px;padding:4px 9px;background:#e7edf2;color:#35424e;font-size:12px;font-weight:850}.status-intransit,.status-loading,.status-loaded{background:#e6f2fb;color:#165b83}.status-completed,.status-delivered{background:#e7f4ec;color:#17603d}.blocker-strip,.blocker-list{display:flex;flex-wrap:wrap;gap:6px}.blocker-badge{display:inline-flex;align-items:center;min-height:24px;border-radius:999px;padding:4px 8px;font-size:12px;font-weight:800}.blocker-warning{border:1px solid #e0ba55;background:#fff8e6;color:#775100}.blocker-critical{border:1px solid #de7777;background:#fff0f0;color:#9a2f2f}.blocker-clear{border:1px solid #9dccb2;background:#eaf6ef;color:#17603d}.warning-button{background:#9b650c}.trip-hero{display:flex;align-items:start;justify-content:space-between;gap:16px}.trip-hero>div>span{color:#607080;font-size:12px;font-weight:850;text-transform:uppercase}.workflow-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,220px);gap:14px;align-items:center;border:1px solid #c7d9e7;border-radius:8px;padding:14px;background:#f4f9fc}.workflow-panel h3,.workflow-panel p{margin-bottom:0}.workflow-panel p,.workflow-complete{color:#607080}.workflow-complete{font-weight:800;text-align:right}.route-progress{display:grid;grid-template-columns:repeat(5,minmax(92px,1fr));gap:8px;overflow-x:auto;padding-bottom:2px}.route-step{display:grid;gap:7px;min-width:82px;color:#6a7885;font-size:12px;font-weight:800}.route-step span{height:8px;border-radius:999px;background:#d7e0e8}.route-step.done{color:#17624f}.route-step.done span{background:#17624f}.route-step.current{color:#165b83}.route-step.current span{background:#2274a5}.route-step em{color:#7b8792;font-size:11px;font-style:normal;font-weight:700}.trip-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.trip-grid section,.overview-grid section{border:1px solid #dbe3ea;border-radius:8px;padding:14px;background:#fbfcfd}.trip-grid h3,.overview-grid h3{margin-bottom:10px}.stop-list{display:grid;gap:10px}.stop-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}.stop-pair div{border-left:3px solid #2274a5;padding-left:10px}.stop-pair span,.info-rows dt{color:#607080;font-size:11px;font-weight:850;text-transform:uppercase}.stop-pair p{margin-bottom:0;color:#607080}.info-rows{display:grid;gap:9px;margin:0}.info-rows div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #e6edf2;padding-bottom:7px}.info-rows dd{margin:0;text-align:right;font-weight:800}.actionable-blockers{display:grid;gap:8px}.actionable-blocker{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;border:1px solid #dbe3ea;border-radius:8px;padding:9px}.actionable-blocker span{font-weight:800}.blocker-card-warning{border-color:#e0ba55;background:#fff8e6}.blocker-card-critical{border-color:#de7777;background:#fff0f0}.detail-header{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;align-items:stretch}.detail-header>div:first-child{grid-column:span 2}.detail-header h1,.detail-header p{margin:0}.summary-pill{display:grid;gap:4px;min-width:0;border:1px solid #dbe3ea;border-radius:8px;background:#f7f9fb;padding:10px}.summary-pill span{color:#607080;font-size:12px;font-weight:800;text-transform:uppercase}.summary-pill strong{overflow-wrap:normal;word-break:keep-all}.tabs{display:flex;flex-wrap:wrap;gap:8px;border-bottom:1px solid #dbe3ea;padding-bottom:8px}.tab{border:1px solid #bac5d0;background:#fff;color:#17202a}.active-tab{border-color:#17624f;background:#17624f;color:#fff}.tab-panel{min-height:220px}.overview-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:16px}.stack{display:grid;gap:12px}.data-table,.history-table{display:grid;gap:0;overflow-x:auto}.data-row,.history-row{display:grid;gap:10px;min-width:720px;padding:10px 0;border-top:1px solid #e1e7ed}.data-row{grid-template-columns:repeat(5,minmax(120px,1fr))}.history-row{grid-template-columns:1fr 1fr 1fr 1fr 1fr 2fr}.data-row span,.history-row span{overflow-wrap:anywhere}.data-head,.history-head{font-weight:800}.timeline{display:grid;gap:8px}.timeline-item{display:grid;gap:4px;border-left:3px solid #2274a5;padding:8px 0 8px 12px;background:linear-gradient(90deg,#f4f9fc,#fff)}.timeline-item span{color:#607080;overflow-wrap:anywhere}@media(max-width:1040px){.metric-grid,.trip-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ops-actions{grid-template-columns:1fr}}@media(max-width:760px){.workspace{grid-template-columns:1fr;padding:12px}.metric-grid,.trip-grid,.detail-header,.overview-grid,.stop-pair{grid-template-columns:1fr}.detail-header>div:first-child{grid-column:auto}.tabs{align-items:stretch;flex-direction:column}.section-heading,.trip-hero,.workflow-panel,.actionable-blocker{align-items:start;grid-template-columns:1fr;flex-direction:column}}
