:root{--color-bg: #E8E5DE;--color-header-start: #0D1B2A;--color-header-end: #1B2D45;--color-header-shadow: rgba(0,0,0,.3);--color-white: #fff;--color-stat-active: #1B5E20;--color-stat-jobs: #0D47A1;--color-stat-regular-bg: #F9A825;--color-stat-regular-text: #333;--color-stat-unassigned: #B71C1C;--color-stat-walk: #E65100;--color-stat-inactive: #424242;--color-carrier-row-bg: #F5F3ED;--color-row-label-bg: #263238;--color-carrier-col-border: #B0BEC5;--color-carrier-num: #1A237E;--color-panel-unassigned-bg: #FFF5F5;--color-panel-unassigned-border: #D32F2F;--color-panel-walk-bg: #FFF8E1;--color-panel-walk-border: #E65100;--color-panel-inactive-bg: #ECEFF1;--color-panel-inactive-border: #546E7A;--color-search-hit: #FFD600;--color-drop-toast-bg: #1B5E20;--color-legend-bar-bg: #263238;--header-height: 48px;--font-family: "M PLUS 1", sans-serif}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100vh;overflow:hidden;font-family:"M PLUS 1",sans-serif;background:#e8e5de}.main-grid{display:grid;grid-template-columns:140px 1fr 120px;grid-template-rows:1fr 1fr;height:calc(100vh - 48px);gap:2px;transition:grid-template-columns .3s ease}.main-grid.list-mode{grid-template-columns:400px 1fr 120px;transition:grid-template-columns .3s ease}.main-grid.list-mode .panel-unassigned{min-width:400px}.main-grid.search-mode{grid-template-columns:30vw 1fr 120px;transition:grid-template-columns .3s ease}.main-grid.search-mode .panel-unassigned{min-width:30vw}@media(max-width:1400px){.carrier-col{min-width:72px}.carrier-num{font-size:14px}.magnet{font-size:9px}.main-grid.list-mode{grid-template-columns:320px 1fr 120px}}.main-header{height:48px;background:linear-gradient(135deg,#0d1b2a,#1b2d45);display:flex;align-items:center;padding:0 12px;gap:16px;color:#fff;box-shadow:0 2px 8px #0000004d;z-index:100}.header-date-nav{display:flex;align-items:center;gap:4px}.header-date{font-size:20px;font-weight:800;letter-spacing:1px;cursor:pointer;padding:2px 8px;border-radius:6px;transition:background .2s;-webkit-user-select:none;user-select:none}.header-date:hover{background:#ffffff26}.date-nav-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;font-size:14px;width:28px;height:28px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s;font-family:inherit}.date-nav-btn:hover{background:#ffffff40}.date-nav-btn:active{background:#ffffff59}.date-today-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;font-size:10px;font-weight:700;padding:4px 8px;border-radius:6px;cursor:pointer;transition:background .2s;font-family:inherit;margin-left:4px}.date-today-btn:hover{background:#ffffff40}.date-picker-hidden{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.header-title{font-size:14px;opacity:.8}.header-stats{display:flex;gap:12px;margin-left:auto}.stat-box{display:flex;align-items:center;gap:4px;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:700}.stat-active{background:#1b5e20}.stat-jobs{background:#0d47a1}.stat-inactive{background:#424242}.header-nav{display:flex;gap:6px;margin-left:4px}.header-nav-link{display:flex;align-items:center;gap:3px;padding:4px 10px;border-radius:6px;font-size:11px;font-weight:600;color:#fff;text-decoration:none;background:#ffffff1a;border:1px solid rgba(255,255,255,.15);transition:background .2s;white-space:nowrap}.header-nav-link:hover{background:#ffffff40}.color-legend{display:flex;gap:10px;align-items:center}.cl-group{display:flex;align-items:center;gap:3px}.cl-label{font-size:9px;opacity:.5;margin-right:2px}.cl-chip{font-size:9px;font-weight:700;padding:1px 5px;border-radius:3px;border:1px solid rgba(0,0,0,.1)}.cl-chip.cl-text{background:#ffffffe6}.carrier-row{display:flex;overflow-x:auto;overflow-y:hidden;background:#f5f3ed;scrollbar-width:thin}.carrier-row::-webkit-scrollbar{height:8px}.carrier-row::-webkit-scrollbar-thumb{background:#90a4ae;border-radius:4px}.carrier-row::-webkit-scrollbar-track{background:#cfd8dc}.row-label{writing-mode:vertical-rl;text-orientation:mixed;background:#263238;color:#fff;font-size:11px;font-weight:700;padding:8px 3px;display:flex;align-items:center;justify-content:center;min-width:20px;letter-spacing:2px}.carrier-col{min-width:90px;max-width:140px;flex:1;border-right:1px solid #B0BEC5;display:flex;flex-direction:column;background:#fff}.carrier-col:last-child{border-right:none}.carrier-col.carrier-idle{background:#fafafa}.carrier-col.carrier-idle .carrier-header{background:#e8f5e9!important;border-bottom-color:#4caf50!important}.carrier-col.carrier-idle .carrier-num:after{content:" 空車";font-size:8px;color:#4caf50;font-weight:600}.carrier-header{background:var(--type-bg);border-bottom:2px solid var(--type-color);padding:1px 4px;position:relative;height:64px;min-height:64px;max-height:64px;display:flex;flex-direction:column;justify-content:center;gap:0}.header-line1,.header-line2{display:flex;justify-content:center;align-items:center;min-height:13px;line-height:1.2}.header-line3{display:flex;justify-content:center;align-items:center;gap:3px;line-height:1.2}.header-line4{display:flex;justify-content:space-between;align-items:center;min-height:14px;line-height:1.2}.carrier-num{font-size:16px;font-weight:900;color:#1a237e;line-height:1.1}.carrier-driver{font-size:10px;font-weight:600;color:#333;cursor:pointer;text-decoration:underline dotted;text-decoration-color:#999;max-width:54px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center;flex-shrink:1}.carrier-driver:hover{color:#1565c0;text-decoration:underline solid}.count-badge{font-size:9px;background:#e0e0e0;color:#555;padding:0 4px;border-radius:3px;font-weight:600;flex-shrink:0}.location-pin{display:flex;align-items:center;gap:1px;flex-shrink:0}.current-location{font-size:8px;font-weight:700;color:#666}.map-link{font-size:11px;text-decoration:none;cursor:pointer;padding:0 1px;border-radius:3px;transition:transform .15s;display:inline-block}.map-link:hover{transform:scale(1.3);background:#3b82f626}.type-badge{font-size:9px;color:#fff;padding:1px 4px;border-radius:3px;margin-left:3px;vertical-align:middle;font-weight:700}.depart{font-size:10px;font-weight:800;color:#d32f2f;line-height:14px}.est-arrival{font-size:9px;font-weight:700;color:#1565c0;margin-left:2px}.badge-overnight{font-size:8px;background:#ff6f00;color:#fff;padding:0 3px;border-radius:3px;font-weight:700;animation:pulse 2s infinite}.badge-overnight-btn{font-size:8px;background:#ffffff26;color:#fff6;padding:0 3px;border-radius:3px;font-weight:700;cursor:pointer;border:1px solid rgba(255,255,255,.2);transition:all .2s;-webkit-user-select:none;user-select:none}.badge-overnight-btn:hover{background:#ff6f0066;color:#fffc;border-color:#ff6f00}.badge-overnight-btn.is-overnight{background:#ff6f00;color:#fff;border-color:#ff6f00;animation:pulse 2s infinite}.badge-overnight-arrival{font-size:8px;background:#1565c0;color:#fff;padding:0 3px;border-radius:3px;font-weight:700;animation:pulse 2s infinite}.jobs-list{flex:1;overflow-y:auto;padding:2px;scrollbar-width:thin}.jobs-list::-webkit-scrollbar{width:4px}.jobs-list::-webkit-scrollbar-thumb{background:#b0bec5;border-radius:2px}.jobs-zone{position:relative;min-height:40px;padding:2px 2px 4px;border-radius:4px;margin:2px 0}.jobs-upper-zone{background:#3b82f60a;border:1px dashed rgba(59,130,246,.3)}.jobs-lower-zone{background:#f59e0b0a;border:1px dashed rgba(245,158,11,.3)}.zone-label{font-size:9px;font-weight:700;text-align:center;padding:1px 0;letter-spacing:.5px}.zone-upper-label{color:#3b82f6}.zone-lower-label{color:#f59e0b}.zone-overflow-label{color:#dc2626}.jobs-overflow-zone{background:#dc26260f;border:2px solid #DC2626;border-radius:4px}.jobs-overflow-zone .magnet{border:2px solid #DC2626!important}.slot-empty{min-height:42px;margin-bottom:1px;border-radius:3px;border:2px dashed}.slot-empty-upper{border-color:#64b5f6;background:#3b82f614}.slot-empty-lower{border-color:#ffb74d;background:#f59e0b14}.magnet{position:relative;padding:2px 4px;margin-bottom:1px;border-radius:3px;font-size:10px;font-weight:600;line-height:1.3;cursor:grab;transition:transform .1s,box-shadow .1s;border:1px solid transparent;overflow:hidden}.mag-line1{display:flex;align-items:center;gap:2px;white-space:nowrap;overflow:hidden}.mag-car{flex:1;font-size:9px;font-weight:600;color:#000c;overflow:hidden;text-overflow:ellipsis}.mag-line2,.mag-line3{font-size:9px;font-weight:600;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rc-same .mag-line2,.rc-same .mag-line3{color:#333!important}.rc-shikoku .mag-line2,.rc-shikoku .mag-line3{color:#2563eb!important}.rc-cross .mag-line2,.rc-cross .mag-line3{color:#ea580c!important}.rc-return .mag-line2,.rc-return .mag-line3{color:#16a34a!important}.rc-outside .mag-line2,.rc-outside .mag-line3{color:#7c3aed!important}.rc-same .ua-route{color:#333!important}.rc-shikoku .ua-route{color:#2563eb!important}.rc-cross .ua-route{color:#ea580c!important}.rc-return .ua-route{color:#16a34a!important}.rc-outside .ua-route{color:#7c3aed!important}.rc-same .ua-vehicle{color:#3339!important}.rc-shikoku .ua-vehicle{color:#2563eb99!important}.rc-cross .ua-vehicle{color:#ea580c99!important}.rc-return .ua-vehicle{color:#16a34a99!important}.rc-outside .ua-vehicle{color:#7c3aed99!important}.magnet .pos-num{display:inline-block;font-size:8px;font-weight:900;color:#fff;background:#00000059;border-radius:2px;padding:0 3px;min-width:13px;text-align:center;line-height:13px;flex-shrink:0}.mag-line1 .deadline-badge{position:static;flex-shrink:0;margin-left:auto}.magnet:hover{transform:scale(1.05);box-shadow:0 2px 6px #0003;z-index:10;position:relative;overflow:visible}.mag-icons{position:absolute;top:0;right:1px;font-size:7px;line-height:1;letter-spacing:-1px;pointer-events:none;z-index:2;text-shadow:0 0 2px rgba(255,255,255,.9)}.insert-line{height:3px;background:#1565c0;border-radius:2px;margin:0 2px;box-shadow:0 0 6px #1565c099;animation:insertPulse .8s ease infinite;pointer-events:none}.carrier-col.reorder-active .jobs-list{outline:2px dashed #FF6F00;outline-offset:-2px;background:#fff3e04d}body.tap-mode .magnet.reorder-target-item{border-color:#ff6f00!important;cursor:pointer}body.tap-mode .magnet.reorder-target-item:after{content:"▲ ここに挿入";position:absolute;right:2px;top:50%;transform:translateY(-50%);font-size:7px;color:#e65100;font-weight:700;pointer-events:none;opacity:.8}.driver-select-dialog{background:#fff;border-radius:8px;padding:16px;min-width:240px;max-width:320px;box-shadow:0 8px 32px #0000004d}.driver-filter-input{width:100%;padding:6px 10px;border:1px solid #ccc;border-radius:4px;font-size:13px;margin-bottom:8px;box-sizing:border-box}.driver-filter-input:focus{outline:none;border-color:#1565c0;box-shadow:0 0 0 2px #1565c033}.driver-select-list{max-height:300px;overflow-y:auto;margin:0}.driver-select-item{padding:8px 12px;cursor:pointer;border-radius:4px;font-size:13px;transition:background .1s}.driver-select-item:hover{background:#e3f2fd}.driver-select-item.current{background:#bbdefb;font-weight:700}.panel-unassigned{grid-row:1 / 3;background:#fff5f5;border-right:3px solid #D32F2F;display:flex;flex-direction:column;overflow:hidden}.panel-title{padding:4px;font-size:13px;font-weight:800;text-align:center;color:#fff;letter-spacing:1px;display:flex;align-items:center;justify-content:center;gap:2px;flex-wrap:wrap;min-height:28px}.panel-title-text{white-space:nowrap;font-size:inherit}.panel-title-red{background:#c62828}.panel-title-amber{background:#e65100}.panel-title-gray{background:#37474f}.panel-content{flex:1;overflow-y:auto;padding:4px}.panel-content{display:block}.unassigned-magnet{background:#ffcdd2;border-color:#e57373!important}.panel-walk{grid-column:3;grid-row:1;background:#fff8e1;border-left:3px solid #E65100;display:flex;flex-direction:column;overflow:hidden}.panel-inactive{grid-column:3;grid-row:2;background:#eceff1;border-left:3px solid #546E7A;display:flex;flex-direction:column;overflow:hidden}.walk-item.magnet{background:#fff3e0!important;border-color:#ffb74d!important}.walk-item:active{cursor:grabbing}.walk-item.dragging{opacity:.4}.walk-item.tap-selected{outline:2px solid #E65100;outline-offset:-1px}.panel-walk.walk-drop-hover{background:#ffe082;outline:2px dashed #E65100;outline-offset:-2px}.panel-walk.drag-source{opacity:.6}.walk-return-label{font-size:8px;font-weight:700;padding:1px 3px;margin-top:1px;border-radius:2px;background:#e8f5e9;color:#2e7d32;cursor:pointer;text-align:center;line-height:1.3}.walk-return-label:hover{background:#c8e6c9}.walk-return-unset{background:#fff3e0;color:#bf360c;opacity:.7}.walk-return-unset:hover{background:#ffe0b2;opacity:1}.walk-return-popup{position:fixed;z-index:1000;background:#fff;border:1px solid #ccc;border-radius:4px;box-shadow:0 2px 8px #00000040;padding:2px;display:flex;flex-direction:column;gap:1px;min-width:80px}.walk-return-option{display:block;width:100%;padding:4px 6px;font-size:10px;font-weight:600;font-family:inherit;border:none;background:transparent;text-align:left;cursor:pointer;border-radius:3px;white-space:nowrap}.walk-return-option:hover{background:#e3f2fd}.walk-return-option.active{background:#c8e6c9;color:#1b5e20}.inactive-item{display:flex;align-items:center;gap:3px;padding:3px 5px;margin-bottom:2px;border-radius:3px;background:#cfd8dc;font-size:10px}.inactive-num{font-weight:800;font-size:12px;color:#37474f;min-width:20px}.inactive-driver{font-size:10px;color:#546e7a;flex:1}.inactive-status{font-size:9px;font-weight:700;padding:1px 4px;border-radius:3px;color:#fff;background:var(--st-color);cursor:pointer}.inactive-status:hover{filter:brightness(1.15);outline:1px solid rgba(0,0,0,.3)}.inactive-status-popup{position:fixed;z-index:1000;background:#fff;border:1px solid #ccc;border-radius:6px;box-shadow:0 4px 12px #00000040;padding:3px;display:flex;flex-direction:column;gap:2px;min-width:85px}.inactive-status-option{display:block;width:100%;padding:4px 8px;font-size:11px;font-weight:600;border:none;border-radius:4px;background:#fff;color:#333;cursor:pointer;text-align:left;white-space:nowrap}.inactive-status-option:hover{background:#f0f0f0}.inactive-status-option.active{background:var(--opt-color, #4CAF50);color:#fff}.ua-category-section{margin-bottom:2px}.ua-category-header{display:flex;align-items:center;justify-content:space-between;padding:3px 6px;margin:2px 0 1px;border-radius:3px;font-size:10px;font-weight:700;cursor:pointer;-webkit-user-select:none;user-select:none;transition:opacity .15s}.ua-category-header:hover{opacity:.85}.ua-category-header .ua-cat-count{font-size:9px;font-weight:600;opacity:.8;background:#ffffff80;padding:0 4px;border-radius:8px}.ua-category-header .ua-cat-chevron{font-size:8px;transition:transform .2s}.ua-category-header.collapsed .ua-cat-chevron{transform:rotate(-90deg)}.ua-category-section.collapsed .ua-cat-items{display:none}.ua-cat-items{min-height:2px}.ua-cat-empty{font-size:9px;color:#999;text-align:center;padding:3px;font-style:italic}.view-toggle{display:inline-flex;gap:0;margin-left:4px;vertical-align:middle;flex-shrink:0}.view-toggle button{border:1px solid rgba(255,255,255,.4);background:#ffffff26;color:#ffffffb3;font-size:10px;font-weight:700;padding:1px 6px;cursor:pointer;font-family:inherit;line-height:1.4;transition:all .15s}.view-toggle button:first-child{border-radius:3px 0 0 3px}.view-toggle button:last-child{border-radius:0 3px 3px 0}.view-toggle button.active{background:#ffffffe6;color:#c62828;border-color:#ffffffe6}.view-toggle button:hover:not(.active){background:#ffffff4d}.list-view-container{display:none;flex:1;overflow-y:auto;padding:4px}.main-grid.list-mode .list-view-container{display:block}.main-grid.list-mode .panel-unassigned>.panel-content{display:none}.list-view-table{width:100%;border-collapse:collapse;font-size:11px}.list-view-table thead th{position:sticky;top:0;background:#d32f2f;color:#fff;font-size:10px;font-weight:700;padding:4px 6px;text-align:left;white-space:nowrap;z-index:2}.list-view-table thead th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .1s}.list-view-table thead th.sortable:hover{background:#b71c1c}.list-view-table thead th.sort-asc:after{content:" ▲";font-size:7px}.list-view-table thead th.sort-desc:after{content:" ▼";font-size:7px}.list-view-table tbody tr{cursor:grab;transition:background .1s}.list-view-table tbody tr:nth-child(2n){background:#fff0f0}.list-view-table tbody tr:nth-child(odd){background:#fff}.list-view-table tbody tr:hover{background:#ffcdd2}.list-view-table td{padding:3px 6px;border-bottom:1px solid #FFCDD2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px}.list-view-table .td-deadline{font-size:10px;font-weight:700;color:#d32f2f;white-space:nowrap;padding:2px 4px}.td-car{font-weight:700;color:#b71c1c;max-width:90px}.list-view-table .td-client{font-size:10px;color:#555;max-width:100px}.list-view-table .td-from,.list-view-table .td-to{font-size:10px;font-weight:700;max-width:140px}.list-view-table tr.rc-same .td-deadline,.list-view-table tr.rc-same .td-from,.list-view-table tr.rc-same .td-to,.list-view-table tr.rc-same .td-car,.list-view-table tr.rc-same .td-client{color:#333}.list-view-table tr.rc-shikoku .td-deadline,.list-view-table tr.rc-shikoku .td-from,.list-view-table tr.rc-shikoku .td-to,.list-view-table tr.rc-shikoku .td-car,.list-view-table tr.rc-shikoku .td-client{color:#2563eb}.list-view-table tr.rc-cross .td-deadline,.list-view-table tr.rc-cross .td-from,.list-view-table tr.rc-cross .td-to,.list-view-table tr.rc-cross .td-car,.list-view-table tr.rc-cross .td-client{color:#ea580c}.list-view-table tr.rc-return .td-deadline,.list-view-table tr.rc-return .td-from,.list-view-table tr.rc-return .td-to,.list-view-table tr.rc-return .td-car,.list-view-table tr.rc-return .td-client{color:#16a34a}.list-view-table tr.rc-outside .td-deadline,.list-view-table tr.rc-outside .td-from,.list-view-table tr.rc-outside .td-to,.list-view-table tr.rc-outside .td-car,.list-view-table tr.rc-outside .td-client{color:#7c3aed}.search-bar{display:flex;align-items:center;gap:6px;margin-left:12px}.search-bar input{width:180px;height:28px;border:none;border-radius:4px;padding:0 8px 0 28px;font-size:12px;background:#ffffff26;color:#fff;outline:none;transition:all .2s}.search-bar input::placeholder{color:#ffffff80}.search-bar input:focus{background:#ffffff40;width:240px}.search-bar .search-icon{position:absolute;left:8px;top:50%;transform:translateY(-50%);font-size:12px;opacity:.6;pointer-events:none}.search-bar .search-wrap{position:relative}.search-bar .search-count{font-size:10px;color:#ffffffb3;white-space:nowrap}.search-bar .search-clear{position:absolute;right:6px;top:50%;transform:translateY(-50%);font-size:14px;cursor:pointer;opacity:.5;color:#fff;background:none;border:none;padding:0;line-height:1;display:none}.search-bar .search-clear:hover{opacity:1}.magnet.search-dim,.unassigned-magnet.search-dim,.list-view-table tr.search-dim{opacity:.15!important}.magnet.search-hit{box-shadow:0 0 0 2px #ffd600,0 0 8px #ffd60080;z-index:2}.unassigned-magnet.search-hit{box-shadow:0 0 0 2px #ffd600}.list-view-table tr.search-hit{background:#fff9c4!important}.carrier-col.search-has-hit .carrier-header{box-shadow:inset 0 -3px #ffd600}.completed-toggle{display:flex;align-items:center;gap:4px;font-size:11px;color:#fffc;cursor:pointer;margin-left:8px;-webkit-user-select:none;user-select:none;white-space:nowrap}.completed-toggle input{accent-color:#4CAF50;cursor:pointer;margin:0}.magnet.is-completed{opacity:.35;filter:grayscale(.8)}.hide-completed .magnet[style*="background-color:#E5E7EB"]{display:none}.search-panel{display:none;flex:1;flex-direction:column;overflow:hidden}.main-grid.search-mode .search-panel{display:flex}.main-grid.search-mode .panel-unassigned>.panel-content{display:none}.main-grid.search-mode .list-view-container{display:none}.search-form{padding:4px 6px;background:#fff5f5;border-bottom:1px solid #FFCDD2}.search-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:3px}.search-form-row{display:flex;align-items:center;gap:3px}.search-form-row.full-width{grid-column:1 / -1}.search-form label{font-size:9px;font-weight:700;color:#c62828;min-width:42px;white-space:nowrap}.search-form input,.search-form select{flex:1;font-size:10px;padding:2px 4px;border:1px solid #EF9A9A;border-radius:3px;font-family:inherit;min-width:0}.search-form input:focus,.search-form select:focus{outline:none;border-color:#c62828;box-shadow:0 0 0 1px #c6282833}.search-form input[type=date]{font-size:9px;padding:1px 2px}.search-actions{display:flex;gap:4px;margin-top:3px;align-items:center}.search-actions label{font-size:9px;color:#333;min-width:auto;cursor:pointer;display:flex;align-items:center;gap:2px}.search-actions input[type=checkbox]{width:12px;height:12px;min-width:12px;flex:none}.search-btn{padding:3px 10px;font-size:10px;font-weight:700;border:none;border-radius:3px;cursor:pointer;font-family:inherit;transition:background .15s}.search-btn-primary{background:#d32f2f;color:#fff}.search-btn-primary:hover{background:#b71c1c}.search-btn-clear{background:#e0e0e0;color:#333}.search-btn-clear:hover{background:#bdbdbd}.search-spacer{flex:1}.search-results{flex:1;overflow-y:auto;padding:0}.search-results-header{position:sticky;top:0;z-index:2;padding:3px 6px;background:#c62828;color:#fff;font-size:10px;font-weight:700;display:flex;justify-content:space-between;align-items:center}.search-results-empty{padding:20px;text-align:center;color:#90a4ae;font-size:11px;font-style:italic}.search-results-table{width:100%;border-collapse:collapse;font-size:10px}.search-results-table thead th{position:sticky;top:22px;z-index:1;background:#d32f2f;color:#fff;padding:3px 4px;font-size:9px;font-weight:700;text-align:left;white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .1s}.search-results-table thead th:hover{background:#b71c1c}.search-results-table thead th.sort-asc:after{content:" ▲";font-size:7px}.search-results-table thead th.sort-desc:after{content:" ▼";font-size:7px}.search-results-table tbody tr{cursor:grab;transition:background .1s}.search-results-table tbody tr:nth-child(2n){background:#fff0f0}.search-results-table tbody tr:nth-child(odd){background:#fff}.search-results-table tbody tr:hover{background:#ffcdd2}.search-results-table tbody tr.is-assigned{background:#e8f5e9}.search-results-table tbody tr.is-assigned:nth-child(2n){background:#dcf0df}.search-results-table tbody tr.is-assigned:hover{background:#c8e6c9}.search-results-table td{padding:2px 4px;border-bottom:1px solid #FFCDD2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}.search-results-table .td-deadline{font-size:10px;font-weight:700;color:#d32f2f;white-space:nowrap;padding:2px 4px}.search-results-table .td-car{font-weight:700;color:#b71c1c;max-width:90px}.search-results-table .td-client{font-size:10px;color:#555;max-width:100px}.search-results-table .td-from,.search-results-table .td-to{font-size:10px;font-weight:700;max-width:120px}.search-results-table .td-order-number{font-size:9px;font-weight:600;color:#555;max-width:80px}.search-results-table tr.rc-same .td-order-number,.search-results-table tr.rc-same .td-deadline,.search-results-table tr.rc-same .td-from,.search-results-table tr.rc-same .td-to,.search-results-table tr.rc-same .td-car,.search-results-table tr.rc-same .td-client{color:#333}.search-results-table tr.rc-shikoku .td-order-number,.search-results-table tr.rc-shikoku .td-deadline,.search-results-table tr.rc-shikoku .td-from,.search-results-table tr.rc-shikoku .td-to,.search-results-table tr.rc-shikoku .td-car,.search-results-table tr.rc-shikoku .td-client{color:#2563eb}.search-results-table tr.rc-cross .td-order-number,.search-results-table tr.rc-cross .td-deadline,.search-results-table tr.rc-cross .td-from,.search-results-table tr.rc-cross .td-to,.search-results-table tr.rc-cross .td-car,.search-results-table tr.rc-cross .td-client{color:#ea580c}.search-results-table tr.rc-return .td-order-number,.search-results-table tr.rc-return .td-deadline,.search-results-table tr.rc-return .td-from,.search-results-table tr.rc-return .td-to,.search-results-table tr.rc-return .td-car,.search-results-table tr.rc-return .td-client{color:#16a34a}.search-results-table tr.rc-outside .td-order-number,.search-results-table tr.rc-outside .td-deadline,.search-results-table tr.rc-outside .td-from,.search-results-table tr.rc-outside .td-to,.search-results-table tr.rc-outside .td-car,.search-results-table tr.rc-outside .td-client{color:#7c3aed}.search-status-badge{font-size:8px;font-weight:700;padding:1px 4px;border-radius:2px;white-space:nowrap}.search-status-unassigned{background:#ffcdd2;color:#c62828}.search-status-assigned{background:#c8e6c9;color:#2e7d32}.search-status-delivered{background:#e0e0e0;color:#616161}.search-results-table tbody tr.dragging{opacity:.4}.search-results-table tbody tr.tap-selected{outline:2px solid #D32F2F;outline-offset:-1px}.carrier-col.drag-over .jobs-list{background:#e3f2fd;outline:2px dashed #1976D2;outline-offset:-2px}.carrier-col.drag-over .carrier-header{background:#bbdefb!important}.panel-unassigned.drag-source{border-right-color:#1976d2}.panel-unassigned.return-hover{background:#e3f2fd;border-right-color:#1976d2}.unassigned-magnet.dragging,.list-view-table tbody tr.dragging{opacity:.4;transform:scale(.95)}.magnet.dragging{opacity:.4}.magnet.just-dropped{animation:dropFlash .6s ease}.carrier-header[draggable=true]{cursor:grab}.carrier-header[draggable=true]:active{cursor:grabbing}.carrier-col.truck-reordering{opacity:.4;transform:scale(.97);transition:opacity .15s,transform .15s}.insert-line-vertical{width:3px;min-height:80px;align-self:stretch;background:#e65100;border-radius:2px;flex-shrink:0;animation:insertLinePulse .8s ease infinite alternate;margin:0 -1px;z-index:10}@keyframes insertLinePulse{0%{opacity:.6}to{opacity:1}}.inactive-item[draggable=true]{cursor:grab}.inactive-item[draggable=true]:active{cursor:grabbing}.inactive-item.dragging{opacity:.4;transform:scale(.95)}.carrier-row.activate-drop-target{outline:3px dashed #16A34A;outline-offset:-3px;background:#16a34a14}.panel-inactive.deactivate-target{outline:3px dashed #DC2626;outline-offset:-3px;background:#dc262614}.carrier-col.new-activated{animation:activateFlash .8s ease}.confirm-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:10000;display:flex;align-items:center;justify-content:center}.confirm-dialog{background:#fff;border-radius:12px;padding:24px 28px;min-width:340px;max-width:460px;box-shadow:0 8px 32px #0000004d;font-family:-apple-system,BlinkMacSystemFont,sans-serif}.confirm-dialog h3{margin:0 0 12px;font-size:16px;color:#333}.confirm-dialog p{margin:0 0 20px;font-size:13px;color:#666;line-height:1.6}.confirm-dialog .btn-row{display:flex;gap:10px;justify-content:flex-end}.confirm-dialog button{padding:8px 20px;border-radius:6px;border:none;font-size:13px;font-weight:600;cursor:pointer}.confirm-dialog .btn-cancel{background:#e0e0e0;color:#333}.confirm-dialog .btn-cancel:hover{background:#bdbdbd}.confirm-dialog .btn-ok{background:#dc2626;color:#fff}.confirm-dialog .btn-ok:hover{background:#b91c1c}.panel-compare{background:#e8f5e9;border-left:3px solid #2E7D32;display:flex;flex-direction:column;overflow:hidden}.panel-title-compare{background:#2e7d32;position:relative;display:flex;align-items:center;justify-content:space-between}.compare-mode-btn{position:absolute;right:4px;top:50%;transform:translateY(-50%);background:#ffffff40;border:1px solid rgba(255,255,255,.4);color:#fff;padding:2px 8px;border-radius:3px;font-size:10px;font-weight:700;cursor:pointer;font-family:inherit}.compare-mode-btn:hover{background:#fff6}.compare-exit-btn{background:#ffffff40;border:1px solid rgba(255,255,255,.4);color:#fff;padding:2px 8px;border-radius:3px;font-size:10px;font-weight:700;cursor:pointer;font-family:inherit}.compare-exit-btn:hover{background:#fff6}.compare-content{flex:1;overflow-y:auto;padding:4px}.compare-help{font-size:9px;color:#558b2f;text-align:center;padding:4px;background:#ffffff80;border-radius:3px;margin-bottom:4px}.compare-card{background:#fff;border:2px solid #66BB6A;border-radius:4px;padding:6px;margin-bottom:4px;position:relative}.compare-card-header{display:flex;align-items:center;gap:4px;margin-bottom:4px;padding-bottom:3px;border-bottom:1px solid #E0E0E0}.compare-truck-num{font-size:16px;font-weight:900;color:#2e7d32;min-width:24px}.compare-driver-name{font-size:11px;font-weight:700;color:#424242;flex:1}.compare-remove{font-size:12px;color:#f44336;cursor:pointer;padding:0 4px;line-height:1}.compare-remove:hover{color:#d32f2f;background:#ffebee;border-radius:2px}.compare-info-row{display:flex;align-items:center;gap:4px;font-size:9px;margin-bottom:2px}.compare-info-label{color:#757575;min-width:32px}.compare-info-value{font-weight:600;color:#424242;flex:1}.compare-direction{display:inline-block;font-size:8px;font-weight:700;padding:1px 4px;border-radius:2px;margin-left:2px}.compare-gauge{width:100%;height:6px;background:#e0e0e0;border-radius:3px;overflow:hidden;margin-top:2px}.compare-gauge-fill{height:100%;background:linear-gradient(90deg,#66bb6a,#43a047);transition:width .3s ease}body.compare-mode .carrier-col{cursor:pointer;transition:transform .15s}body.compare-mode .carrier-col:hover{transform:scale(1.02)}body.compare-mode .carrier-col.compare-selected .carrier-header{background:#c8e6c9!important;box-shadow:0 0 0 3px #66bb6a;position:relative}body.compare-mode .carrier-col.compare-selected:after{content:"✓";position:absolute;top:2px;left:2px;background:#43a047;color:#fff;font-size:12px;font-weight:900;width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:10;box-shadow:0 2px 4px #0003}.magnet.status-overdue{background:#fee2e2!important;border-color:#d1d5db!important}.magnet.status-overdue-critical{background:#fee2e2!important;border-color:#d1d5db!important;animation:pulse-urgent 1.5s ease-in-out infinite}.magnet.status-tomorrow{background:#fef3c7!important;border-color:#d1d5db!important}.magnet.status-safe{background:#dbeafe!important;border-color:#d1d5db!important}.magnet.status-completed-d{background:#e5e7eb!important;border-color:#d1d5db!important;opacity:.7}.deadline-badge{font-size:7px;font-weight:700;letter-spacing:.3px;padding:0 3px;border-radius:2px;line-height:1.4;white-space:nowrap}.dl-overdue{background:none;color:#dc2626;font-weight:800}.dl-tomorrow{background:none;color:#d97706}.dl-safe{background:none;color:#6b7280}.dl-done{background:none;color:#9ca3af}.direction-label{font-size:8px;font-weight:800;letter-spacing:.5px;padding:1px 4px;border-radius:2px;white-space:nowrap}.dir-aichi{background:#e8f5e9;color:#1b5e20}.dir-osaka{background:#e3f2fd;color:#0d47a1}.dir-kanto{background:#fce4ec;color:#880e4f}.dir-shikoku{background:#fff3e0;color:#e65100}.dir-kennai{background:#f3e5f5;color:#6a1b9a}.dir-other{background:#eceff1;color:#455a64}.dir-aichi{background:#dbeafe;color:#1e3a8a}.dir-osaka{background:#fed7aa;color:#9a3412}.dir-hyogo{background:#e9d5ff;color:#6b21a8}.dir-kanto{background:#fecaca;color:#991b1b}.dir-shikoku{background:#d1fae5;color:#065f46}.dir-kennai{background:#e5e7eb;color:#374151}.dir-other{background:#f3f4f6;color:#6b7280}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes insertPulse{0%,to{opacity:.7}50%{opacity:1}}@keyframes pulse-urgent{0%,to{border-left-color:#dc2626}50%{border-left-color:#fca5a5}}@keyframes dropFlash{0%{transform:scale(1.15);box-shadow:0 0 12px #1976d299}50%{transform:scale(1.05)}to{transform:scale(1);box-shadow:none}}@keyframes activateFlash{0%{transform:scale(1.08);box-shadow:0 0 16px #16a34a80}to{transform:scale(1);box-shadow:none}}@keyframes tapPulse{0%,to{box-shadow:0 0 8px #d32f2f66}50%{box-shadow:0 0 18px #d32f2fb3}}@keyframes tapPulseBlue{0%,to{box-shadow:0 0 8px #1565c066}50%{box-shadow:0 0 18px #1565c0b3}}@keyframes slideDown{0%{transform:translateY(-100%)}to{transform:translateY(0)}}@keyframes toastIn{0%{opacity:0;transform:translate(-50%) translateY(20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes toastOut{0%{opacity:1}to{opacity:0}}.drop-toast{position:fixed;bottom:40px;left:50%;transform:translate(-50%);background:#1b5e20;color:#fff;padding:8px 20px;border-radius:8px;font-size:13px;font-weight:700;font-family:"M PLUS 1",sans-serif;z-index:9999;box-shadow:0 4px 12px #0000004d;animation:toastIn .3s ease,toastOut .3s ease 1.5s forwards;pointer-events:none}.unassigned-magnet.tap-selected,.list-view-table tbody tr.tap-selected{outline:3px solid #D32F2F;background:#ffebee!important;box-shadow:0 0 12px #d32f2f80;animation:tapPulse 1.2s ease infinite;z-index:10;position:relative}.magnet.tap-selected{outline:3px solid #1565C0;box-shadow:0 0 14px #1565c099;animation:tapPulse 1.2s ease infinite;z-index:10;position:relative}.magnet.tap-selected{animation-name:tapPulseBlue}.tap-indicator{display:none;position:fixed;top:0;left:0;right:0;height:36px;background:linear-gradient(135deg,#d32f2f,#c62828);color:#fff;font-family:"M PLUS 1",sans-serif;font-size:13px;font-weight:700;line-height:36px;text-align:center;z-index:9999;box-shadow:0 2px 8px #0000004d;animation:slideDown .2s ease}.tap-indicator.active{display:block}.tap-indicator.magnet-mode{background:linear-gradient(135deg,#1565c0,#0d47a1)}.tap-indicator .cancel-btn{position:absolute;right:12px;top:4px;background:#ffffff40;border:1px solid rgba(255,255,255,.4);color:#fff;padding:2px 12px;border-radius:4px;font-size:12px;font-weight:700;cursor:pointer;font-family:"M PLUS 1",sans-serif}.tap-indicator .cancel-btn:hover{background:#fff6}body.tap-mode .carrier-col{cursor:pointer}body.tap-mode .carrier-col:hover .carrier-header{background:#e3f2fd!important;transition:background .15s}body.tap-mode .carrier-col:hover .jobs-list{outline:2px dashed #1976D2;outline-offset:-2px;background:#e3f2fd4d}body.tap-mode-magnet .panel-unassigned:hover{background:#e3f2fd;border-right-color:#1976d2;cursor:pointer}.legend-bar{height:26px;background:#263238;display:flex;align-items:center;padding:0 10px;gap:8px;overflow-x:auto}.legend-item{display:flex;align-items:center;gap:3px;font-size:10px;color:#b0bec5;white-space:nowrap}.legend-dot{width:10px;height:10px;border-radius:2px;flex-shrink:0}.csv-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:9999;animation:csv-fadeIn .15s ease}@keyframes csv-fadeIn{0%{opacity:0}to{opacity:1}}.csv-dialog{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;width:540px;max-width:90vw;max-height:85vh;display:flex;flex-direction:column;overflow:hidden;animation:csv-slideUp .2s ease}@keyframes csv-slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.csv-dialog-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #E5E7EB;background:#f9fafb}.csv-dialog-header h3{margin:0;font-size:16px;font-weight:700;color:#1f2937}.csv-close-btn{background:none;border:none;font-size:24px;color:#9ca3af;cursor:pointer;line-height:1;padding:0 4px}.csv-close-btn:hover{color:#374151}.csv-dialog-body{padding:20px;overflow-y:auto;flex:1}.csv-drop-zone{border:2px dashed #D1D5DB;border-radius:10px;padding:40px 20px;text-align:center;transition:all .2s;cursor:pointer}.csv-drop-zone:hover,.csv-drop-hover{border-color:#3b82f6;background:#eff6ff}.csv-drop-icon{font-size:40px;margin-bottom:12px}.csv-drop-zone p{margin:4px 0;color:#6b7280;font-size:14px}.csv-drop-or{font-size:12px!important;color:#9ca3af!important;margin:8px 0!important}.csv-browse-btn{margin-top:4px;padding:8px 20px;background:#3b82f6;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s}.csv-browse-btn:hover{background:#2563eb}.csv-drop-hint{font-size:11px!important;color:#9ca3af!important;margin-top:12px!important}.csv-drop-error{color:#dc2626;font-size:13px;font-weight:600;margin-top:8px}.csv-loading{text-align:center;padding:40px 0}.csv-loading p{margin-top:12px;color:#6b7280;font-size:14px}.csv-spinner{width:36px;height:36px;border:3px solid #E5E7EB;border-top-color:#3b82f6;border-radius:50%;margin:0 auto;animation:csv-spin .7s linear infinite}@keyframes csv-spin{to{transform:rotate(360deg)}}.csv-file-info{display:flex;align-items:center;gap:8px;margin-bottom:16px}.csv-file-name{font-size:14px;font-weight:600;color:#1f2937}.csv-file-size{font-size:12px;color:#9ca3af;background:#f3f4f6;padding:2px 8px;border-radius:4px}.csv-preview-stats{display:flex;gap:12px;margin-bottom:16px}.csv-stat{flex:1;text-align:center;padding:12px;background:#f0fdf4;border-radius:8px;border:1px solid #BBF7D0}.csv-stat-error{background:#fef2f2;border-color:#fecaca}.csv-stat-num{display:block;font-size:24px;font-weight:800;color:#15803d}.csv-stat-error .csv-stat-num{color:#dc2626}.csv-stat-label{display:block;font-size:11px;color:#6b7280;margin-top:2px}.csv-preview-table-wrap{overflow-x:auto;margin-bottom:12px;border-radius:6px;border:1px solid #E5E7EB}.csv-preview-table{width:100%;border-collapse:collapse;font-size:12px}.csv-preview-table th{background:#f3f4f6;padding:6px 10px;text-align:left;font-weight:700;color:#374151;white-space:nowrap;border-bottom:1px solid #E5E7EB}.csv-preview-table td{padding:5px 10px;border-bottom:1px solid #F3F4F6;color:#4b5563;white-space:nowrap}.csv-preview-table tr:last-child td{border-bottom:none}.csv-status-badge{font-size:10px;font-weight:700;padding:2px 6px;border-radius:3px}.csv-status-assigned{background:#dbeafe;color:#1d4ed8}.csv-status-unassigned{background:#fee2e2;color:#dc2626}.csv-error-list{margin-top:12px;padding:10px 14px;background:#fffbeb;border:1px solid #FDE68A;border-radius:6px}.csv-error-list h4{margin:0 0 6px;font-size:12px;color:#92400e}.csv-error-list ul{margin:0;padding-left:16px}.csv-error-list li{font-size:11px;color:#78350f;margin:2px 0}.csv-error-box{text-align:center;padding:20px}.csv-error-box p{color:#dc2626;font-weight:600}.csv-error-detail{font-size:12px;color:#9ca3af!important;font-weight:400!important;margin-top:4px}.csv-back-btn{margin-top:16px;padding:8px 20px;background:#f3f4f6;color:#374151;border:1px solid #D1D5DB;border-radius:6px;font-size:13px;cursor:pointer}.csv-back-btn:hover{background:#e5e7eb}.csv-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px;padding-top:16px;border-top:1px solid #E5E7EB}.csv-cancel-btn{padding:8px 20px;background:#fff;color:#374151;border:1px solid #D1D5DB;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer}.csv-cancel-btn:hover{background:#f3f4f6}.csv-import-btn{padding:8px 20px;background:#059669;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s}.csv-import-btn:hover{background:#047857}.csv-result{text-align:center;padding:10px 0}.csv-result-icon{font-size:40px;margin-bottom:8px}.csv-result h4{margin:0 0 16px;font-size:16px;color:#1f2937}.csv-result-stats{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.csv-result-row{display:flex;justify-content:space-between;padding:8px 16px;background:#f9fafb;border-radius:6px;font-size:13px;color:#4b5563}.csv-result-row strong{color:#1f2937}.csv-result-warn{background:#fffbeb}.csv-result-warn strong{color:#d97706}.csv-upload-btn{display:flex;align-items:center;gap:4px;padding:4px 12px;background:#ffffff1f;border:1px solid rgba(255,255,255,.25);border-radius:6px;color:#fff;font-size:12px;font-weight:600;cursor:pointer;transition:all .15s;white-space:nowrap}.csv-upload-btn:hover{background:#ffffff38;border-color:#fff6}.table-view{grid-column:2;grid-row:1 / 3;display:none;flex-direction:column;overflow-y:auto;overflow-x:hidden;background:#f5f3ed;scrollbar-width:thin}.table-view::-webkit-scrollbar{width:8px}.table-view::-webkit-scrollbar-thumb{background:#90a4ae;border-radius:4px}.table-view::-webkit-scrollbar-track{background:#cfd8dc}.main-grid.table-mode .table-view{display:flex}.main-grid.table-mode .carrier-row{display:none}.tv-row{display:flex;align-items:stretch;border-bottom:1px solid #B0BEC5;background:#fff;min-height:48px;transition:background .1s}.tv-row:nth-child(2n){background:#fafafa}.tv-row:hover{background:#e3f2fd}.tv-row.tv-row-idle{background:#f5fff5}.tv-row.drag-over{background:#bbdefb!important;outline:2px dashed #1565C0;outline-offset:-2px}.tv-cell{display:flex;align-items:center;justify-content:center;padding:3px 4px;border-right:1px solid #E0E0E0;flex-shrink:0;overflow:hidden}.tv-cell-num{min-width:38px;width:38px;background:var(--type-bg);border-right:3px solid var(--type-color)}.tv-num{font-size:18px;font-weight:900;color:#1a237e;white-space:nowrap}.tv-cell-type{min-width:48px;width:48px;gap:2px;flex-wrap:wrap;justify-content:center}.tv-type{font-size:9px;color:#fff;padding:1px 5px;border-radius:3px;font-weight:700;white-space:nowrap}.tv-cell-driver{min-width:56px;width:56px}.tv-driver{font-size:11px;font-weight:700;color:#333;cursor:pointer;text-decoration:underline dotted;text-decoration-color:#999;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;width:100%;text-align:center}.tv-driver:hover{color:#1565c0;text-decoration:underline solid}.tv-cell-time{min-width:80px;width:80px;gap:1px;flex-direction:column;justify-content:center;align-items:center;position:relative}.tv-depart{font-size:12px;font-weight:800;color:#d32f2f;white-space:nowrap}.tv-arrival{font-size:9px;font-weight:700;color:#1565c0;white-space:nowrap}.tv-map-link{position:absolute;right:2px;top:50%;transform:translateY(-50%);font-size:10px;text-decoration:none;cursor:pointer;border-radius:2px;padding:1px;transition:transform .15s,background .15s;display:flex;align-items:center;justify-content:center;line-height:1;z-index:1}.tv-map-link:hover{transform:translateY(-50%) scale(1.3);background:#3b82f626}.tv-cell-dir{min-width:52px;width:52px}.tv-cell-dir .direction-label{font-size:9px;font-weight:700;white-space:nowrap}.tv-cell-count{min-width:32px;width:32px}.tv-count{font-size:9px;background:#e0e0e0;color:#555;padding:1px 4px;border-radius:3px;font-weight:700;white-space:nowrap}.tv-jobs{display:flex;align-items:center;gap:3px;padding:2px 4px;flex:1;overflow-x:auto;scrollbar-width:thin;min-width:0}.tv-jobs::-webkit-scrollbar{height:6px}.tv-jobs::-webkit-scrollbar-thumb{background:#b0bec5;border-radius:3px}.tv-jobs .magnet{min-width:90px;max-width:140px;width:110px;flex-shrink:0}.tv-zone-label{flex-shrink:0;font-size:8px;font-weight:800;padding:2px 4px;border-radius:3px;white-space:nowrap;line-height:1.2;writing-mode:horizontal-tb;align-self:center}.tv-zone-upper{background:#e3f2fd;color:#1565c0;border:1px solid #90CAF9}.tv-zone-lower{background:#fff3e0;color:#e65100;border:1px solid #FFCC80;margin-left:2px}.tv-zone-overflow{background:#dc2626;color:#fff;border:1px solid #B91C1C;font-weight:700;margin-left:2px}.tv-slot-empty{width:110px;min-width:90px;height:42px;flex-shrink:0;border-radius:3px;border:2px dashed}.tv-slot-empty-upper{border-color:#64b5f6;background:#3b82f614}.tv-slot-empty-lower{border-color:#ffb74d;background:#f59e0b14}.main-grid.table-mode .panel-walk{grid-row:1}.main-grid.table-mode .panel-inactive{grid-row:2}.view-mode-toggle{display:inline-flex;gap:0;margin-left:2px}.view-mode-btn{border:1px solid rgba(255,255,255,.4);background:#ffffff1a;color:#ffffffb3;font-size:11px;font-weight:700;padding:3px 10px;cursor:pointer;font-family:inherit;transition:all .15s}.view-mode-btn:first-child{border-radius:4px 0 0 4px}.view-mode-btn:last-child{border-radius:0 4px 4px 0}.view-mode-btn.active{background:#ffffffe6;color:#0d1b2a;border-color:#ffffffe6}.view-mode-btn:hover:not(.active){background:#ffffff40}.tv-header-row{display:flex;align-items:center;background:#263238;color:#fff;font-size:10px;font-weight:700;min-height:28px;border-bottom:2px solid #1A237E;position:sticky;top:0;z-index:5}.tv-hcell{display:flex;align-items:center;justify-content:center;padding:4px;border-right:1px solid rgba(255,255,255,.2);flex-shrink:0}.tv-hcell-num{width:38px;min-width:38px}.tv-hcell-type{width:48px;min-width:48px}.tv-hcell-driver{width:56px;min-width:56px}.tv-hcell-time{width:80px;min-width:80px}.tv-hcell-dir{width:52px;min-width:52px}.tv-hcell-count{width:32px;min-width:32px}.tv-hcell-jobs{flex:1;padding-left:8px}.tv-hcell.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s;position:relative}.tv-hcell.sortable:hover{background:#ffffff26}.tv-hcell.sortable.sort-active{background:#fff3;color:#ffd54f}.tv-hcell.sortable.sort-asc:after{content:" ▲";font-size:7px}.tv-hcell.sortable.sort-desc:after{content:" ▼";font-size:7px}.tv-row.truck-reordering{opacity:.4}.tv-cell-num[draggable=true]{cursor:grab}.tv-cell-num[draggable=true]:active{cursor:grabbing}
