.afm-route-range{appearance:none;cursor:pointer;background:#d9e1ec;border-radius:999px;height:2px}.afm-route-range::-webkit-slider-thumb{appearance:none;background:#06f;border:2px solid #fff;border-radius:999px;width:10px;height:10px;box-shadow:0 0 0 1px #0066ff3d}.afm-route-range::-moz-range-thumb{background:#06f;border:2px solid #fff;border-radius:999px;width:8px;height:8px;box-shadow:0 0 0 1px #0066ff3d}.afm-route-range:focus-visible{outline-offset:5px;outline:2px solid #0066ff59}.afm-route-range:disabled{cursor:default;opacity:.45}.os-db-root{flex-direction:column;flex:1;gap:.85rem;min-height:0;padding-bottom:.5rem;display:flex}.os-db-scheduling-shell{background:0 0;border:none;padding:.75rem 0 0}.os-db-page-header{flex-shrink:0}.os-db-header-band{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.os-db-header-copy h1{color:var(--afm-ink);letter-spacing:-.02em;margin:0;font-size:1.5rem;font-weight:700;line-height:1.2}.os-db-subtitle{color:var(--afm-muted);max-width:36rem;margin:.3rem 0 0;font-size:.8125rem;line-height:1.4}.os-db-toolbar,.os-db-date-pill,.os-db-col-head,.os-db-timeline-head,.os-db-timeline-foot,.os-db-kpi-top,.os-db-job-card-foot,.os-db-tl-block-top{align-items:center;gap:.5rem;display:flex}.os-db-toolbar{flex-wrap:wrap;justify-content:flex-end}.os-db-date-pill{border:1px solid var(--afm-border);background:#fff;border-radius:999px;padding:.2rem .35rem;position:relative;box-shadow:0 1px 2px #0f172a0a}.os-db-date-picker{cursor:pointer;align-items:center;display:inline-flex;position:relative}.os-db-date-label{color:var(--afm-ink);text-align:center;white-space:nowrap;min-width:8.75rem;font-size:.875rem;font-weight:600}.os-db-date-input{opacity:0;cursor:pointer;border:none;width:100%;height:100%;margin:0;padding:0;position:absolute;inset:0}.os-db-icon-btn{width:1.85rem;height:1.85rem;color:var(--afm-body);cursor:pointer;background:0 0;border:none;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.os-db-icon-btn:hover{background:var(--afm-muted-bg,#f1f5f9)}.os-db-kpi-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;display:grid}.os-db-kpi-card{border:1px solid var(--afm-border);background:#fff;border-left-width:4px;border-radius:14px;padding:.9rem 1rem;box-shadow:0 1px 3px #0f172a0d}.os-db-kpi-amber{border-left-color:#f59e0b}.os-db-kpi-green{border-left-color:#16a34a}.os-db-kpi-blue{border-left-color:#06f}.os-db-kpi-action{border-left-color:#8b5cf6}.os-db-kpi-value-row{align-items:center;gap:.75rem;display:flex}.os-db-kpi-value-row .os-db-progress{flex:1;max-width:9rem;margin:0}.os-db-badge-action{color:#0052cc;white-space:nowrap;background:#eaf3ff;border-radius:999px;padding:.12rem .45rem;font-size:.65rem;font-weight:700;text-decoration:none;display:inline-block}.os-db-kpi-top{justify-content:space-between;margin-bottom:.15rem}.os-db-kpi-label{color:var(--afm-muted);text-transform:uppercase;letter-spacing:.04em;margin:0;font-size:.7rem;font-weight:700}.os-db-kpi-value{color:var(--afm-ink);font-variant-numeric:tabular-nums;letter-spacing:-.02em;margin:.15rem 0;font-size:1.65rem;font-weight:700;line-height:1.15}.os-db-kpi-meta{color:var(--afm-muted);margin:0;font-size:.75rem}.os-db-badge-ok,.os-db-badge-warn{white-space:nowrap;border-radius:999px;padding:.12rem .45rem;font-size:.65rem;font-weight:700;display:inline-block}.os-db-badge-ok{color:#166534;background:#dcfce7}.os-db-badge-warn{color:#9a3412;background:#ffedd5}.os-db-progress{background:#e8eef7;border-radius:999px;height:6px;margin:.4rem 0 .35rem;overflow:hidden}.os-db-progress-fill{background:#06f;border-radius:999px;height:100%}.os-db-primary-btn,.os-db-dispatch-btn{color:#fff;cursor:pointer;background:#06f;border:none;border-radius:10px;justify-content:center;align-items:center;gap:.4rem;padding:.5rem .9rem;font-size:.8125rem;font-weight:600;text-decoration:none;display:inline-flex}.os-db-primary-btn:disabled,.os-db-dispatch-btn:disabled{opacity:.45;cursor:not-allowed}.os-db-ghost-btn{border:1px solid var(--afm-border);color:var(--afm-body);cursor:pointer;background:#fff;border-radius:10px;align-items:center;gap:.35rem;padding:.45rem .75rem;font-size:.8125rem;font-weight:500;display:inline-flex}.os-db-ghost-btn:disabled{opacity:.5;cursor:not-allowed}.os-db-board{flex:1;grid-template-columns:minmax(240px,280px) minmax(0,1fr) minmax(280px,320px);gap:.85rem;min-height:560px;display:grid}.os-db-unassigned,.os-db-timeline,.os-db-inspector{border:1px solid var(--afm-border);background:#fff;border-radius:14px;min-height:0;padding:.85rem;overflow:auto;box-shadow:0 1px 3px #0f172a0a}.os-db-unassigned.is-drop-active{box-shadow:inset 0 0 0 2px #06f}.os-db-count{color:#475569;background:#eef2f7;border-radius:999px;justify-content:center;min-width:1.35rem;padding:.1rem .4rem;font-size:.7rem;font-weight:700;display:inline-flex}.os-db-col-head{justify-content:space-between;margin-bottom:.25rem}.os-db-col-head h2,.os-db-timeline-head h2{color:var(--afm-ink);margin:0;font-size:.9rem;font-weight:700}.os-db-helper{color:var(--afm-muted);margin:0 0 .65rem;font-size:.72rem;line-height:1.35}.os-db-job-card{text-align:left;border:1px solid var(--afm-border);cursor:pointer;background:#fff;border-left-width:4px;border-radius:12px;width:100%;margin-bottom:.55rem;padding:.7rem .75rem .7rem .85rem;display:block;box-shadow:0 1px 2px #0f172a0a}.os-db-job-card.is-selected{box-shadow:0 0 0 2px #0066ff59}.os-db-job-card.is-dragging{opacity:.5}.os-db-accent-blue{border-left-color:#06f}.os-db-accent-green{border-left-color:#16a34a}.os-db-accent-orange{border-left-color:#ea580c}.os-db-accent-slate{border-left-color:#94a3b8}.os-db-accent-teal{border-left-color:#0d9488}.os-db-accent-amber{border-left-color:#f59e0b}.os-db-job-card-when{align-items:center;gap:.4rem;display:inline-flex}.os-db-time-pill{white-space:nowrap;border-radius:999px;padding:.14rem .5rem;font-size:.68rem;font-weight:700;display:inline-flex}.os-db-time-blue{color:#0052cc;background:#eaf3ff}.os-db-time-teal{color:#0f766e;background:#ccfbf1}.os-db-time-amber{color:#b45309;background:#fef3c7}.os-db-time-green{color:#166534;background:#dcfce7}.os-db-time-orange{color:#c2410c;background:#ffedd5}.os-db-time-slate{color:#475569;background:#e2e8f0}.os-db-job-card-duration{color:var(--afm-muted);font-size:.72rem;font-weight:600}.os-db-job-card-chips{flex-wrap:wrap;gap:.3rem;display:inline-flex}.os-db-chip{color:#475569;white-space:nowrap;background:#f1f5f9;border-radius:6px;padding:.14rem .4rem;font-size:.62rem;font-weight:600;display:inline-flex}.os-db-job-card-title{color:var(--afm-ink);margin:.25rem 0 .15rem;font-size:.875rem;font-weight:700;line-height:1.25}.os-db-job-card-route,.os-db-job-card-resources,.os-db-job-card-meta{color:var(--afm-muted);margin:0;font-size:.72rem}.os-db-job-card-foot{justify-content:space-between;margin-top:.45rem}.os-db-job-card-price{color:var(--afm-ink);font-variant-numeric:tabular-nums;margin:0;font-size:.8125rem;font-weight:700}.os-db-sep{opacity:.45}.os-db-drag-handle{color:#94a3b8;cursor:grab;padding:.15rem;display:inline-flex}.os-db-drag-handle:active{cursor:grabbing}.os-db-crew-meta-reorder{cursor:grab;-webkit-user-select:none;user-select:none;outline:none}.os-db-crew-meta-reorder:active{cursor:grabbing}.os-db-crew-meta-reorder:focus-visible{box-shadow:inset 0 0 0 2px #0066ff59}.os-db-crew-meta-reorder.is-ordering{opacity:.72}.os-db-lane-resize{z-index:6;cursor:ns-resize;touch-action:none;background:0 0;height:8px;position:absolute;bottom:0;left:0;right:0}html[data-afm-crew-row-reordering] .os-db-lane-resize{pointer-events:none!important}.os-db-lane-resize:hover,.os-db-lane-resize:active{background:linear-gradient(#0000 0% 35%,#0066ff2e 35% 65%,#0000 65% 100%)}.os-db-job-card-meta{justify-content:space-between;align-items:center;gap:.35rem;display:flex}.os-db-status{letter-spacing:.03em;white-space:nowrap;border-radius:4px;padding:.12rem .35rem;font-size:.58rem;font-weight:700}.os-db-status-scheduled{color:#0052cc;background:#2563eb26}.os-db-status-dispatched{color:#0f766e;background:#0d948829}.os-db-status-in_progress{color:#c2410c;background:#ea580c2e}.os-db-status-done{color:#475569;background:#e2e8f0}.os-db-unassigned-foot{color:#166534;background:#f0fdf4;border-radius:10px;align-items:center;gap:.4rem;margin:.5rem 0 0;padding:.55rem .65rem;font-size:.75rem;font-weight:600;display:flex}.os-db-unassigned-foot-icon{color:#16a34a;display:inline-flex}.os-db-timeline{flex-direction:column;padding:.75rem .75rem .65rem;display:flex}.os-db-timeline-head{flex-wrap:wrap;justify-content:space-between;gap:.5rem .75rem;margin-bottom:.55rem}.os-db-timeline-legend{color:var(--afm-muted);flex-wrap:wrap;gap:.65rem;font-size:.68rem;display:flex}.os-db-dot{border-radius:999px;width:8px;height:8px;margin-right:.25rem;display:inline-block}.os-db-dot-dispatched{background:#0d9488}.os-db-dot-progress{background:#ea580c}.os-db-dot-done{background:#16a34a}.os-db-day-zoom{border:1px solid var(--afm-border);color:var(--afm-muted);background:#f8fafc;border-radius:8px;align-items:center;gap:.45rem;padding:.2rem .45rem;font-size:.7rem;display:inline-flex}.os-db-day-zoom strong{color:var(--afm-ink);font-weight:600}.os-db-timeline-scroll{border:1px solid var(--afm-border);background:#fafbfc;border-radius:12px;flex:1;overflow-x:auto}.os-db-grid-header,.os-db-crew-row{border-bottom:1px solid var(--afm-border);display:flex;position:relative}.os-db-grid-corner{shrink:0;border-right:1px solid var(--afm-border);letter-spacing:.06em;text-transform:uppercase;color:var(--afm-muted);background:#fff;flex-shrink:0;align-items:center;padding:0 .55rem;font-size:.58rem;font-weight:700;display:flex}.os-db-hours,.os-db-crew-track{flex-shrink:0;position:relative}.os-db-hours{background:#fff;display:flex}.os-db-hour{border-right:1px solid var(--afm-border);text-align:center;color:var(--afm-muted);flex-shrink:0;padding:.45rem .15rem;font-size:.68rem;font-weight:600}.os-db-crew-meta{border-right:1px solid var(--afm-border);background:#fff;flex-direction:column;flex-shrink:0;gap:.35rem;padding:.55rem .55rem .45rem;display:flex}.os-db-crew-meta-top{align-items:flex-start;gap:.45rem;display:flex}.os-db-crew-id{color:#06f;background:#e8f1ff;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:1.65rem;height:1.65rem;font-size:.65rem;font-weight:800;display:inline-flex}.os-db-crew-meta-text{flex:1;min-width:0}.os-db-crew-name{color:var(--afm-ink);text-transform:capitalize;margin:0;font-size:.78rem;font-weight:700}.os-db-crew-sub{color:var(--afm-muted);margin:.1rem 0 0;font-size:.65rem;line-height:1.3}.os-db-crew-truck{color:#64748b;font-weight:600}.os-db-crew-slots{width:100%}.os-db-crew-meta--assign{flex-direction:column;align-items:stretch;gap:0;padding:4px 6px;position:relative;overflow:hidden}.dbv-lane--assign{flex-direction:column;align-items:stretch;gap:0;padding:4px 6px;overflow:hidden}.os-db-crew-lane-head{min-width:0;cursor:inherit;flex-shrink:0;align-items:center;gap:6px;padding:2px 2px 4px;display:flex}.os-db-crew-lane-head__label{color:#0b132b;letter-spacing:-.01em;text-overflow:ellipsis;text-transform:capitalize;white-space:nowrap;min-width:0;font-size:11px;font-weight:700;line-height:1.2;overflow:hidden}.os-db-lane-assign{overscroll-behavior:contain;scrollbar-width:none;width:100%;min-width:0;height:100%;max-height:72px;cursor:inherit;flex-direction:column;gap:2px;transition:opacity .15s;display:flex;overflow-y:auto}.os-db-lane-assign::-webkit-scrollbar{display:none}.os-db-lane-assign__chips::-webkit-scrollbar{display:none}.os-db-lane-assign.is-saving{opacity:.58}.os-db-lane-assign__row{border:1px solid #0000;border-radius:6px;grid-template-columns:13px minmax(0,1fr);align-items:center;gap:4px;min-height:17px;padding:0 2px;transition:background-color .14s cubic-bezier(.16,1,.3,1),border-color .14s cubic-bezier(.16,1,.3,1);display:grid}.os-db-lane-assign__row.is-drag-over{background:#eaf3ff;border-color:#c9dcff}.os-db-lane-assign__icon{color:#64748b;stroke-width:1.7px;width:12px;height:12px}.os-db-lane-assign__chips{scrollbar-width:none;align-items:center;gap:3px;min-width:0;display:flex;overflow-x:auto}.os-db-lane-assign__empty{color:#8a97ad;text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:500;line-height:15px;overflow:hidden}.os-db-lane-chip{color:#0b132b;cursor:grab;background:#f4f5f7;border:1px solid #e3e8f0;border-radius:5px;flex:none;align-items:center;gap:1px;min-width:0;max-width:100%;height:17px;padding:0 3px 0 6px;transition:border-color .15s,background-color .15s,color .15s,opacity .15s;display:inline-flex}.os-db-lane-chip:hover{background:#f3f6fa;border-color:#c3ccda}.os-db-lane-chip:active{cursor:grabbing}.os-db-lane-chip.is-dragging{opacity:.45}.os-db-lane-chip--primary{color:#06f;background:#eaf3ff;border-color:#c9dcff}.os-db-lane-chip__text{text-overflow:ellipsis;white-space:nowrap;max-width:112px;font-size:9.5px;font-weight:650;line-height:15px;overflow:hidden}.os-db-lane-chip__remove{color:#8a97ad;opacity:0;cursor:pointer;background:0 0;border:0;border-radius:3px;flex:none;justify-content:center;align-items:center;width:12px;height:14px;font-size:11px;line-height:1;transition:background-color .15s,color .15s,opacity .15s;display:inline-flex}.os-db-lane-chip:hover .os-db-lane-chip__remove,.os-db-lane-chip__remove:focus-visible{opacity:1}.os-db-lane-chip__remove:hover{color:#d13438;background:#fff}.afm-assign-board{background:linear-gradient(#fffffff5,#f8fafcfa),#f8fafc;border:1px solid #e3e8f0;border-radius:1rem;width:100%;padding:.45rem .5rem .55rem;box-shadow:0 1px 2px #0f172a0a,0 8px 20px #0f172a0a}.afm-assign-board--compact{border-radius:.85rem;padding:.35rem .4rem .45rem}.afm-assign-board__hint{color:#94a3b8;letter-spacing:.01em;margin:0 0 .4rem;font-size:10px;font-weight:500}.afm-assign-lanes{flex-direction:column;gap:.28rem;display:flex}.afm-assign-lane{background:#ffffffb8;border:1px solid #0000;border-radius:.7rem;grid-template-columns:4.4rem minmax(0,1fr);align-items:center;gap:.4rem;min-height:2.15rem;padding:.22rem .35rem .22rem .4rem;transition:background-color .16s,border-color .16s,box-shadow .16s,transform .16s;display:grid}.afm-assign-lane.is-drag-over{background:#eaf3ff;border-color:#0066ff59;transform:translateY(-1px);box-shadow:inset 0 0 0 1px #0066ff1f}.afm-assign-lane.is-disabled{pointer-events:none;opacity:.5}.afm-assign-lane__meta{align-items:center;gap:.3rem;min-width:0;display:flex}.afm-assign-lane__label{letter-spacing:.05em;text-transform:uppercase;color:#64748b;font-size:10px;font-weight:700}.afm-assign-lane__count{color:#06f;text-align:center;font-variant-numeric:tabular-nums;background:#e8f1ff;border-radius:999px;min-width:1rem;height:1rem;padding:0 .28rem;font-size:9px;font-weight:700;line-height:1rem}.afm-assign-lane__track{background:repeating-linear-gradient(90deg,#0066ff0b 0 8px,#0000 8px 16px);border-radius:.55rem;flex-wrap:wrap;align-items:center;gap:.28rem;min-height:1.7rem;padding:.12rem .15rem;display:flex}.afm-assign-lane.is-drag-over .afm-assign-lane__track{background:repeating-linear-gradient(90deg,#0066ff1f 0 8px,#eaf3ffa6 8px 16px)}.afm-assign-lane__empty{color:#a0aec0;padding-left:.15rem;font-size:10.5px;font-weight:500}.afm-assign-tile{color:#0b132b;cursor:grab;background:#fff;border:1px solid #d9e1ec;border-radius:.45rem;align-items:center;gap:.28rem;max-width:100%;height:1.55rem;padding:0 .28rem 0 .35rem;font-size:11px;font-weight:600;line-height:1;transition:transform .14s cubic-bezier(.16,1,.3,1),box-shadow .14s,border-color .14s,opacity .14s;display:inline-flex;box-shadow:0 1px 2px #0f172a0d}.afm-assign-tile:hover{border-color:#c3ccda;transform:translateY(-1px);box-shadow:0 2px 8px #0f172a14}.afm-assign-tile:active,.afm-assign-tile.is-dragging{cursor:grabbing;opacity:.35;transform:scale(.97)}.afm-assign-tile--truck{color:#0052cc;background:linear-gradient(#f5f9ff,#eaf3ff);border-color:#c9dcff}.afm-assign-tile__grip{opacity:.45;flex-direction:column;justify-content:center;gap:2px;width:8px;display:inline-flex}.afm-assign-tile__grip span{background:currentColor;border-radius:999px;width:8px;height:1.5px;display:block}.afm-assign-tile__text{text-overflow:ellipsis;white-space:nowrap;max-width:7.5rem;overflow:hidden}.afm-assign-tile__remove{color:#94a3b8;border-radius:.3rem;justify-content:center;align-items:center;width:1.05rem;height:1.05rem;margin-left:.05rem;font-size:13px;line-height:1;transition:background-color .14s,color .14s;display:inline-flex}.afm-assign-tile__remove:hover{color:#0b132b;background:#f3f6fa}.afm-assign-tile--truck .afm-assign-tile__remove:hover{color:#0052cc;background:#0066ff1a}.afm-assign-chip{color:#0b132b;background:#fff;border:1px solid #e3e8f0;border-radius:.45rem;align-items:center;gap:.2rem;max-width:100%;padding:.15rem .45rem;font-size:11px;font-weight:600;line-height:1.25;display:inline-flex}.afm-assign-chip--truck{color:#0052cc;background:#eaf3ff;border-color:#d7e7ff}.afm-assign-chip__text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.afm-assign-drag-ghost{z-index:10000;color:#0b132b;pointer-events:none;background:#fffffff5;border:1px solid #0066ff47;border-radius:.55rem;align-items:center;gap:.35rem;height:2rem;padding:0 .7rem 0 .55rem;font-size:12px;font-weight:700;display:inline-flex;position:fixed;top:-200px;left:-200px;box-shadow:0 8px 24px #0f172a29,0 0 0 4px #0066ff14}.afm-assign-drag-ghost.is-truck{color:#0052cc;background:linear-gradient(#f5f9ff,#eaf3ff)}.afm-assign-drag-ghost__sparkle,.afm-assign-drag-ghost__sparkle--2{background:#06f;border-radius:999px;width:6px;height:6px;animation:.42s ease-in-out infinite afm-assign-sparkle;box-shadow:0 0 8px #0066ffa6}.afm-assign-drag-ghost__sparkle--2{background:#9ec5ff;width:4px;height:4px;animation-delay:.12s}@keyframes afm-assign-sparkle{0%,to{opacity:.55;transform:scale(.7)}50%{opacity:1;transform:scale(1.25)}}.afm-assign-trail-dot{z-index:9999;pointer-events:none;border-radius:999px;animation:.42s ease-out forwards afm-assign-trail-fade;position:fixed;transform:translate(-50%,-50%)scale(1)}@keyframes afm-assign-trail-fade{0%{opacity:.95;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-50%)scale(.2)}}.os-db-crew-track{background:#fafbfc;min-height:5.5rem;position:relative}.os-db-crew-track.is-drop{background:#0066ff0f}.os-db-hour-lines{pointer-events:none;display:flex;position:absolute;inset:0}.os-db-hour-line{border-right:1px solid #94a3b859;flex-shrink:0;height:100%}.os-db-now-line{z-index:12;pointer-events:none;background:#ef4444;width:2px;position:absolute;top:0;bottom:0}.os-db-now-badge{color:#fff;white-space:nowrap;background:#ef4444;border-radius:999px;padding:.1rem .35rem;font-size:.6rem;font-weight:700;position:absolute;top:.2rem;left:50%;transform:translate(-50%);box-shadow:0 1px 2px #ef444459}.os-db-snap-ghost{z-index:2;pointer-events:none;background:#0066ff0d;border:2px dashed #06f;border-radius:10px;justify-content:center;align-items:center;width:7.5rem;display:flex;position:absolute;top:.4rem;bottom:.4rem}.os-db-snap-ghost span{color:#0052cc;background:#eaf3ff;border-radius:999px;padding:.15rem .5rem;font-size:.62rem;font-weight:700}.os-db-open-hint{color:var(--afm-muted);pointer-events:none;white-space:nowrap;z-index:1;font-size:.68rem;position:absolute;top:50%;left:.65rem;transform:translateY(-50%)}.os-db-release-hint{color:#06f;pointer-events:none;white-space:nowrap;z-index:2;font-size:.65rem;font-weight:600;position:absolute;top:.3rem;right:.65rem}.os-db-tl-abs{z-index:3;position:absolute;top:.4rem}.os-db-route-gap{z-index:2;color:#64748b;pointer-events:none;justify-content:center;align-items:center;min-width:.25rem;height:calc(100% - 1.1rem);display:flex;position:absolute;top:.55rem;overflow:hidden}.os-db-route-gap-line{border-top:1px dashed #c3ccda;position:absolute;top:50%;left:0;right:0}.os-db-route-gap-drive{background:#94a3b82e;border:1px solid #94a3b859;border-radius:.35rem;position:absolute;top:18%;bottom:18%;left:0}.os-db-route-gap-badge{z-index:1;font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis;background:#fff;border:1px solid #d9e1ec;border-radius:999px;max-width:calc(100% - 4px);padding:.18rem .38rem;font-size:.5625rem;font-weight:700;line-height:1.15;position:relative;overflow:hidden;box-shadow:0 1px 2px #1018280d}.os-db-route-gap-meta{color:#64748b;text-align:center;white-space:nowrap;text-overflow:ellipsis;width:max-content;max-width:min(100%,7.5rem);font-size:.48rem;font-weight:600;line-height:1.1;position:absolute;top:calc(50% + .85rem);left:50%;overflow:hidden;transform:translate(-50%)}.os-db-route-gap.is-tight{color:#b45309}.os-db-route-gap.is-tight .os-db-route-gap-line{border-top-color:#f59e0b}.os-db-route-gap.is-tight .os-db-route-gap-drive{background:#f59e0b29;border-color:#f59e0b66}.os-db-route-gap.is-tight .os-db-route-gap-badge{color:#b45309;background:#fff7e8;border-color:#f5c16c}.os-db-route-gap.is-late{color:#b91c1c}.os-db-route-gap.is-late .os-db-route-gap-line{border-top-color:#ef4444}.os-db-route-gap.is-late .os-db-route-gap-drive{background:#ef444424;border-color:#ef444466;width:100%!important}.os-db-route-gap.is-late .os-db-route-gap-badge{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.os-db-route-gap.is-clear .os-db-route-gap-line{border-top-color:#86c69d}.os-db-route-gap.is-clear .os-db-route-gap-drive{background:#10b9811f;border-color:#10b98159}.os-db-route-gap.is-clear .os-db-route-gap-badge{color:#15803d;background:#f0fdf4;border-color:#bbf7d0}.os-db-tl-abs.is-faded{opacity:.55}.os-db-tl-block{height:100%;min-height:4.4rem;color:var(--afm-ink);cursor:grab;border:1.5px solid #0000;border-radius:10px;padding:.45rem .55rem;box-shadow:0 1px 3px #0f172a14}.os-db-tl-block.is-selected{box-shadow:0 0 0 2px #fff,0 0 0 4px #06f}.os-db-tl-block.is-dragging{opacity:.55}.os-db-tl-block-top{justify-content:space-between;align-items:flex-start;gap:.35rem}.os-db-tl-block-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;margin:0;font-size:.72rem;font-weight:700;line-height:1.25;overflow:hidden}.os-db-tl-block-route{color:var(--afm-muted);text-overflow:ellipsis;white-space:nowrap;margin:.2rem 0 0;font-size:.62rem;overflow:hidden}.os-db-job-meta-chips{flex-wrap:wrap;gap:.2rem .28rem;min-width:0;margin-top:.18rem;display:flex}.os-db-job-meta-chips--board{flex-wrap:nowrap;overflow:hidden}.os-db-meta-chip{color:#334155;white-space:nowrap;text-overflow:ellipsis;font-variant-numeric:tabular-nums;background:#ffffffb8;border:1px solid #e3e8f0;border-radius:999px;align-items:center;max-width:100%;padding:.05rem .35rem;font-size:.58rem;font-weight:650;line-height:1.35;display:inline-flex;overflow:hidden}.os-db-job-meta-chips--board .os-db-meta-chip{padding:.02rem .28rem;font-size:.52rem}.os-db-job-hover-portal{pointer-events:none}.os-db-job-hover{color:#0b132b;background:#fff;border:1px solid #e3e8f0;border-radius:.75rem;padding:.65rem .75rem;box-shadow:0 1px 2px #0f172a0a,0 8px 24px #0f172a14}.os-db-job-hover-title{letter-spacing:-.01em;margin:0 0 .45rem;font-size:.78rem;font-weight:700}.os-db-job-hover-list{gap:.28rem;margin:0;display:grid}.os-db-job-hover-row{grid-template-columns:4.2rem 1fr;align-items:start;gap:.4rem;display:grid}.os-db-job-hover-row dt{text-transform:uppercase;letter-spacing:.04em;color:#64748b;margin:0;font-size:.62rem;font-weight:700}.os-db-job-hover-row dd{color:#0b132b;word-break:break-word;margin:0;font-size:.7rem;font-weight:600;line-height:1.35}.os-db-tl-block .os-db-status{background:#fff;border:1px solid;border-radius:999px;padding:.1rem .45rem}.os-db-tl-progress{background:#0f172a1a;border-radius:999px;height:4px;margin-top:.4rem;overflow:hidden}.os-db-tl-progress-fill{background:#b45309;border-radius:999px;height:100%}.os-db-timeline-foot{flex-wrap:wrap;justify-content:space-between;gap:.45rem .75rem;margin-top:.55rem}.os-db-timeline-foot-left{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.os-db-foot-link{font-size:.75rem;font-weight:600}.os-db-add-crew{color:#06f;font-size:.8125rem;font-weight:600;text-decoration:none;display:inline-flex}.os-db-snap-hint,.os-db-empty-rows{color:var(--afm-muted);font-size:.7rem}.os-db-empty-rows{padding:1.5rem .5rem}.os-db-inspector-head{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.45rem;display:flex}.os-db-inspector-menu{color:var(--afm-muted);letter-spacing:.08em;border-radius:6px;padding:.1rem .25rem;font-size:.9rem;font-weight:700;line-height:1;text-decoration:none}.os-db-inspector-menu:hover{color:var(--afm-ink);background:#f1f5f9}.os-db-ready-badge{color:#166534;letter-spacing:.05em;background:#dcfce7;border-radius:999px;padding:.2rem .55rem;font-size:.65rem;font-weight:800;display:inline-flex}.os-db-ready-badge.is-sent{color:#3730a3;background:#e0e7ff}.os-db-ready-badge.is-draft{color:#9a3412;background:#ffedd5}.os-db-inspector-title{color:var(--afm-ink);margin:0;font-size:1.05rem;font-weight:700;line-height:1.25}.os-db-inspector-window{color:var(--afm-muted);margin:.25rem 0 .85rem;font-size:.75rem}.os-db-inspector-empty{color:var(--afm-muted);margin:1rem 0;font-size:.8125rem}.os-db-inspector-dl{gap:.5rem;margin:0;display:grid}.os-db-inspector-dl div{grid-template-columns:5.25rem 1fr;gap:.35rem;font-size:.8125rem;display:grid}.os-db-inspector-dl dt{color:var(--afm-muted);font-weight:500}.os-db-inspector-dl dd{color:var(--afm-ink);text-align:right;margin:0;font-weight:600}.os-db-checks-card{border:1px solid var(--afm-border);background:#f8fafc;border-radius:12px;margin-top:1rem;padding:.65rem .75rem}.os-db-inspector-sub{color:var(--afm-ink);margin:0 0 .25rem;font-size:.75rem;font-weight:700}.os-db-checklist{margin:0;padding:0;list-style:none}.os-db-check{color:var(--afm-ink);align-items:center;gap:.5rem;padding:.32rem 0;font-size:.78rem;font-weight:600;display:flex}.os-db-check.is-open{color:#9a3412}.os-db-check-copy{gap:.16rem;min-width:0;display:grid}.os-db-check-detail{color:var(--afm-muted);font-size:.625rem;font-weight:500;line-height:1.35}.os-db-check-icon{flex-shrink:0;justify-content:center;align-items:center;width:1.05rem;height:1.05rem;display:inline-flex}.os-db-check.is-ok .os-db-check-icon{color:#fff;background:#16a34a;border-radius:999px}.os-db-check.is-ok .os-db-check-icon svg{width:9px;height:9px}.os-db-check-open-dot{border:2px solid #ea580c;border-radius:999px;width:.65rem;height:.65rem;display:inline-block}.os-db-check-action{margin-left:auto}.os-db-route-status{color:#64748b;text-transform:capitalize;background:#f1f5f9;border-radius:999px;align-items:center;padding:.18rem .4rem;font-size:.5625rem;font-weight:700;display:inline-flex}.os-db-route-status.is-clear{color:#15803d;background:#f0fdf4}.os-db-route-status.is-tight{color:#b45309;background:#fff7e8}.os-db-route-status.is-late{color:#b91c1c;background:#fef2f2}.os-db-dispatch-btn{border-radius:12px;width:100%;margin-top:.85rem;padding:.75rem 1rem;font-size:.875rem}.os-db-link,.os-db-link-btn{color:#06f;cursor:pointer;background:0 0;border:none;align-items:center;gap:.35rem;padding:0;font-size:.8125rem;font-weight:600;text-decoration:none;display:inline-flex}.os-db-link-btn{border:1px solid var(--afm-border);width:100%;color:var(--afm-ink);background:#fff;border-radius:12px;justify-content:center;margin-top:.65rem;padding:.6rem .9rem;font-size:.78rem;box-shadow:0 1px 2px #0f172a0a}.os-db-link-btn:hover:not(.is-disabled){background:#f8fafc}.os-db-link-btn.is-disabled{color:var(--afm-muted);cursor:default}.os-db-status-dot{background:#16a34a;border-radius:999px;width:.45rem;height:.45rem;display:inline-block}.os-db-inspector-foot,.os-db-publish-status{color:var(--afm-muted);margin-top:.55rem;font-size:.7rem}.os-db-inspector-workspace{margin-top:.55rem;display:inline-block}.os-db-resources-drawer{border:1px solid var(--afm-border);background:#f8fafc;border-radius:10px;margin-top:.65rem;padding:.55rem .65rem}.os-db-resources-inline{margin-top:.55rem}.os-db-resource-list-inline{flex-wrap:wrap;gap:.35rem .75rem;max-height:120px;display:flex}.os-db-resource-list-inline>li{min-width:8rem}.os-db-resources-toggle{color:var(--afm-muted);cursor:pointer;background:0 0;border:none;padding:.2rem 0;font-size:.7rem;font-weight:600}.os-db-resource-tabs{flex-wrap:wrap;gap:.25rem;margin:.35rem 0;display:flex}.os-db-resource-tab{color:var(--afm-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.25rem .4rem;font-size:.68rem;font-weight:600}.os-db-resource-tab.is-active{color:#06f;background:#0066ff1a}.os-db-resource-list{max-height:140px;margin:0;padding:0;list-style:none;overflow:auto}.os-db-resource-row{cursor:grab;border-bottom:1px solid var(--afm-border);justify-content:space-between;align-items:center;gap:.5rem;padding:.4rem 0;font-size:.75rem;display:flex}.os-db-resource-row:active{cursor:grabbing}.os-week-summary{background:#fff;border-bottom:1px solid #eef2f7;flex-shrink:0;grid-template-columns:repeat(4,minmax(0,1fr));padding:.6rem .75rem;display:grid}.os-week-summary>div,.os-week-summary>button{color:#0b132b;background:0 0;border:0;border-right:1px solid #eef2f7;min-width:0;padding:.1rem .85rem}.os-week-summary>:first-child{padding-left:0}.os-week-summary>:last-child{border-right:0}.os-week-summary span,.os-week-summary strong,.os-week-summary small{display:block}.os-week-summary span{color:#64748b;font-size:.625rem;font-weight:600}.os-week-summary strong{font-variant-numeric:tabular-nums;letter-spacing:-.02em;margin-top:.08rem;font-size:1rem;line-height:1.2}.os-week-summary small{color:#8a97ad;text-overflow:ellipsis;white-space:nowrap;margin-top:.08rem;font-size:.58rem;overflow:hidden}.os-week-summary .is-attention strong,.os-week-summary .is-attention small{color:#c2410c}.os-dispatch-resources.os-dispatch-resources-open{background:#fbfcfe;width:172px;display:flex}.os-dispatch-week-controls{border-bottom-color:#eef2f7;gap:.25rem;min-height:2.65rem;padding:.42rem .65rem}.os-dispatch-week-controls .os-dispatch-pill{height:1.85rem;box-shadow:none;border-color:#0000;border-radius:.5rem;padding:.25rem .5rem;font-size:.6875rem}.os-dispatch-week-controls .os-dispatch-pill:hover,.os-dispatch-week-controls .os-dispatch-pill.is-active{color:#06f;background:#eaf3ff;border-color:#0000}.os-dispatch-text-toggle{color:#64748b;background:0 0;border:0;border-radius:.45rem;align-items:center;height:1.75rem;padding:0 .45rem;font-size:.625rem;font-weight:600;transition:background .15s,color .15s;display:inline-flex}.os-dispatch-text-toggle:hover{color:#0b132b;background:#f3f6fa}.os-dispatch-text-toggle.is-active{color:#06f;background:#eaf3ff}.os-dispatch-grid-header{box-shadow:0 1px #eef2f7}.os-dispatch-row-header{z-index:4;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff7;border-color:#eef2f7;justify-content:center;padding:.45rem .55rem;position:sticky;left:0}.os-dispatch-grid-cell,.os-dispatch-grid-cell-alt{background:#fbfcfe;border-color:#eef2f7}.os-dispatch-grid-cell-alt{background:#f8fafc}.os-dispatch-grid-cell-today{background:#f4f8ff}.os-dispatch-job-block{color:#0b132b;background:#fffffff5;border:1px solid #d9e1ec;border-left:2px solid #06f;border-radius:.45rem;min-height:2.5rem;padding:.28rem .35rem;transition:border-color .15s,box-shadow .15s,transform .15s;top:.28rem;box-shadow:0 1px 2px #0f172a0d}.os-dispatch-job-block:hover{z-index:4;border-color:#b8c5d8;transform:translateY(-1px);box-shadow:0 5px 14px #0f172a17}.os-dispatch-job-block-move,.os-dispatch-job-block-install,.os-dispatch-job-block-estimate,.os-dispatch-job-block-entry,.os-dispatch-job-block-off{color:#0b132b;background:#fffffff5}.os-dispatch-job-block-install{border-left-color:#16a34a}.os-dispatch-job-block-estimate{border-left-color:#64748b}.os-dispatch-job-block-entry{border-left-color:#d97706}.os-dispatch-job-block-off{background:#f8fafc;border-left-color:#94a3b8}.os-dispatch-job-block-selected{border-color:#06f;outline:none;box-shadow:0 0 0 2px #0066ff24}.os-dispatch-job-block-kicker{color:#64748b;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:.22rem;font-size:.5rem;font-weight:600;display:flex;overflow:hidden}.os-dispatch-job-status-dot{background:#06f;border-radius:999px;flex-shrink:0;width:5px;height:5px}.os-dispatch-job-status-dot.is-dispatched{background:#0d9488}.os-dispatch-job-status-dot.is-progress{background:#d97706}.os-dispatch-job-status-dot.is-done{background:#16a34a}.os-dispatch-job-block-title{margin-top:.08rem;font-size:.58rem;line-height:1.2}.os-dispatch-job-block-route{color:#64748b;text-overflow:ellipsis;white-space:nowrap;margin-top:.08rem;font-size:.48rem;line-height:1.15;display:block;overflow:hidden}.os-week-unassigned-rail{background:#fff;border-top:1px solid #eef2f7;flex-shrink:0}.os-week-unassigned-trigger{color:#64748b;background:0 0;border:0;justify-content:space-between;align-items:center;width:100%;min-height:2rem;padding:.35rem .75rem;font-size:.625rem;font-weight:600;display:flex}.os-week-unassigned-trigger strong{color:#0b132b;font-variant-numeric:tabular-nums;margin-left:.25rem}.os-week-unassigned-list{gap:.45rem;min-height:3.25rem;padding:.35rem .75rem .65rem;display:flex;overflow-x:auto}.os-week-unassigned-list.is-drop-active{background:#eaf3ff;box-shadow:inset 0 2px #06f}.os-week-unassigned-job{text-align:left;background:#fff;border:1px solid #e3e8f0;border-radius:.55rem;flex-direction:column;min-width:150px;padding:.42rem .55rem;display:flex;box-shadow:0 1px 2px #0f172a0a}.os-week-unassigned-job strong{color:#0b132b;font-size:.625rem}.os-week-unassigned-job span{color:#64748b;margin-top:.1rem;font-size:.55rem}.os-dispatch-toolbar{border-bottom-color:#eef2f7;align-items:flex-end;min-height:2.75rem;padding:0 .2rem}.os-dispatch-tabs{gap:.25rem}.os-dispatch-tab{color:#64748b;border:1px solid #0000;border-radius:999px;padding:.5rem .7rem;font-size:.6875rem;font-weight:600;position:relative}.os-dispatch-tab:hover{color:#0b132b}.os-dispatch-tab-active{color:#0b132b;background:#fff;border-color:#0000}.os-dispatch-tab-active:after{border-radius:inherit;content:"";pointer-events:none;border:1px solid #c3ccda;border-top-color:#8793a7;animation:3s linear infinite os-dispatch-tab-orbit;position:absolute;inset:2px}@keyframes os-dispatch-tab-orbit{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.os-dispatch-tab-active:after{animation:none}}.os-dispatch-toolbar-actions{gap:.35rem;padding-bottom:.35rem}.os-dispatch-view-switch{background:#f3f6fa;border:1px solid #d9e1ec;border-radius:.6rem;align-items:center;gap:.15rem;padding:.15rem;display:inline-flex}.os-dispatch-view-switch button{color:#64748b;background:0 0;border:0;border-radius:.42rem;min-height:1.55rem;padding:.2rem .55rem;font-size:.65rem;font-weight:650;transition:background .15s,color .15s,box-shadow .15s}.os-dispatch-view-switch button.is-active{color:#06f;background:#fff;box-shadow:0 1px 3px #0f172a1a}.os-dispatch-filter-btn,.os-dispatch-primary-btn{border-radius:.5rem;min-height:1.95rem;padding:.35rem .65rem;font-size:.6875rem}.os-dispatch-primary-btn,.os-db-primary-btn,.os-db-dispatch-btn{background:linear-gradient(#1473ff 0%,#06f 58%,#005bdc 100%);box-shadow:inset 0 1px #ffffff4d,0 3px 9px #0066ff2e}.os-dispatch-primary-btn:hover,.os-db-primary-btn:hover,.os-db-dispatch-btn:hover{background:#0052cc}.os-db-root{gap:.65rem}.os-db-header-copy h1{font-size:1.25rem;font-weight:700}.os-db-subtitle{margin-top:.18rem;font-size:.7rem}.os-db-kpi-strip{gap:.55rem}.os-db-kpi-card{border-color:#e3e8f0;border-left-width:1px;border-radius:.75rem;padding:.62rem .75rem;box-shadow:0 1px 2px #1018280a}.os-db-kpi-amber,.os-db-kpi-green,.os-db-kpi-blue,.os-db-kpi-action,.os-db-accent-blue,.os-db-accent-green,.os-db-accent-amber,.os-db-accent-purple{border-left-color:#e3e8f0}.os-db-kpi-label{text-transform:none;letter-spacing:0;font-size:.6rem}.os-db-kpi-value{margin:.08rem 0;font-size:1.28rem}.os-db-kpi-meta{font-size:.625rem}.os-db-board{grid-template-columns:minmax(180px,215px) minmax(0,1fr);gap:.6rem;min-height:500px}.os-db-board.has-inspector{grid-template-columns:minmax(180px,215px) minmax(0,1fr) minmax(245px,280px)}.os-db-unassigned,.os-db-timeline,.os-db-inspector{border-color:#e3e8f0;border-radius:.75rem;padding:.68rem;box-shadow:0 1px 2px #1018280a}.os-db-job-card{box-shadow:none;border-color:#e3e8f0;border-left-width:1px;border-radius:.65rem;padding:.55rem .6rem;transition:background .15s,border-color .15s,transform .15s}.os-db-job-card:hover{background:#fbfcfe;border-color:#cbd5e1;transform:translateY(-1px)}.os-db-timeline-scroll{background:linear-gradient(#eaf3ff52,#0000 5rem),#fbfcfe;border-width:1px 0;border-color:#eef2f7;border-radius:0}.os-db-crew-track{background:linear-gradient(90deg,#0066ff05,#0000 30%),#fbfcfe;min-height:4.75rem}.os-db-tl-block{border-width:1px;border-radius:.55rem;min-height:3.75rem;padding:.38rem .45rem;box-shadow:0 1px 2px #0f172a0d}.os-db-tl-blue{background:#f7faff;border-color:#d9e1ec #d9e1ec #d9e1ec #06f}.os-db-tl-green{background:#f7fcf8;border-color:#d9e1ec #d9e1ec #d9e1ec #16a34a}.os-db-tl-teal{background:#f6fcfb;border-color:#d9e1ec #d9e1ec #d9e1ec #0d9488}.os-db-tl-orange,.os-db-tl-amber{background:#fffbf5;border-color:#d9e1ec #d9e1ec #d9e1ec #d97706}.os-db-tl-slate{background:#f8fafc;border-color:#d9e1ec #d9e1ec #d9e1ec #94a3b8}.os-db-dot-scheduled{background:#06f}.os-db-timeline{background:radial-gradient(circle at 88% -30%,#0066ff1a,#0000 34%),#fff;border-color:#e3e8f0;padding:0;overflow:hidden;box-shadow:0 1px 2px #0f172a0a,0 10px 28px #0f172a0b}.os-db-timeline-head{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffc2;border-bottom:1px solid #e3e8f0d1;min-height:3.8rem;margin:0;padding:.7rem .85rem .62rem}.os-db-timeline-title{align-items:center;gap:.55rem;min-width:11rem;display:flex}.os-db-timeline-title h2{letter-spacing:-.015em;color:#0b132b;margin:0;font-size:.82rem;font-weight:700}.os-db-timeline-title p{color:#64748b;margin:.08rem 0 0;font-size:.59rem;font-weight:500}.os-db-live-mark{background:#16a34a;border:2px solid #fff;border-radius:999px;flex:none;width:.5rem;height:.5rem;box-shadow:0 0 0 3px #16a34a1c,0 0 10px #16a34a47}.os-db-day-mode{color:#334155;background:#ffffffd6;border:1px solid #d9e1ece6;border-radius:999px;align-items:center;gap:.35rem;min-height:1.75rem;padding:0 .55rem;font-size:.62rem;font-weight:650;display:inline-flex;box-shadow:inset 0 1px #ffffffbf}.os-db-day-mode-dot{background:#06f;border-radius:999px;width:.28rem;height:.28rem;box-shadow:0 0 0 3px #0066ff17}.os-db-day-summary{color:#64748b;white-space:nowrap;align-items:center;gap:0;min-height:2.2rem;padding:0 .85rem;font-size:.61rem;display:flex;overflow-x:auto}.os-db-day-summary>span{align-items:baseline;gap:.25rem;padding-right:.75rem;display:inline-flex}.os-db-day-summary>span+span{border-left:1px solid #eef2f7;padding-left:.75rem}.os-db-day-summary strong{color:#0b132b;font-variant-numeric:tabular-nums;font-size:.72rem}.os-db-day-summary .has-attention,.os-db-day-summary .has-attention strong{color:#b45309}.os-db-grid-header{z-index:4;position:sticky;top:0;box-shadow:0 1px #e3e8f0c7}.os-db-grid-corner,.os-db-hours{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff0}.os-db-hour{font-variant-numeric:tabular-nums;border-right-color:#eef2f7;padding-block:.52rem;font-size:.61rem}.os-db-crew-row{border-bottom-color:#e3e8f0}.os-db-crew-meta{background:#ffffffeb;border-right-color:#eef2f7;justify-content:center}.os-db-crew-id{color:#06f;background:linear-gradient(145deg,#f4f8ff,#e6f0ff);box-shadow:inset 0 1px #ffffffe6,0 1px 3px #0066ff1a}.os-db-crew-name{letter-spacing:-.01em}.os-db-hour-line{border-right-color:#cbd5e16b}.os-db-open-hint{color:#748197;padding-left:1.05rem;font-size:.6rem;font-weight:500;top:50%;left:.7rem;transform:translateY(-50%)}.os-db-open-hint:before{content:"";background:#a9b5c5;width:.7rem;height:1px;position:absolute;top:50%;left:0}.os-db-now-line{background:#ef4444;width:1px;box-shadow:0 0 8px #ef444447}.os-db-now-badge{border:2px solid #fff;box-shadow:0 2px 7px #ef444438}.os-db-timeline-foot{background:linear-gradient(#fff,#fbfcfe);border-top:0;min-height:2.7rem;padding:.58rem .85rem}.os-dispatch-resource-rail{background:#fff;border:1px solid #e3e8f0;border-radius:.75rem;min-width:0;min-height:0;transition:border-color .15s,box-shadow .15s;overflow:visible;box-shadow:0 1px 2px #1018280a}.os-dispatch-resource-rail.is-drop-active{border-color:#06f;box-shadow:0 0 0 3px #0066ff14}.os-dispatch-resource-rail-head{border-bottom:1px solid #eef2f7;justify-content:space-between;align-items:center;gap:.35rem;min-height:2.7rem;padding:.45rem .5rem 0;display:flex}.os-dispatch-resource-tabs{align-self:stretch;gap:.1rem;min-width:0;display:flex}.os-dispatch-resource-tabs button{color:#64748b;white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;padding:.45rem .38rem .38rem;font-size:.59rem;font-weight:650}.os-dispatch-resource-tabs button.is-active{color:#06f;border-bottom-color:#06f}.os-dispatch-add-worker,.os-dispatch-resource-assign{color:#06f;background:0 0;border:0;border-radius:.4rem;font-size:.6rem;font-weight:650}.os-dispatch-add-worker:hover,.os-dispatch-resource-assign:hover{background:#eaf3ff}.os-dispatch-resource-content{max-height:34rem;padding:.55rem;overflow-y:auto}.os-dispatch-resource-empty{text-align:center;color:#64748b;margin:0;padding:1.5rem .5rem;font-size:.67rem}.os-dispatch-resource-job{position:relative}.os-dispatch-resource-job>.relative{justify-content:flex-end;margin-top:.15rem;display:flex}.os-dispatch-resource-person{cursor:grab;background:#fff;border:1px solid #eef2f7;border-radius:.65rem;align-items:center;gap:.5rem;min-height:2.6rem;padding:.42rem .48rem;transition:background .15s,border-color .15s,transform .15s;display:flex}.os-dispatch-resource-person:hover{background:#fbfcfe;border-color:#d9e1ec;transform:translateY(-1px)}.os-dispatch-resource-person:active{cursor:grabbing}.os-dispatch-resource-person.is-rail-drop{background:#eaf3ff;border-color:#06f;box-shadow:inset 0 0 0 1px #0066ff40}.os-dispatch-resource-person strong,.os-dispatch-resource-person small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.os-dispatch-resource-person strong{color:#0b132b;font-size:.67rem;font-weight:650}.os-dispatch-resource-person small{color:#64748b;text-transform:capitalize;margin-top:.08rem;font-size:.56rem}.os-dispatch-resource-avatar{color:#06f;background:#eaf3ff;border-radius:999px;flex:none;justify-content:center;align-items:center;width:1.6rem;height:1.6rem;font-size:.62rem;font-weight:750;display:inline-flex}.os-dispatch-resource-avatar.is-truck{border-radius:.5rem}.os-worker-modal-backdrop{z-index:140;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0b132b47;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.os-worker-modal{background:#fff;border:1px solid #e3e8f0;border-radius:1rem;width:min(31rem,100%);padding:1.1rem;box-shadow:0 24px 70px #0f172a33}.os-worker-modal>header,.os-worker-modal>footer{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.os-worker-modal>header h2{color:#0b132b;margin:0;font-size:1rem;font-weight:700}.os-worker-modal>header p,.os-worker-mode-hint{color:#64748b;margin:.18rem 0 0;font-size:.67rem}.os-worker-modal>header>button{color:#64748b;background:0 0;border:0;border-radius:999px;place-items:center;width:2rem;height:2rem;font-size:1.2rem;display:inline-grid}.os-worker-mode-tabs{border-bottom:1px solid #eef2f7;grid-template-columns:repeat(3,1fr);gap:.2rem;margin-top:1rem;display:grid}.os-worker-mode-tabs button{color:#64748b;background:0 0;border:0;border-bottom:2px solid #0000;padding:.55rem .35rem;font-size:.68rem;font-weight:650}.os-worker-mode-tabs button.is-active{color:#06f;border-bottom-color:#06f}.os-worker-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-top:.9rem;display:grid}.os-worker-form-grid label{color:#64748b;font-size:.6rem;font-weight:650}.os-worker-form-grid label>input,.os-worker-money-input{color:#0b132b;background:#fff;border:1px solid #e3e8f0;border-radius:.55rem;outline:none;width:100%;min-height:2.35rem;margin-top:.3rem;font-size:.75rem}.os-worker-form-grid label>input{padding:0 .65rem}.os-worker-form-grid label>input:focus,.os-worker-money-input:focus-within{border-color:#06f;box-shadow:0 0 0 3px #0066ff14}.os-worker-role-choices{gap:.15rem;margin-top:.3rem;display:flex}.os-worker-role-choices button{color:#64748b;text-transform:capitalize;background:#fff;border:1px solid #e3e8f0;flex:1;min-height:2.35rem;font-size:.62rem}.os-worker-role-choices button:first-child{border-radius:.55rem 0 0 .55rem}.os-worker-role-choices button:last-child{border-radius:0 .55rem .55rem 0}.os-worker-role-choices button.is-active{color:#06f;background:#eaf3ff;border-color:#06f}.os-worker-money-input{align-items:center;padding:0 .65rem;display:flex}.os-worker-money-input input{background:0 0;border:0;outline:none;flex:1;min-width:0;padding-left:.25rem}.os-worker-modal-error{color:#dc2626;margin:.75rem 0 0;font-size:.68rem}.os-worker-modal>footer{border-top:1px solid #eef2f7;justify-content:flex-end;margin-top:1rem;padding-top:.85rem}@media (max-width:640px){.os-worker-form-grid{grid-template-columns:1fr}.os-worker-form-grid .col-span-2{grid-column:auto}}.os-db-release-hint,.os-db-add-crew,.os-db-foot-link{color:#06f}.os-db-inspector-wrap{min-width:0;position:relative}.os-db-inspector-wrap>.os-db-inspector{height:100%}.os-db-inspector-close{z-index:5;color:#64748b;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;width:1.65rem;height:1.65rem;font-size:1rem;line-height:1;display:inline-flex;position:absolute;top:.42rem;right:.42rem}.os-db-inspector-close:hover{color:#0b132b;background:#f3f6fa}@media (max-width:1100px){.os-db-kpi-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.os-db-board,.os-db-board.has-inspector{grid-template-columns:1fr}.os-week-summary{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:.55rem}.os-week-summary>:nth-child(2){border-right:0}}@media (max-width:1279px){[data-device=desktop] body:has(.os-dispatch-root){overflow-x:hidden}[data-device=desktop] body:has(.os-dispatch-root) .os-app-shell-desktop{min-width:0}}@media print{.os-db-toolbar,.os-db-resources-drawer,.os-dispatch-toolbar{display:none!important}}.dbv-scope{background:#f8fafc;border:1px solid #e3e8f0;border-radius:.55rem;align-items:center;gap:.15rem;padding:.15rem;display:inline-flex}.dbv-scope-btn{color:#64748b;cursor:pointer;background:0 0;border:0;border-radius:.4rem;min-height:1.65rem;padding:0 .55rem;font-size:.65rem;font-weight:650;transition:background .15s,color .15s}.dbv-scope-btn:hover{color:#0b132b;background:#f3f6fa}.dbv-scope-btn.is-active{color:#06f;background:#e8f1ff}.dbv-week-strip{background:#fbfcfe;border-bottom:1px solid #eef2f7;grid-template-columns:repeat(7,minmax(0,1fr));gap:.35rem;padding:.5rem .75rem;display:grid}.dbv-week-day{text-align:left;cursor:pointer;background:#fff;border:1px solid #e3e8f0;border-radius:.55rem;flex-direction:column;align-items:flex-start;gap:.1rem;min-height:3.1rem;padding:.35rem .45rem;transition:border-color .15s,box-shadow .15s;display:flex}.dbv-week-day:hover{border-color:#c3ccda}.dbv-week-day.is-active{background:#f7faff;border-color:#06f;box-shadow:0 0 0 2px #0066ff1f}.dbv-week-day-dow{color:#64748b;letter-spacing:.04em;text-transform:uppercase;font-size:.58rem;font-weight:700}.dbv-week-day-num{color:#0b132b;font-variant-numeric:tabular-nums;font-size:.85rem;font-weight:700;line-height:1.1}.dbv-week-day-count{color:#64748b;font-size:.58rem;font-weight:600}.dbv-frame{background:#fbfcfe;border-top:1px solid #eef2f7;flex-direction:column;flex:1;min-height:280px;display:flex;position:relative}.dbv-scroll{overscroll-behavior:contain;scrollbar-width:none;flex:1;min-height:0;overflow:auto}.dbv-scroll::-webkit-scrollbar{display:none}.dbv-content{min-width:100%;position:relative}.dbv-now-line{z-index:12;pointer-events:none;background:#ef4444;width:2px;position:absolute;top:0;bottom:0;box-shadow:0 0 8px #ef444447}.dbv-now-badge{color:#fff;white-space:nowrap;background:#ef4444;border:2px solid #fff;border-radius:999px;padding:.1rem .35rem;font-size:.6rem;font-weight:700;position:absolute;top:.2rem;left:50%;transform:translate(-50%);box-shadow:0 2px 7px #ef444438}html[data-afm-dispatch-dragging],html[data-afm-dispatch-dragging] body{overscroll-behavior:none!important;touch-action:none!important;overflow:hidden!important}html[data-afm-dispatch-dragging] .dbv-scroll,html[data-afm-dispatch-dragging] .overflow-auto,html[data-afm-dispatch-dragging] .overflow-y-auto,html[data-afm-dispatch-dragging] .overflow-x-auto{touch-action:none!important;overscroll-behavior:none!important;overflow:hidden!important}.dbv-grid-header{z-index:5;background:#fffffff5;border-bottom:1px solid #e3e8f0;display:flex;position:sticky;top:0;box-shadow:0 1px #e3e8f0b3}.dbv-corner{z-index:6;color:#64748b;letter-spacing:.06em;text-transform:uppercase;cursor:ns-resize;-webkit-user-select:none;user-select:none;touch-action:none;background:#fff;border-right:1px solid #e3e8f0;flex-shrink:0;align-items:center;padding:0 .65rem;font-size:.58rem;font-weight:700;display:flex;position:sticky;left:0}.dbv-hours{cursor:ew-resize;-webkit-user-select:none;user-select:none;touch-action:none;flex-shrink:0;display:flex}.dbv-hour{color:#64748b;text-align:center;border-right:1px solid #eef2f7;flex-shrink:0;padding:.45rem .1rem;font-size:.65rem;font-weight:650}.dbv-row{min-height:var(--dbv-lane-height,88px);border-bottom:1px solid #e3e8f0;display:flex}.dbv-row.is-drop{background:#eaf3ff}.dbv-row.is-dragging,.os-db-crew-row.is-dragging{opacity:.42;background:#f3f6fa}.dbv-row.is-dragging .dbv-lane,.dbv-row.is-dragging .dbv-track,.os-db-crew-row.is-dragging .os-db-crew-meta,.os-db-crew-row.is-dragging .os-db-crew-track{filter:grayscale(.15)}.dbv-row.is-reorder-before,.os-db-crew-row.is-reorder-before,.dbv-row.is-reorder-after,.os-db-crew-row.is-reorder-after{background:#eaf3ff}.dbv-row.is-reorder-before:before,.os-db-crew-row.is-reorder-before:before,.dbv-row.is-reorder-after:after,.os-db-crew-row.is-reorder-after:after{content:"";z-index:8;pointer-events:none;background:#06f;border-radius:999px;height:4px;position:absolute;left:6px;right:6px;box-shadow:0 0 0 3px #0066ff2e}.dbv-row.is-reorder-before:before,.os-db-crew-row.is-reorder-before:before{top:-2px}.dbv-row.is-reorder-after:after,.os-db-crew-row.is-reorder-after:after{bottom:-2px}.dbv-row-drag-ghost{opacity:.96;background:#fff;border:1px solid #06f;border-radius:.75rem;overflow:hidden;box-shadow:0 1px 2px #0f172a0f,0 12px 28px #0f172a29;display:flex!important}.dbv-row-drag-ghost .os-db-lane-resize,.dbv-row-drag-ghost [role=separator]{display:none!important}.dbv-lane{z-index:20;min-height:var(--dbv-lane-height,88px);cursor:grab;-webkit-user-select:none;user-select:none;background:#fff;border-right:1px solid #e3e8f0;flex-shrink:0;gap:.4rem;padding:.5rem;display:flex;position:sticky;left:0}.dbv-lane:active{cursor:grabbing}.dbv-track{z-index:1;width:var(--dbv-track-width,720px);min-height:var(--dbv-lane-height,88px);background:linear-gradient(90deg,#0066ff05,#0000 30%),#fafbfc;flex-shrink:0;position:relative}.dbv-hour-lines{pointer-events:none;display:flex;position:absolute;inset:0}.dbv-hour-line{border-left:1px solid #eef2f7;flex-shrink:0;height:100%}.dbv-scrollbar{z-index:8;background:#f1f5f9eb;border:1px solid #e3e8f0;position:absolute}.dbv-scrollbar-x{pointer-events:auto;border-radius:999px;height:14px;bottom:2px;left:8px;right:16px}.dbv-scrollbar-y{pointer-events:auto;border-radius:999px;width:14px;top:8px;bottom:20px;right:2px}.dbv-scrollbar-thumb{cursor:grab;touch-action:none;background:#c3ccda;border-radius:999px;transition:background .12s;position:absolute;box-shadow:inset 0 0 0 1px #0f172a0a}.dbv-scrollbar-x .dbv-scrollbar-thumb{min-width:36px;top:2px;bottom:2px}.dbv-scrollbar-y .dbv-scrollbar-thumb{min-height:36px;left:2px;right:2px}.dbv-scrollbar-thumb:hover,.dbv-scrollbar-thumb:active{cursor:grabbing;background:#94a3b8}.dbv-scrollbar-thumb.is-stretching{cursor:grabbing;background:#86efac;box-shadow:inset 0 0 0 1px #16a34a59}.dbv-scrollbar-thumb.is-stretching .dbv-scrollbar-edge:after{background:#16a34a}.dbv-scrollbar-stretch{z-index:2;pointer-events:none;background:#16a34a73;border-radius:999px;position:absolute;box-shadow:0 0 0 1px #16a34a59}.dbv-scrollbar-x .dbv-scrollbar-stretch{top:0;bottom:0}.dbv-scrollbar-y .dbv-scrollbar-stretch{left:0;right:0}.dbv-scrollbar-edge{z-index:1;background:0 0;position:absolute}.dbv-scrollbar-x .dbv-scrollbar-edge-start,.dbv-scrollbar-x .dbv-scrollbar-edge-end{cursor:ew-resize;width:14px;top:-2px;bottom:-2px}.dbv-scrollbar-x .dbv-scrollbar-edge-start{left:-2px}.dbv-scrollbar-x .dbv-scrollbar-edge-end{right:-2px}.dbv-scrollbar-x .dbv-scrollbar-edge-start:after,.dbv-scrollbar-x .dbv-scrollbar-edge-end:after{content:"";background:#0f172a38;border-radius:999px;width:3px;position:absolute;top:3px;bottom:3px}.dbv-scrollbar-x .dbv-scrollbar-edge-start:after{left:4px}.dbv-scrollbar-x .dbv-scrollbar-edge-end:after{right:4px}.dbv-scrollbar-y .dbv-scrollbar-edge-start,.dbv-scrollbar-y .dbv-scrollbar-edge-end{cursor:ns-resize;height:14px;left:-2px;right:-2px}.dbv-scrollbar-y .dbv-scrollbar-edge-start{top:-2px}.dbv-scrollbar-y .dbv-scrollbar-edge-end{bottom:-2px}.dbv-scrollbar-y .dbv-scrollbar-edge-start:after,.dbv-scrollbar-y .dbv-scrollbar-edge-end:after{content:"";background:#0f172a38;border-radius:999px;height:3px;position:absolute;left:3px;right:3px}.dbv-scrollbar-y .dbv-scrollbar-edge-start:after{top:4px}.dbv-scrollbar-y .dbv-scrollbar-edge-end:after{bottom:4px}.dbv-zoom-readout{z-index:7;color:#64748b;pointer-events:none;background:#ffffffeb;border:1px solid #e3e8f0;border-radius:.4rem;gap:.65rem;padding:.2rem .45rem;font-size:.58rem;font-weight:600;display:inline-flex;position:absolute;bottom:16px;right:18px}.dbv-zoom-readout strong{color:#0b132b;font-variant-numeric:tabular-nums}.dbv-board-toolbar{border-bottom:1px solid #eef2f7;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;padding:.5rem .75rem;display:flex}
