.dispatch-calendar-card{width:100%;min-width:0}.dispatch-page-heading .px-page-header-shell{align-items:stretch}.dispatch-page-heading .px-page-actions{flex:1 1 auto;min-width:0}.dispatch-header-snapshot{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:8px;gap:8px;width:100%;max-width:840px;margin-left:auto}.dispatch-header-snapshot-card{display:grid;align-content:center;grid-gap:3px;gap:3px;min-height:64px;padding:10px 12px;border:1px solid var(--ff-border,var(--px-border-color));border-left:4px solid var(--ff-accent,var(--px-primary));border-radius:var(--ff-radius,8px);background:linear-gradient(90deg,color-mix(in srgb,var(--ff-accent,var(--px-primary)) 7%,transparent),transparent 58%),var(--ff-surface,var(--px-bg-white));box-shadow:var(--ff-shadow-card,var(--px-shadow-card));color:var(--ff-body,var(--px-text-body));text-decoration:none}.dispatch-header-snapshot-card[data-tone=warning]{border-left-color:var(--ff-warning,#b45309)}.dispatch-header-snapshot-card[data-tone=clear]{border-left-color:#047857}.dispatch-header-snapshot-card em{overflow:hidden;color:var(--ff-muted,var(--px-text-muted));font-size:.66rem;font-style:normal;font-weight:820;letter-spacing:.04em;line-height:1.1;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.dispatch-header-snapshot-card strong{overflow:hidden;color:var(--ff-ink,var(--px-text-dark));font-size:.92rem;font-weight:880;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}a.dispatch-header-snapshot-card{transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}a.dispatch-header-snapshot-card:focus-visible,a.dispatch-header-snapshot-card:hover{border-color:color-mix(in srgb,var(--ff-accent,var(--px-primary)) 42%,var(--ff-border,var(--px-border-color)));box-shadow:0 14px 28px rgba(124,58,237,.12);color:var(--ff-body,var(--px-text-body));transform:translateY(-1px)}.dispatch-wrapper{--dispatch-label-width:190px;--dispatch-sidebar-width:280px;--dispatch-sidebar-empty-width:220px;--dispatch-lane-height:78px;--dispatch-radius:8px;--dispatch-surface:var(--px-bg-white);--dispatch-page:var(--px-bg-light);--dispatch-border:var(--px-border-color);--dispatch-ink:var(--px-text-dark);--dispatch-body:var(--px-text-body);--dispatch-muted:var(--px-text-muted);--dispatch-grid-line:#e5e7eb;--dispatch-now-color:#dc2626;display:flex;flex-direction:column;gap:16px;min-width:0;color:var(--dispatch-body)}.dispatch-wrapper *,.dispatch-wrapper :after,.dispatch-wrapper :before{min-width:0}.dispatch-kicker{display:block;color:var(--dispatch-muted);font-size:.72rem;font-weight:800;letter-spacing:.08em;line-height:1.15;text-transform:uppercase}.dispatch-command-bar{display:grid;grid-template-columns:minmax(320px,.95fr) minmax(560px,1.3fr);grid-gap:14px;gap:14px;align-items:stretch}.dispatch-date-panel,.dispatch-layout,.dispatch-metric{border:1px solid var(--dispatch-border);border-radius:var(--dispatch-radius);background:var(--dispatch-surface);box-shadow:var(--px-shadow-card)}.dispatch-date-panel{display:flex;flex-direction:column;justify-content:center;gap:10px;min-height:112px;padding:18px 20px}.dispatch-date-nav{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.dispatch-date-nav-btn,.dispatch-dialog-btn,.dispatch-today-btn{min-width:44px;min-height:44px;border:1px solid var(--dispatch-border);border-radius:8px;background:var(--dispatch-surface);color:var(--dispatch-body);cursor:pointer;transition:border-color .15s ease,color .15s ease,background .15s ease}.dispatch-date-nav-btn{display:inline-flex;align-items:center;justify-content:center;padding:0}.dispatch-date-nav-btn:hover,.dispatch-dialog-btn:hover,.dispatch-today-btn:hover{border-color:var(--px-primary);color:var(--px-primary-dark);background:var(--px-primary-light)}.dispatch-date-nav-btn:focus-visible,.dispatch-dialog-btn:focus-visible,.dispatch-job-card:focus-visible,.dispatch-queue-item:focus-visible,.dispatch-timeline-scroll:focus-visible,.dispatch-today-btn:focus-visible{outline:3px solid color-mix(in srgb,var(--px-primary) 42%,transparent);outline-offset:2px}.dispatch-date-label{color:var(--dispatch-ink);font-size:1.08rem;font-weight:760;line-height:1.25}.dispatch-today-btn{padding:0 16px;color:var(--px-primary-dark);font-size:.84rem;font-weight:750}.dispatch-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:10px;gap:10px}.dispatch-metric{display:grid;grid-gap:7px;gap:7px;min-height:112px;padding:16px}.dispatch-metric-button{width:100%;border:1px solid var(--dispatch-border);color:inherit;cursor:pointer;font:inherit;text-align:left;text-decoration:none;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.dispatch-metric-button:focus-visible,.dispatch-metric-button:hover{border-color:color-mix(in srgb,var(--px-primary) 42%,var(--dispatch-border));box-shadow:0 14px 28px rgba(124,58,237,.12);transform:translateY(-1px)}.dispatch-metric svg{width:20px;height:20px;color:var(--px-primary)}.dispatch-metric-value{color:var(--dispatch-ink);font-size:1.42rem;font-weight:800;line-height:1}.dispatch-metric-value.is-alert{color:var(--ff-danger,var(--px-danger,#dc2626))}.dispatch-metric-label{color:var(--dispatch-muted);font-size:.78rem;font-weight:700}.dispatch-layout{display:grid;min-height:680px;overflow:hidden}.dispatch-sidebar{display:flex;flex-direction:column;min-width:0;border-right:1px solid var(--dispatch-border);background:color-mix(in srgb,var(--dispatch-page) 46%,var(--dispatch-surface))}.dispatch-sidebar.is-empty{width:var(--dispatch-sidebar-empty-width)}.dispatch-sidebar-header{flex:0 0 auto;padding:18px 18px 14px;border-bottom:1px solid var(--dispatch-border);color:var(--dispatch-muted);font-size:.72rem;font-weight:800;letter-spacing:.08em;line-height:1.3;text-transform:uppercase}.dispatch-queue-empty{margin:14px;padding:22px 16px;border:1px dashed var(--dispatch-border);border-radius:var(--dispatch-radius);background:var(--dispatch-surface);color:var(--dispatch-muted);text-align:center;font-size:.86rem;font-weight:650}.dispatch-queue-list{flex:1 1;display:flex;flex-direction:column;gap:10px;margin:0;padding:14px;overflow-y:auto;list-style:none}.dispatch-queue-item{display:flex;flex-direction:column;gap:6px;min-height:96px;padding:13px 14px;border:1px solid var(--dispatch-border);border-left:4px solid var(--px-primary);border-radius:var(--dispatch-radius);background:var(--dispatch-surface);cursor:-webkit-grab;cursor:grab;transition:border-color .12s ease,box-shadow .12s ease,transform .12s ease}.dispatch-queue-item:hover{border-color:color-mix(in srgb,var(--px-primary) 36%,var(--dispatch-border));box-shadow:var(--px-shadow-sm);transform:translateY(-1px)}.dispatch-queue-item[draggable=true]:active{opacity:.55;cursor:-webkit-grabbing;cursor:grabbing}.dispatch-queue-job-number{color:var(--dispatch-muted);font-size:.67rem;font-weight:800;letter-spacing:.07em;line-height:1.2;text-transform:uppercase}.dispatch-queue-job-title{color:var(--dispatch-ink);font-size:.9rem;font-weight:750;line-height:1.35;overflow-wrap:anywhere}.dispatch-queue-job-time{display:flex;align-items:center;gap:7px;color:var(--dispatch-body);font-size:.78rem;font-weight:650}.dispatch-queue-status-dot{width:8px;height:8px;border-radius:50%;flex:0 0 auto}.dispatch-main{flex-direction:column;min-width:0;min-height:0}.dispatch-main,.dispatch-main-header{display:flex;background:var(--dispatch-surface)}.dispatch-main-header{justify-content:space-between;gap:18px;min-height:75px;padding:16px 18px;border-bottom:1px solid var(--dispatch-border)}.dispatch-main-header h2{margin:4px 0 0;color:var(--dispatch-ink);font-size:1.02rem;font-weight:760;line-height:1.3}.dispatch-main-header p{max-width:420px;margin:0;color:var(--dispatch-muted);font-size:.84rem;font-weight:600;line-height:1.45;text-align:right}.dispatch-timeline-scroll{flex:1 1;min-height:0;overflow-x:hidden;overflow-y:auto;background:linear-gradient(90deg,rgba(248,250,252,.94),rgba(248,250,252,.48)),var(--dispatch-surface)}.dispatch-timeline-scroll[data-zoomed=true]{overflow-x:auto}.dispatch-timeline-scroll[data-zoomed=true] .dispatch-lane-label,.dispatch-timeline-scroll[data-zoomed=true] .dispatch-ruler-spacer{position:-webkit-sticky;position:sticky;left:0;box-shadow:8px 0 14px rgba(15,23,42,.06)}.dispatch-timeline-scroll[data-zoomed=true] .dispatch-ruler-spacer{z-index:13}.dispatch-timeline-scroll[data-zoomed=true] .dispatch-lane-label{z-index:6}.dispatch-ruler-row{position:-webkit-sticky;position:sticky;top:0;z-index:10;display:flex;align-items:stretch;min-height:44px;border-bottom:1px solid var(--dispatch-border);background:var(--dispatch-surface)}.dispatch-ruler-spacer{width:var(--dispatch-label-width);flex:0 0 var(--dispatch-label-width);border-right:1px solid var(--dispatch-border);background:color-mix(in srgb,var(--dispatch-page) 72%,var(--dispatch-surface))}.dispatch-time-ruler{position:relative;flex:1 1;min-height:44px}.dispatch-time-tick{position:absolute;top:50%;transform:translate(-50%,-50%);transform-origin:center;color:var(--dispatch-muted);font-weight:760;letter-spacing:0;pointer-events:none;white-space:nowrap}.dispatch-time-tick:before{content:"";display:block;width:1px;height:10px;margin:0 auto 3px;background:color-mix(in srgb,var(--dispatch-muted) 44%,transparent)}.dispatch-time-tick:after{content:none}.dispatch-time-tick[data-major=true]{color:var(--dispatch-ink);font-weight:850;transform:translate(-50%,-50%)}.dispatch-time-tick[data-major=true]:before{height:14px;background:color-mix(in srgb,var(--dispatch-ink) 56%,transparent)}.dispatch-time-tick[data-major=true]:after{content:none}.dispatch-time-tick:first-child{transform:translateY(-50%)}.dispatch-time-tick:last-child{transform:translate(-100%,-50%)}.dispatch-lanes{display:flex;flex-direction:column}.dispatch-lane{display:flex;align-items:stretch;border-bottom:1px solid var(--dispatch-border);background:var(--dispatch-surface)}.dispatch-lane:last-child{border-bottom:none}.dispatch-lane:nth-child(2n){background:#f8fafc}.dispatch-lane-label{display:flex;gap:11px;width:var(--dispatch-label-width);flex:0 0 var(--dispatch-label-width);padding:0 14px;border-right:1px solid var(--dispatch-border);background:color-mix(in srgb,var(--dispatch-page) 72%,var(--dispatch-surface))}.dispatch-tech-avatar{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;color:#fff;font-size:.76rem;font-weight:800;letter-spacing:.02em;flex:0 0 auto}.dispatch-tech-name{color:var(--dispatch-ink);font-size:.86rem;font-weight:750;line-height:1.3;overflow-wrap:anywhere}.dispatch-lane-jobs{position:relative;flex:1 1;overflow:visible}.dispatch-travel-line{position:absolute;top:50%;height:0;border-top:1.5px dashed var(--primary);opacity:.5;transform:translateY(-50%);z-index:1;pointer-events:none}.dispatch-travel-line[data-live]{border-top-color:#ef4444;opacity:.95}.dispatch-travel-pill{position:absolute;top:50%;transform:translate(-50%,-50%);z-index:5;white-space:nowrap;padding:1px 7px;border-radius:999px;border:1px solid var(--primary);background:var(--card-bg);color:var(--primary);font-size:.62rem;font-weight:700;line-height:1.5;cursor:default}.dispatch-travel-pill[data-live]{border-color:rgba(239,68,68,.95);background:#fef2f2;color:#b91c1c;box-shadow:0 0 0 2px rgba(239,68,68,.18),0 5px 14px rgba(239,68,68,.28);animation:dispatch-travel-live-pulse 1s ease-in-out infinite}.dispatch-travel-pill[data-short]{border-color:#dc2626;color:#dc2626}.dispatch-travel-pill[data-short]:before{content:"⚠ "}@keyframes dispatch-travel-live-pulse{0%,to{box-shadow:0 0 0 2px rgba(239,68,68,.18),0 5px 14px rgba(239,68,68,.28)}50%{box-shadow:0 0 0 4px rgba(239,68,68,.28),0 7px 18px rgba(239,68,68,.42)}}.dispatch-lane-jobs:before{content:"";position:absolute;inset:0;z-index:0;background-image:repeating-linear-gradient(to right,var(--dispatch-grid-line) 0,var(--dispatch-grid-line) 1px,transparent 1px,transparent calc(100% / 56));pointer-events:none}.dispatch-now-indicator{position:absolute;top:0;bottom:0;z-index:5;width:2px;background:var(--dispatch-now-color);pointer-events:none}.dispatch-now-indicator:before{content:"";position:absolute;top:-1px;left:-5px;width:12px;height:12px;border:2px solid #fff;border-radius:50%;background:var(--dispatch-now-color);box-shadow:var(--px-shadow-sm)}.dispatch-job-card{position:absolute;top:10px;z-index:2;min-width:72px;height:calc(var(--dispatch-lane-height) - 20px);border-radius:var(--dispatch-radius);overflow:hidden;cursor:-webkit-grab;cursor:grab;box-shadow:var(--px-shadow-md);transition:transform .15s ease,box-shadow .15s ease}.dispatch-job-card:hover{z-index:4;transform:translateY(-2px);box-shadow:var(--px-shadow-lg)}.dispatch-job-card.is-dragging{opacity:.3;cursor:-webkit-grabbing;cursor:grabbing}.dispatch-job-card.is-resizing{cursor:ew-resize;box-shadow:0 18px 42px rgba(109,40,217,.28)}.dispatch-job-card.is-locked{cursor:default;opacity:.85}.dispatch-job-card.is-locked:hover{transform:none;box-shadow:var(--px-shadow-md)}.dispatch-block-card{position:absolute;top:14px;z-index:3;min-width:72px;height:calc(var(--dispatch-lane-height) - 28px);border:1px dashed rgba(124,58,237,.52);border-radius:var(--dispatch-radius);background:repeating-linear-gradient(135deg,rgba(124,58,237,.14),rgba(124,58,237,.14) 8px,hsla(0,0%,100%,.9) 0,hsla(0,0%,100%,.9) 16px);color:var(--dispatch-ink);overflow:hidden;cursor:-webkit-grab;cursor:grab;box-shadow:var(--px-shadow-sm);transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.dispatch-block-card:hover{z-index:5;transform:translateY(-2px);border-color:rgba(124,58,237,.8);box-shadow:var(--px-shadow-md)}.dispatch-block-card.is-driveable{border-style:solid;background:linear-gradient(135deg,rgba(20,184,166,.18),rgba(124,58,237,.14)),#fff}.dispatch-block-card.is-dragging{opacity:.35;cursor:-webkit-grabbing;cursor:grabbing}.dispatch-block-card.is-resizing{cursor:ew-resize;box-shadow:0 18px 42px rgba(20,184,166,.24)}.dispatch-block-card.is-locked{cursor:default;opacity:.78}.dispatch-block-card.is-locked:hover{transform:none;box-shadow:var(--px-shadow-sm)}.dispatch-block-card-inner{display:flex;flex-direction:column;justify-content:center;gap:2px;height:100%;padding:8px 10px;background:hsla(0,0%,100%,.72);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.dispatch-block-topline{display:flex;align-items:center;justify-content:space-between;gap:6px;min-width:0;font-size:.62rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#5b21b6}.dispatch-block-card em,.dispatch-block-card strong,.dispatch-block-topline span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dispatch-block-topline b{flex:0 0 auto;border-radius:999px;padding:2px 6px;background:rgba(20,184,166,.16);color:#0f766e;font-size:.58rem}.dispatch-block-card strong{display:block;min-width:0;font-size:.76rem;line-height:1.1}.dispatch-block-card em{display:block;min-width:0;color:var(--dispatch-body);font-size:.66rem;font-style:normal;font-weight:700}.dispatch-block-tooltip{border-color:rgba(20,184,166,.32)}.dispatch-job-resize-handle{position:absolute;top:0;bottom:0;z-index:6;width:14px;border:0;padding:0;background:transparent;cursor:ew-resize;opacity:0;transition:opacity .12s ease,background .12s ease}.dispatch-job-resize-handle.is-start{left:0}.dispatch-job-resize-handle.is-end{right:0}.dispatch-job-resize-handle:before{content:"";position:absolute;top:0;bottom:0;width:24px}.dispatch-job-resize-handle.is-start:before{left:0}.dispatch-job-resize-handle.is-end:before{right:0}.dispatch-job-resize-handle:after{content:"";position:absolute;top:12px;bottom:12px;left:50%;width:2px;border-radius:999px;background:hsla(0,0%,100%,.82);box-shadow:0 0 0 1px rgba(15,23,42,.16);transform:translateX(-50%)}.dispatch-job-card.is-resizing .dispatch-job-resize-handle,.dispatch-job-card:hover .dispatch-job-resize-handle{opacity:1}.dispatch-job-resize-handle:focus-visible,.dispatch-job-resize-handle:hover{background:hsla(0,0%,100%,.18);outline:none}.dispatch-time-guide{position:absolute;top:-2px;bottom:0;z-index:18;width:0;pointer-events:none}.dispatch-time-guide:before{content:"";position:absolute;top:0;bottom:0;left:0;width:2px;border-radius:999px;background:#0f172a;box-shadow:0 0 0 2px hsla(0,0%,100%,.78),0 10px 24px rgba(15,23,42,.22);transform:translateX(-50%)}.dispatch-time-guide span{position:absolute;top:-8px;left:0;min-width:max-content;padding:8px 12px;border:2px solid hsla(0,0%,100%,.82);border-radius:999px;background:#0f172a;color:#fff;font-size:.88rem;font-weight:900;line-height:1;box-shadow:0 16px 34px rgba(15,23,42,.34);transform:translate(-50%,-100%);white-space:nowrap}.dispatch-time-guide.is-resize-start span,.dispatch-time-guide.is-resize-start:before{background:#047857}.dispatch-time-guide.is-resize-end span,.dispatch-time-guide.is-resize-end:before{background:#b45309}.dispatch-job-card-inner{position:relative;display:flex;flex-direction:column;justify-content:space-between;width:100%;height:100%;padding:8px 10px}.dispatch-job-card-inner:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(135deg,hsla(0,0%,100%,.16),transparent 58%)}.dispatch-job-number{color:hsla(0,0%,100%,.82);font-size:.63rem;font-weight:800;letter-spacing:.05em;line-height:1.1}.dispatch-job-title{color:#fff;font-size:.76rem;font-weight:800;line-height:1.25;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 2px rgba(0,0,0,.28);white-space:nowrap}.dispatch-job-time-label{color:hsla(0,0%,100%,.9);font-size:.66rem;font-weight:700;line-height:1;white-space:nowrap}.dispatch-avatar-group{display:flex;align-items:center}.dispatch-avatar-group>*+*{margin-left:-5px}.dispatch-avatar-overflow,.dispatch-job-avatar{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border:1.5px solid hsla(0,0%,100%,.62);border-radius:50%;color:#fff;font-size:.52rem;font-weight:800;flex:0 0 auto}.dispatch-avatar-overflow{background:rgba(15,23,42,.72)}.dispatch-job-card[data-status=confirmed],.dispatch-job-card[data-status=requested],.dispatch-job-card[data-status=scheduled]{background:#3b6fe0;box-shadow:0 4px 12px rgba(59,111,224,.32)}.dispatch-job-card[data-status=on_the_way]{background:#06b6d4;box-shadow:0 4px 12px rgba(6,182,212,.32)}.dispatch-job-card[data-status=in_progress]{background:#16a34a;box-shadow:0 4px 12px rgba(22,163,74,.32)}.dispatch-job-card[data-status=overdue]{background:#ef4444;box-shadow:0 4px 12px rgba(239,68,68,.36)}.dispatch-job-card[data-status=done],.dispatch-job-card[data-status=invoiced],.dispatch-job-card[data-status=paid]{background:#5b8c7b;box-shadow:0 4px 12px rgba(91,140,123,.28)}.dispatch-job-card[data-status=lost]{background:#9d174d;box-shadow:0 4px 12px rgba(157,23,77,.3)}.dispatch-job-card[data-overrun=true]{opacity:1;border:2px solid hsla(0,0%,100%,.72);animation:dispatch-overrun-pulse 1s ease-in-out infinite}.dispatch-job-card[data-overrun=true]:hover{box-shadow:0 0 0 3px rgba(239,68,68,.22),0 8px 22px rgba(239,68,68,.58)}@keyframes dispatch-overrun-pulse{0%,to{filter:brightness(1);box-shadow:0 4px 12px rgba(239,68,68,.36)}50%{filter:brightness(1.2);box-shadow:0 0 0 3px rgba(239,68,68,.22),0 8px 22px rgba(239,68,68,.58)}}@media (prefers-reduced-motion:reduce){.dispatch-job-card[data-overrun=true],.dispatch-travel-pill[data-live]{animation:none}}.dispatch-queue-status-dot[data-status=confirmed],.dispatch-queue-status-dot[data-status=requested],.dispatch-queue-status-dot[data-status=scheduled]{background:#3b6fe0}.dispatch-queue-status-dot[data-status=on_the_way]{background:#06b6d4}.dispatch-queue-status-dot[data-status=in_progress]{background:#16a34a}.dispatch-queue-status-dot[data-status=overdue]{background:#ef4444}.dispatch-queue-status-dot[data-status=done],.dispatch-queue-status-dot[data-status=invoiced],.dispatch-queue-status-dot[data-status=paid]{background:#5b8c7b}.dispatch-queue-status-dot[data-status=lost]{background:#9d174d}.dispatch-tech-avatar[data-index="0"]{background:#6d28d9}.dispatch-tech-avatar[data-index="1"]{background:#0369a1}.dispatch-tech-avatar[data-index="2"]{background:#b45309}.dispatch-tech-avatar[data-index="3"]{background:#047857}.dispatch-tech-avatar[data-index="4"]{background:#dc2626}.dispatch-tech-avatar[data-index="5"]{background:#c2410c}.dispatch-tech-avatar[data-index="6"]{background:#0f766e}.dispatch-tech-avatar[data-index="7"]{background:#a21caf}.dispatch-job-avatar[data-index="0"]{background:#5b21b6}.dispatch-job-avatar[data-index="1"]{background:#075985}.dispatch-job-avatar[data-index="2"]{background:#92400e}.dispatch-job-avatar[data-index="3"]{background:#065f46}.dispatch-job-avatar[data-index="4"]{background:#991b1b}.dispatch-job-avatar[data-index="5"]{background:#9a3412}.dispatch-lane.is-drop-target .dispatch-lane-jobs{border-radius:6px;outline:2px dashed var(--px-primary);outline-offset:-4px;background:color-mix(in srgb,var(--px-primary) 9%,transparent)}.dispatch-dialog-overlay{--dispatch-surface:var(--ff-surface,var(--px-bg-white,#fff));--dispatch-page:var(--ff-page-bg,var(--px-bg-light,#f8fafc));--dispatch-border:var(--ff-border,var(--px-border-color,#dbe3ef));--dispatch-ink:var(--ff-ink,var(--px-text-dark,#111827));--dispatch-body:var(--ff-body,var(--px-text-body,#334155));--dispatch-muted:var(--ff-muted,var(--px-text-muted,#64748b));position:fixed;inset:0;z-index:9998;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(15,23,42,.56)}.dispatch-dialog{width:min(100%,520px);padding:20px;border:1px solid var(--dispatch-border);border-radius:8px;background:var(--dispatch-surface);box-shadow:0 24px 70px rgba(15,23,42,.26)}.dispatch-dialog-title{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 14px;padding-bottom:12px;border-bottom:1px solid var(--dispatch-border);color:var(--dispatch-ink);font-size:1rem;font-weight:800}.dispatch-dialog-close{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid var(--dispatch-border);border-radius:50%;background:var(--dispatch-page);color:var(--dispatch-muted);cursor:pointer;font-size:1.1rem;line-height:1}.dispatch-dialog-close:hover{border-color:var(--px-primary);color:var(--px-primary);background:var(--px-primary-light)}.dispatch-job-modal-number{display:inline-flex;align-items:center;width:-moz-fit-content;width:fit-content;margin-bottom:8px;color:var(--px-primary);font-size:.75rem;font-weight:850;letter-spacing:.04em;text-decoration:none;text-transform:uppercase}.dispatch-job-modal-title{margin:0 0 16px;color:var(--dispatch-ink);font-size:1.15rem;font-weight:850;line-height:1.25}.dispatch-job-modal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.dispatch-job-modal-grid span{min-width:0;padding:11px 12px;border:1px solid var(--dispatch-border);border-radius:8px;background:color-mix(in srgb,var(--dispatch-page) 74%,var(--dispatch-surface))}.dispatch-job-modal-grid em,.dispatch-job-modal-grid strong{display:block}.dispatch-job-modal-grid em{margin-bottom:4px;color:var(--dispatch-muted);font-size:.68rem;font-style:normal;font-weight:780;letter-spacing:.03em;text-transform:uppercase}.dispatch-job-modal-grid strong{overflow-wrap:anywhere;color:var(--dispatch-ink);font-size:.86rem;font-weight:800;text-transform:capitalize}.dispatch-dialog-body{margin:0 0 18px;color:var(--dispatch-body);font-size:.9rem;line-height:1.5}.dispatch-dialog-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;padding-top:14px;border-top:1px solid var(--dispatch-border)}.dispatch-dialog-btn{display:inline-flex;align-items:center;justify-content:center;padding:0 16px;font-size:.84rem;font-weight:750;text-decoration:none}.dispatch-dialog-btn.primary{border-color:var(--px-primary,#7c3aed);background:var(--px-primary,#7c3aed);color:#fff}.dispatch-dialog-btn.primary:hover{background:var(--px-primary-dark,#6d28d9);color:#fff}.dispatch-dialog-btn.danger{border-color:rgba(220,38,38,.24);background:rgba(220,38,38,.1);color:#b91c1c}.dispatch-dialog-btn.danger:hover{border-color:rgba(220,38,38,.44);background:rgba(220,38,38,.16);color:#991b1b}.dispatch-block-notes{margin:0 0 16px;border:1px solid rgba(20,184,166,.18);border-radius:var(--dispatch-radius);padding:10px 12px;background:rgba(20,184,166,.08);color:var(--dispatch-body);font-size:.86rem;line-height:1.45}@media (max-width:560px){.dispatch-dialog{padding:16px}.dispatch-job-modal-grid{grid-template-columns:1fr}.dispatch-dialog-actions{justify-content:stretch}.dispatch-dialog-btn{width:100%}}.dispatch-toast-container{position:fixed;right:24px;bottom:24px;z-index:9999;display:flex;flex-direction:column;gap:8px;pointer-events:none}.dispatch-toast{max-width:360px;padding:12px 16px;border-radius:8px;font-size:.86rem;font-weight:650;line-height:1.4;box-shadow:var(--px-shadow-lg);animation:dispatch-toast-slide-in .2s ease}.dispatch-toast.success{border:1px solid #065f46;background:#064e3b;color:#d1fae5}.dispatch-toast.error{border:1px solid #991b1b;background:#7f1d1d;color:#fee2e2}.dispatch-toast.warning{border:1px solid #92400e;background:#78350f;color:#fef3c7}@keyframes dispatch-toast-slide-in{0%{opacity:0;transform:translateX(12px)}to{opacity:1;transform:translateX(0)}}@media (max-width:1180px){.dispatch-command-bar,.dispatch-layout{grid-template-columns:1fr}.dispatch-sidebar,.dispatch-sidebar.is-empty{width:auto;border-right:0;border-bottom:1px solid var(--dispatch-border)}.dispatch-queue-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));max-height:230px}.dispatch-queue-empty{margin:14px 18px}}@media (max-width:1040px){.dispatch-page-heading .px-page-header-shell{align-items:stretch;flex-direction:column}.dispatch-page-heading .px-page-actions{justify-content:stretch}.dispatch-header-snapshot{max-width:none;margin-left:0}}@media (max-width:760px){.dispatch-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.dispatch-date-panel,.dispatch-metric{min-height:96px}.dispatch-main-header{align-items:flex-start;flex-direction:column}.dispatch-main-header p{max-width:none;text-align:left}.dispatch-wrapper{--dispatch-label-width:142px;--dispatch-lane-height:76px}.dispatch-timeline-inner{min-width:0}}@media (max-width:520px){.dispatch-header-snapshot{grid-template-columns:repeat(2,minmax(0,1fr))}.dispatch-date-panel,.dispatch-main-header,.dispatch-sidebar-header{padding:16px}.dispatch-date-label{width:100%;order:-1;font-size:1rem}.dispatch-date-nav{gap:8px}.dispatch-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.dispatch-queue-list{grid-template-columns:1fr}.dispatch-toast-container{right:14px;left:14px;bottom:14px}.dispatch-toast{max-width:none}}.dispatch-calendar-card{container-type:inline-size}.scheduler-calendar-card{overflow:visible}.scheduler-surface{--dispatch-radius:var(--ff-radius,8px);--dispatch-radius-lg:var(--ff-radius-lg,8px);--dispatch-border:var(--ff-border,var(--px-border-color));--dispatch-ink:var(--ff-ink,var(--px-text-dark));--dispatch-body:var(--ff-body,var(--px-text-body));--dispatch-muted:var(--ff-muted,var(--px-text-muted));min-width:0}.scheduler-surface-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid var(--dispatch-border);padding:18px 20px 14px;background:linear-gradient(180deg,rgba(248,250,252,.9),hsla(0,0%,100%,.95))}.scheduler-surface-toolbar h2{margin:2px 0 0;color:var(--dispatch-ink);font-size:1.05rem;font-weight:850}.scheduler-surface-kicker{display:block;color:var(--dispatch-muted);font-size:.68rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.scheduler-new-appointment-btn{display:inline-flex;align-items:center;gap:8px;min-height:40px;border:1px solid rgba(124,58,237,.24);border-radius:var(--dispatch-radius);padding:0 14px;background:var(--px-primary,#7c3aed);color:#fff;font-size:.84rem;font-weight:850;box-shadow:var(--px-shadow-sm)}.scheduler-new-appointment-btn:hover{background:var(--px-primary-dark,#6d28d9)}.scheduler-page-summary{--dispatch-radius-lg:var(--ff-radius-lg,8px);--dispatch-border:var(--ff-border,var(--px-border-color));--dispatch-ink:var(--ff-ink,var(--px-text-dark));--dispatch-muted:var(--ff-muted,var(--px-text-muted));display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:1px;gap:1px;border:1px solid var(--dispatch-border);border-radius:var(--dispatch-radius-lg);background:var(--dispatch-border);overflow:hidden}.scheduler-page-summary span{display:grid;grid-gap:3px;gap:3px;min-width:0;padding:12px 14px;background:#fff}.scheduler-page-summary em{color:var(--dispatch-muted);font-size:.66rem;font-style:normal;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.scheduler-page-summary strong{overflow:hidden;color:var(--dispatch-ink);font-size:.92rem;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.scheduler-appointment-backdrop{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:24px;background:rgba(15,23,42,.48)}.scheduler-appointment-dialog{--dispatch-radius:var(--ff-radius,8px);--dispatch-radius-lg:var(--ff-radius-lg,8px);--dispatch-border:var(--ff-border,var(--px-border-color));--dispatch-ink:var(--ff-ink,var(--px-text-dark));--dispatch-body:var(--ff-body,var(--px-text-body));--dispatch-muted:var(--ff-muted,var(--px-text-muted));width:min(1040px,100%);max-height:min(90vh,920px);display:flex;flex-direction:column;border:1px solid rgba(148,163,184,.42);border-radius:var(--dispatch-radius-lg);background:#fff;box-shadow:0 28px 70px rgba(15,23,42,.28);overflow:hidden}.scheduler-appointment-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;border-bottom:1px solid var(--dispatch-border);padding:18px 20px 14px}.scheduler-appointment-header h2{margin:3px 0 0;color:var(--dispatch-ink);font-size:1.12rem;font-weight:850}.scheduler-appointment-tabs{display:flex;gap:8px;border-bottom:1px solid var(--dispatch-border);padding:12px 20px;background:#f8fafc}.scheduler-appointment-tabs button{display:inline-flex;align-items:center;gap:8px;min-height:36px;border:1px solid transparent;border-radius:var(--dispatch-radius);padding:0 12px;background:transparent;color:var(--dispatch-body);font-size:.82rem;font-weight:850}.scheduler-appointment-tabs button.is-active{border-color:rgba(124,58,237,.28);background:#fff;color:var(--px-primary,#7c3aed);box-shadow:var(--px-shadow-sm)}.scheduler-appointment-form,.scheduler-job-create-panel{min-height:0;overflow:auto}.scheduler-appointment-form{padding:18px 20px 20px}.scheduler-appointment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.scheduler-appointment-grid label{display:grid;grid-gap:6px;gap:6px;min-width:0;color:var(--dispatch-body);font-size:.8rem;font-weight:800}.scheduler-appointment-wide{grid-column:1/-1}.scheduler-appointment-grid input,.scheduler-appointment-grid select,.scheduler-appointment-grid textarea{width:100%;min-width:0;border:1px solid var(--dispatch-border);border-radius:var(--dispatch-radius);padding:9px 10px;background:#fff;color:var(--dispatch-ink);font:inherit;font-weight:650}.scheduler-appointment-grid textarea{resize:vertical}.scheduler-appointment-grid input:disabled{background:#f8fafc;color:var(--dispatch-muted)}.scheduler-driveable-toggle{display:flex!important;grid-template-columns:auto 1fr;align-items:center;gap:10px;border:1px solid rgba(20,184,166,.22);border-radius:var(--dispatch-radius);padding:10px 12px;background:rgba(20,184,166,.07)}.scheduler-driveable-toggle input{width:16px;height:16px}.scheduler-driveable-toggle span{display:inline-flex;align-items:center;gap:8px}.scheduler-appointment-error{color:#b91c1c;font-size:.74rem;font-weight:750}.scheduler-appointment-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px;border-top:1px solid var(--dispatch-border);padding-top:14px}.scheduler-job-create-panel{padding:18px 20px 22px}@media (max-width:760px){.scheduler-appointment-actions,.scheduler-appointment-header,.scheduler-appointment-tabs,.scheduler-surface-toolbar{align-items:stretch;flex-direction:column}.scheduler-appointment-actions .dispatch-dialog-btn,.scheduler-new-appointment-btn{width:100%}.scheduler-appointment-grid,.scheduler-page-summary{grid-template-columns:1fr}.scheduler-appointment-backdrop{align-items:stretch;padding:12px}.scheduler-appointment-dialog{max-height:calc(100vh - 24px)}}.dispatch-wrapper{--dispatch-label-width:208px;--dispatch-sidebar-width:308px;--dispatch-lane-height:74px;--dispatch-radius:var(--ff-radius,8px);--dispatch-surface:var(--ff-surface,var(--px-bg-white));--dispatch-page:var(--ff-page-bg,var(--px-bg-light));--dispatch-border:var(--ff-border,var(--px-border-color));--dispatch-ink:var(--ff-ink,var(--px-text-dark));--dispatch-body:var(--ff-body,var(--px-text-body));--dispatch-muted:var(--ff-muted,var(--px-text-muted));--dispatch-grid-line:color-mix(in srgb,var(--dispatch-border) 58%,transparent);gap:12px}.dispatch-command-bar{grid-template-columns:minmax(300px,.74fr) minmax(520px,1.26fr);gap:12px;padding:12px;border:1px solid var(--dispatch-border);border-radius:var(--dispatch-radius);background:var(--dispatch-surface);box-shadow:var(--ff-shadow-card,var(--px-shadow-card))}.dispatch-date-panel,.dispatch-metric{box-shadow:none}.dispatch-date-panel{min-height:92px;padding:10px 12px;border:0;background:transparent}.dispatch-date-nav{gap:8px}.dispatch-date-nav-btn,.dispatch-today-btn{border-color:var(--dispatch-border);border-radius:var(--dispatch-radius);background:color-mix(in srgb,var(--dispatch-page) 54%,var(--dispatch-surface))}.dispatch-date-label{flex:1 1 auto;min-width:210px;font-size:1rem;font-weight:850;text-align:center}.dispatch-metrics{grid-template-columns:repeat(4,minmax(110px,1fr));gap:8px}.dispatch-metric{grid-template-columns:auto 1fr;grid-template-areas:"icon value" "icon label";column-gap:10px;row-gap:3px;align-content:center;min-height:92px;padding:14px;background:color-mix(in srgb,var(--dispatch-page) 60%,var(--dispatch-surface))}.dispatch-metric svg{grid-area:icon;align-self:center;width:22px;height:22px;color:var(--ff-accent,var(--px-primary))}.dispatch-metric-value{grid-area:value;font-size:1.32rem;font-weight:900}.dispatch-metric-label{grid-area:label;font-size:.72rem;font-weight:800;letter-spacing:.03em;text-transform:uppercase}.dispatch-layout{min-height:640px;height:calc(100dvh - var(--px-header-height, 56px) - var(--px-footer-height, 0px) - 214px);grid-template-columns:minmax(0,1fr);border-color:var(--dispatch-border);box-shadow:var(--ff-shadow-card,var(--px-shadow-card))}.dispatch-sidebar{background:color-mix(in srgb,var(--dispatch-page) 68%,var(--dispatch-surface))}.dispatch-main-header,.dispatch-ruler-row,.dispatch-sidebar-header{min-height:62px}.dispatch-sidebar-header{display:flex;align-items:center;padding:14px 16px;background:var(--dispatch-surface)}.dispatch-queue-list{gap:9px;padding:12px}.dispatch-queue-item{min-height:90px;padding:12px 13px;border-left-width:5px;box-shadow:none}.dispatch-main-header{padding:14px 16px}.dispatch-main-header h2{font-size:1rem;font-weight:850}.dispatch-main-header p{max-width:390px;font-size:.8rem}.dispatch-timeline-scroll{background:var(--dispatch-surface)}.dispatch-timeline-inner{width:100%;min-width:0}.dispatch-ruler-row{min-height:42px}.dispatch-lane-label,.dispatch-ruler-spacer{background:color-mix(in srgb,var(--dispatch-page) 78%,var(--dispatch-surface))}.dispatch-ruler-spacer{display:flex;align-items:center;justify-content:center;padding:0 12px}.dispatch-unassigned-count{display:inline-flex;align-items:center;gap:7px;min-height:30px;max-width:100%;padding:5px 9px;border:1px solid color-mix(in srgb,var(--ff-danger,#dc2626) 34%,var(--dispatch-border));border-radius:8px;background:color-mix(in srgb,var(--ff-danger,#dc2626) 10%,var(--dispatch-surface));color:var(--ff-danger,var(--px-danger,#dc2626));font-size:.72rem;font-weight:850;line-height:1}.dispatch-unassigned-count strong{color:inherit;font-size:1rem;line-height:1}.dispatch-unassigned-count span{overflow:hidden;color:inherit;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.dispatch-time-tick{font-size:0}.dispatch-time-tick[data-major=true]{font-size:.58rem}.dispatch-lane{min-height:var(--dispatch-lane-height)}.dispatch-lane:nth-child(2n){background:color-mix(in srgb,var(--dispatch-page) 48%,var(--dispatch-surface))}.dispatch-lane-label{padding:0 16px}.dispatch-tech-avatar{width:38px;height:38px}.dispatch-tech-name{font-size:.84rem;font-weight:800}.dispatch-lane-jobs:before{background-image:repeating-linear-gradient(to right,color-mix(in srgb,var(--dispatch-border) 34%,transparent) 0,color-mix(in srgb,var(--dispatch-border) 34%,transparent) 1px,transparent 1px,transparent calc(100% / 14)),repeating-linear-gradient(to right,var(--dispatch-grid-line) 0,var(--dispatch-grid-line) 1px,transparent 1px,transparent calc(100% / 56))}.dispatch-job-card{top:9px;height:calc(var(--dispatch-lane-height) - 18px);min-width:84px;box-shadow:0 10px 22px rgba(15,23,42,.18)}.dispatch-job-card-inner{padding:8px 10px 7px}.dispatch-job-title{font-size:.74rem}.dispatch-job-time-label{font-size:.64rem}.dispatch-avatar-group>*+*{margin-left:-6px}.dispatch-avatar-overflow,.dispatch-job-avatar{width:19px;height:19px}@container (max-width: 820px){.dispatch-command-bar{grid-template-columns:1fr}.dispatch-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.dispatch-layout{grid-template-columns:1fr}.dispatch-sidebar,.dispatch-sidebar.is-empty{width:auto;border-right:0;border-bottom:1px solid var(--dispatch-border)}.dispatch-queue-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));max-height:220px}}@container (max-width: 560px){.dispatch-wrapper{--dispatch-label-width:148px;--dispatch-lane-height:76px}.dispatch-command-bar{padding:10px}.dispatch-date-label{width:100%;min-width:0;order:-1}.dispatch-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.dispatch-timeline-inner{min-width:0}}.dispatch-intel-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:10px;gap:10px}.dispatch-intel-strip span{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"icon value" "icon note";grid-gap:2px 10px;gap:2px 10px;min-height:62px;padding:11px 13px;border:1px solid var(--dispatch-border);border-left:4px solid var(--ff-accent,var(--px-primary));border-radius:var(--dispatch-radius);background:var(--dispatch-surface);box-shadow:var(--ff-shadow-card,var(--px-shadow-card))}.dispatch-intel-strip span[data-tone=warning]{border-left-color:var(--ff-warning,#b45309)}.dispatch-intel-strip svg{grid-area:icon;align-self:center;width:19px;height:19px;color:var(--ff-accent,var(--px-primary))}.dispatch-intel-strip strong{grid-area:value;color:var(--dispatch-ink);font-size:.86rem;font-weight:880;line-height:1.2}.dispatch-intel-strip em{grid-area:note;color:var(--dispatch-muted);font-size:.72rem;font-style:normal;font-weight:700;line-height:1.25}.dispatch-layout.has-queue{grid-template-columns:minmax(260px,var(--dispatch-sidebar-width)) minmax(0,1fr)}.dispatch-sidebar-header{justify-content:space-between;gap:10px}.dispatch-sidebar-header strong{display:inline-flex;align-items:center;min-height:26px;padding:4px 8px;border-radius:999px;background:color-mix(in srgb,var(--ff-accent,var(--px-primary)) 12%,var(--dispatch-surface));color:var(--ff-accent,var(--px-primary));font-size:.7rem;font-weight:850;letter-spacing:0;text-transform:none;white-space:nowrap}.dispatch-queue-item[data-priority=danger]{border-left-color:var(--ff-danger,#dc2626)}.dispatch-queue-item[data-priority=warning]{border-left-color:var(--ff-warning,#b45309)}.dispatch-queue-meta{color:var(--dispatch-muted);font-size:.7rem;font-weight:720}.dispatch-lane-label{display:grid;grid-template-columns:38px minmax(0,1fr);align-content:center;align-items:center;grid-gap:2px 11px;gap:2px 11px}.dispatch-tech-avatar{grid-row:1/span 2}.dispatch-tech-meta{color:var(--dispatch-muted);font-size:.7rem;font-weight:720;line-height:1.2}.dispatch-job-card-inner{gap:3px}.dispatch-job-footer,.dispatch-job-topline{display:flex;align-items:center;justify-content:space-between;gap:5px}.dispatch-job-assignment-label,.dispatch-job-entity{flex:0 0 auto;color:hsla(0,0%,100%,.8);font-size:.57rem;font-weight:850;letter-spacing:.04em;line-height:1;text-transform:uppercase}.dispatch-job-entity{padding:3px 5px;border-radius:999px;background:rgba(15,23,42,.22)}.dispatch-job-subtitle{overflow:hidden;color:hsla(0,0%,100%,.78);font-size:.62rem;font-weight:720;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.dispatch-job-footer{min-height:20px}.dispatch-job-time-label{overflow:hidden;text-overflow:ellipsis}@container (max-width: 820px){.dispatch-intel-strip,.dispatch-layout.has-queue{grid-template-columns:1fr}}.dispatch-main-header{display:grid;grid-template-columns:minmax(180px,.85fr) minmax(340px,1.15fr);align-items:center;grid-column-gap:12px;column-gap:12px;grid-row-gap:10px;row-gap:10px}.dispatch-route-plan{min-width:0}.dispatch-range-controls{display:flex;align-items:center;gap:8px;margin-top:8px;flex-wrap:wrap}.dispatch-range-controls label{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:4px 7px;border:1px solid var(--dispatch-border);border-radius:8px;background:color-mix(in srgb,var(--dispatch-surface) 92%,var(--dispatch-page))}.dispatch-range-controls label span{color:var(--dispatch-muted);font-size:.62rem;font-weight:850;letter-spacing:.03em;line-height:1;text-transform:uppercase}.dispatch-range-controls select{min-width:84px;border:0;background:transparent;color:var(--dispatch-ink);cursor:pointer;font:inherit;font-size:.78rem;font-weight:850;line-height:1;outline:none}.dispatch-range-controls label:focus-within{border-color:var(--px-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--px-primary) 18%,transparent)}.dispatch-board-date{justify-self:stretch;width:100%;min-width:0}.dispatch-board-date .dispatch-date-nav{display:grid;grid-template-columns:38px minmax(170px,1fr) 38px minmax(58px,auto);align-items:center;justify-content:center;grid-gap:8px;gap:8px}.dispatch-board-date .dispatch-date-label{min-width:0;padding:0 8px;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}.dispatch-board-date .dispatch-date-nav-btn,.dispatch-board-date .dispatch-today-btn{min-height:38px}.dispatch-board-date .dispatch-today-btn{padding:0 12px;white-space:nowrap}@container (max-width: 1080px){.dispatch-main-header{grid-template-columns:minmax(180px,.82fr) minmax(330px,1.18fr)}.dispatch-board-date{justify-self:stretch}}@container (max-width: 760px){.dispatch-main-header{grid-template-columns:1fr}.dispatch-board-date .dispatch-date-nav{grid-template-columns:38px minmax(0,1fr) 38px}.dispatch-board-date .dispatch-today-btn{grid-column:1/-1;justify-self:flex-start}}@container (max-width: 520px){.dispatch-board-date .dispatch-today-btn,.dispatch-range-controls label{width:100%}.dispatch-board-date .dispatch-date-nav{grid-template-columns:38px minmax(0,1fr) 38px}}.dispatch-lane-hide{margin-left:auto;border:0;background:transparent;color:var(--bs-secondary-color,#94a3b8);font-size:14px;line-height:1;padding:2px 6px;border-radius:6px;cursor:pointer}.dispatch-lane-hide:hover{background:rgba(148,163,184,.16);color:var(--primary,#f2541b)}.dispatch-show-hidden{margin-left:10px;font-size:11px;padding:3px 10px}.dispatch-quick-edit{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px 12px;gap:10px 12px;border-top:1px solid var(--card-border,#e2e8f0);padding-top:12px}.dispatch-quick-edit label{display:flex;flex-direction:column;gap:4px;font-size:12px}.dispatch-quick-edit label:last-child{grid-column:1/-1}.dispatch-quick-edit em{font-style:normal;color:var(--bs-secondary-color,#64748b);font-size:11px;text-transform:uppercase;letter-spacing:.4px}.dispatch-quick-edit input,.dispatch-quick-edit select{border:1px solid var(--card-border,#cbd5e1);border-radius:8px;padding:7px 10px;font-size:13px;background:var(--card-bg,#fff);color:inherit}.dispatch-view-toggle{margin-left:10px;font-size:11px;padding:3px 10px}.dispatch-day-tick{position:absolute;top:0;bottom:0;display:flex;align-items:center;justify-content:flex-start;padding-left:8px;font-size:11px;font-weight:700;color:var(--bs-secondary-color,#64748b);border-left:1px solid var(--card-border,#e2e8f0);white-space:nowrap;overflow:hidden}.dispatch-day-tick[data-today=true]{color:var(--primary,#f2541b);background:rgba(242,84,27,.06)}.dispatch-timeline-inner[data-mode=multi] .dispatch-lane-jobs{background-image:linear-gradient(to right,var(--card-border,#e2e8f0) 1px,transparent 1px);background-size:calc(100% / 15) 100%}.dispatch-time-ruler[data-mode=multi]{height:58px}.dispatch-ruler-days,.dispatch-ruler-hours{position:absolute;left:0;right:0}.dispatch-ruler-days{top:0;height:28px}.dispatch-ruler-hours{top:28px;height:30px}.dispatch-ruler-days .dispatch-day-tick{font-size:13px;font-weight:800;color:var(--bs-body-color,#0f172a);border-left:2px solid var(--card-border,#cbd5e1)}.dispatch-hour-tick{position:absolute;top:0;bottom:0;display:flex;align-items:center;padding-left:6px;font-size:10.5px;font-weight:600;color:var(--bs-secondary-color,#94a3b8);border-left:1px solid var(--card-border,#eef2f7);white-space:nowrap}.dispatch-hour-tick[data-day-start=true]{border-left:2px solid var(--card-border,#cbd5e1)}.dispatch-lane-unassigned{background:rgba(148,163,184,.06);border-bottom:1px solid var(--card-border,#e2e8f0)}.dispatch-unassigned-avatar{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--card-border,#e2e8f0);color:var(--bs-secondary-color,#64748b);font-size:14px}.dispatch-job-tooltip{position:fixed;z-index:1100;width:280px;background:#1f2430;color:#e2e8f0;border-radius:12px;padding:14px 16px;box-shadow:0 12px 32px rgba(15,23,42,.35);font-size:12.5px;line-height:1.45;pointer-events:none}.dispatch-job-tooltip-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.dispatch-job-tooltip-number{font-weight:800;font-size:14px;color:#fff;letter-spacing:.2px}.dispatch-job-tooltip-status{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;border-radius:999px;padding:3px 9px;background:#334155;color:#cbd5e1}.dispatch-job-tooltip-status[data-status=confirmed],.dispatch-job-tooltip-status[data-status=scheduled]{background:#14b8a6;color:#042f2e}.dispatch-job-tooltip-status[data-status=on_the_way]{background:#38bdf8;color:#082f49}.dispatch-job-tooltip-status[data-status=in_progress]{background:#fb923c;color:#431407}.dispatch-job-tooltip-row{display:flex;gap:10px;align-items:flex-start;padding:4px 0}.dispatch-job-tooltip-row>span:first-child{flex:0 0 16px;opacity:.85}