@import"https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap";.app-overlay-menu{position:fixed;top:0;right:0;bottom:0;left:0;z-index:400000;display:flex;pointer-events:auto}.app-overlay-menu-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;border:0;margin:0;padding:0;background:#0628166b;cursor:pointer}.app-overlay-menu-panel{position:relative;z-index:1;display:flex;flex-direction:column;width:min(280px,86vw);height:100%;background:linear-gradient(180deg,#fffffff5,#f3f7f1fa);border-right:1px solid var(--fleet-line, rgba(42, 76, 48, .16));box-shadow:12px 0 40px #0a2e1c2e;color:var(--fleet-text, #193c22);outline:none}.app-overlay-menu-panel.is-docked{width:260px;height:100dvh;position:sticky;top:0;box-shadow:none;z-index:2}.app-overlay-menu-brand{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:10px;align-items:center;padding:16px 14px 14px;border-bottom:1px solid var(--fleet-line, rgba(42, 76, 48, .16));background:linear-gradient(112deg,#ebeee0f5,#f1e7bac7)}.app-overlay-menu-mark{width:40px;height:40px;object-fit:contain;border-radius:50%;box-shadow:0 3px 12px #24392238}.app-overlay-menu-brand strong{display:block;font-size:15px;letter-spacing:.08em}.app-overlay-menu-brand span{display:block;margin-top:2px;color:#4c6f51;font-size:11px}.app-overlay-menu-close{min-height:34px;padding:0 10px;border:1px solid rgba(38,72,43,.12);border-radius:10px;background:#ffffffe0;color:var(--fleet-text, #193c22);font-size:12px;cursor:pointer}.app-overlay-menu-nav{display:flex;flex-direction:column;gap:4px;padding:12px 10px;flex:1 1 auto;overflow:auto}.app-overlay-menu-programs{margin-top:auto;padding-top:12px;border-top:1px solid var(--fleet-line, rgba(42, 76, 48, .16));display:flex;flex-direction:column;gap:4px}.app-overlay-menu-programs>p{margin:0 10px 6px;color:var(--fleet-muted, #617366);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.app-overlay-menu-link{display:flex;align-items:center;gap:10px;min-height:40px;padding:8px 10px;border-radius:10px;color:var(--fleet-text, #193c22);text-decoration:none;font-size:13px;font-weight:600}.app-overlay-menu-link:hover,.app-overlay-menu-link:focus-visible{background:#fffc;outline:none}.app-overlay-menu-link.is-current{background:var(--fleet-green-soft, #e5efe1);color:var(--primary, #0f4d2c);box-shadow:inset 3px 0 0 var(--fleet-green, #3f7c3d)}.app-overlay-menu-icon{width:20px;height:20px;flex:0 0 20px}.app-overlay-menu-user{padding:12px 14px 16px;border-top:1px solid var(--fleet-line, rgba(42, 76, 48, .16));display:grid;gap:10px}.app-overlay-menu-user-row{display:flex;align-items:center;gap:9px;color:inherit;text-decoration:none}.app-overlay-menu-user-row.is-link{border-radius:10px;padding:4px;margin:-4px}.app-overlay-menu-user-row.is-link:hover,.app-overlay-menu-user-row.is-link:focus-visible{background:#fffc;outline:none}.app-overlay-menu-user-copy strong{display:block;font-size:12px}.app-overlay-menu-user-copy span{color:var(--fleet-muted, #617366);font-size:11px}.app-overlay-menu-signout{min-height:38px;border:1px solid rgba(38,72,43,.12);border-radius:10px;background:#ffffffe0;color:var(--fleet-text, #193c22);font-size:12px;cursor:pointer}.catalog-shell{min-height:100dvh;display:grid;grid-template-rows:auto 1fr;background:linear-gradient(180deg,#f3f7f2f5,#ebf1e8fa);color:var(--text)}.catalog-shell-with-nav{grid-template-columns:260px minmax(0,1fr);grid-template-rows:1fr}.catalog-body{min-width:0;min-height:0;display:grid;grid-template-rows:auto 1fr}.catalog-menu-toggle{display:none}.catalog-admin-page{display:grid;gap:16px}.catalog-topbar{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:center;padding:12px 18px;border-bottom:1px solid var(--border);background:linear-gradient(112deg,#ebeee0f5,#f1e7ba8c)}.catalog-brand{display:flex;align-items:center;gap:10px}.catalog-brand img{width:36px;height:36px;border-radius:50%;object-fit:contain}.catalog-brand strong,.catalog-brand span{display:block}.catalog-brand strong{letter-spacing:.08em;font-size:13px}.catalog-brand span,.catalog-user{color:var(--muted);font-size:12px}.catalog-topbar h1{margin:0;font-size:20px}.catalog-top-actions{display:flex;align-items:center;gap:12px}.catalog-main{min-height:0;overflow:auto;padding:18px}.catalog-toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:16px}.catalog-search{flex:0 1 200px;min-width:140px;max-width:220px}.catalog-search input{width:100%;border:1px solid var(--border);border-radius:10px;padding:6px 10px;font:inherit;font-size:13px;background:#fff}.catalog-create-btn{border:1px solid var(--border-strong);border-radius:999px;background:var(--primary);color:#fff;padding:6px 12px;font:inherit;font-size:13px;font-weight:700;cursor:pointer;white-space:nowrap}.catalog-sort{display:inline-flex;align-items:center;gap:0;border:1px solid var(--border-strong);border-radius:999px;overflow:hidden;background:#fff}.catalog-sort select,.catalog-sort-dir{border:0;background:transparent;padding:6px 10px;font:inherit;font-size:12px;color:var(--text);cursor:pointer}.catalog-sort-dir{border-left:1px solid var(--border);font-weight:700;color:var(--muted)}.catalog-sort-btn{border:0;background:transparent;padding:0;font:inherit;font-size:inherit;font-weight:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;cursor:pointer}.catalog-sort-btn.is-on{color:var(--primary)}.catalog-view-toggle{display:inline-flex;border:1px solid var(--border-strong);border-radius:999px;overflow:hidden;background:#fff}.catalog-view-toggle button{border:0;background:transparent;padding:8px 14px;font:inherit;cursor:pointer;color:var(--muted)}.catalog-view-toggle button.is-on{background:var(--primary);color:#fff}.catalog-count{color:var(--muted);font-size:13px}.catalog-lead{margin:0 0 16px;color:var(--muted);font-size:14px}.dashboard-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-bottom:18px}.dashboard-kpis>div{border:1px solid var(--border);border-radius:16px;background:#fff;padding:14px;box-shadow:var(--shadow)}.dashboard-kpis em{display:block;font-style:normal;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.dashboard-kpis strong{display:block;margin-top:6px;font-size:28px;line-height:1.1}.catalog-card-sub{display:block;margin-top:2px;color:var(--muted);font-size:12px;font-weight:600}.catalog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.catalog-card,.catalog-row{border:1px solid var(--border);border-radius:16px;background:#fff;box-shadow:var(--shadow);text-align:left;font:inherit;color:inherit;cursor:pointer}.catalog-card{padding:14px;display:grid;gap:6px}.catalog-card-head{display:flex;align-items:flex-start;gap:10px}.catalog-card-head strong{min-width:0}.catalog-avatar,.fleet-profile-avatar{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:36px;height:36px;border-radius:50%;background:#0f4d2c1f;color:var(--primary);font-size:12px;font-weight:700;letter-spacing:.04em}.catalog-fact{display:flex;gap:8px;font-size:12px;line-height:1.35}.catalog-fact em{flex:0 0 64px;font-style:normal;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:10px}.catalog-card strong,.catalog-row strong{font-size:16px}.catalog-card span,.catalog-row span{color:var(--muted);font-size:13px}.catalog-table-wrap{overflow:auto;border:1px solid var(--border);border-radius:16px;background:#fff;box-shadow:var(--shadow)}.catalog-table{width:100%;border-collapse:collapse;font-size:13px}.catalog-table th{position:sticky;top:0;z-index:1;text-align:left;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);background:#f3f7f2;padding:10px 12px;border-bottom:1px solid var(--border);white-space:nowrap}.catalog-table td{padding:9px 12px;border-bottom:1px solid var(--border);vertical-align:middle;color:var(--text)}.catalog-table tbody tr{cursor:pointer}.catalog-table tbody tr:hover{background:#0f4d2c0d}.catalog-table tbody tr:focus{outline:2px solid var(--primary);outline-offset:-2px}.catalog-table td:first-child strong{font-size:14px}.catalog-list{display:grid;gap:8px}.catalog-row{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr) auto;gap:10px;align-items:center;padding:12px 14px}.catalog-empty{color:var(--muted);padding:24px 8px}.catalog-inactive{display:inline-flex;margin-left:8px;padding:1px 8px;border-radius:999px;background:#c9a2272e;color:var(--primary);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (max-width: 900px){.catalog-shell-with-nav{grid-template-columns:1fr}.catalog-shell-with-nav>.app-overlay-menu-panel.is-docked{display:none}.catalog-menu-toggle{display:inline-flex}}@media (min-width: 901px){.catalog-shell-with-nav .catalog-brand{display:none}.catalog-shell-with-nav .catalog-topbar{grid-template-columns:minmax(0,1fr) auto}}@media (max-width: 720px){.catalog-topbar,.catalog-row{grid-template-columns:1fr}}.fleet-profile-head{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:12px;align-items:start}.fleet-profile-avatar{width:48px;height:48px;font-size:15px}.fleet-profile-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.fleet-profile-chip{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;background:#0f4d2c14;color:var(--fleet-text, #193c22);font-size:11px;font-weight:700}.fleet-profile-chip.is-ok{background:#168a4a24;color:#0f4d2c}.fleet-profile-chip.is-warn{background:#c9a22733;color:#6b4f00}.fleet-profile-fact{display:grid;gap:4px}.fleet-profile-fact span{color:var(--fleet-muted, #617366);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.fleet-profile-fact strong,.fleet-profile-fact .fleet-text-link{font-size:14px}.fleet-profile-extended{display:grid;gap:14px}.fleet-profile-section{display:grid;gap:8px}.fleet-profile-section h3{margin:0;color:var(--fleet-muted, #617366);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.fleet-profile-retry{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.fleet-profile-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px}.fleet-profile-assign{display:grid;gap:6px;align-content:start}.fleet-profile-assign .searchable-picker{width:100%}.fleet-profile-assign .searchable-picker-input{min-height:42px;padding:10px 2.5rem 10px 12px;line-height:1.35}.fleet-profile-assign .searchable-picker-input::-webkit-search-cancel-button,.fleet-profile-assign .searchable-picker-input::-webkit-search-decoration{-moz-appearance:none;appearance:none;-webkit-appearance:none}.fleet-profile-open-link{justify-self:start;display:inline-flex;align-items:center;max-width:100%;margin:0;padding:7px 12px;border:1px solid var(--fleet-line, rgba(42, 76, 48, .22));border-radius:10px;background:#fff;color:var(--fleet-text, #193c22);font:inherit;font-size:13px;font-weight:650;line-height:1.35;letter-spacing:0;text-align:left;text-transform:none;text-decoration:none;cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;box-sizing:border-box;overflow-wrap:anywhere}.fleet-profile-open-link:hover,.fleet-profile-open-link:focus-visible{background:#eef5ea}.fleet-profile-field{display:grid;gap:4px}.fleet-profile-field-wide{grid-column:1 / -1}.fleet-profile-field span{color:var(--fleet-muted, #617366);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.fleet-profile-field input,.fleet-profile-field select,.fleet-profile-field textarea{width:100%;border:1px solid var(--fleet-line, rgba(42, 76, 48, .16));border-radius:10px;padding:8px 10px;font:inherit;color:var(--fleet-text, #193c22);background:#fff}.fleet-profile-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.fleet-profile-actions button:disabled{opacity:.45}.fleet-profile-transfer{display:grid;gap:8px;margin:12px 0 4px;padding:12px;border:1px solid var(--fleet-line, rgba(42, 76, 48, .16));border-radius:12px;background:#2a4c300a}.fleet-profile-transfer>p{margin:0;color:var(--fleet-muted, #617366);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.fleet-profile-transfer-status{color:var(--fleet-text, #193c22);font-size:13px;line-height:1.4}.fleet-profile-transfer-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}@media (max-width: 720px){.fleet-profile-form-grid,.fleet-profile-transfer-row{grid-template-columns:1fr}}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}:root{--bg: #f3f7f2;--bg-elevated: #ffffff;--surface: #ffffff;--panel: rgba(255, 255, 255, .97);--panel-solid: #ffffff;--border: rgba(13, 61, 36, .14);--border-strong: rgba(13, 61, 36, .28);--text: #0d3d24;--muted: #4a6b56;--primary: #0f4d2c;--primary-dark: #0a3a21;--primary-deep: #062816;--primary-glow: rgba(201, 162, 39, .22);--accent: #c9a227;--accent-bright: #e0bc3a;--gold: #d4af37;--danger: #dc2626;--success: #168a4a;--warning: #c9a227;--radius: 16px;--radius-sm: 12px;--shadow: 0 4px 24px rgba(10, 46, 28, .1);--shadow-glow: 0 8px 32px rgba(201, 162, 39, .18);--safe-top: env(safe-area-inset-top, 0px);--safe-right: env(safe-area-inset-right, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--safe-top-bar: #050a08;font-family:Plus Jakarta Sans,Inter,system-ui,sans-serif;color:var(--text);background:transparent}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;background:transparent}html{min-height:100%}body{min-height:100vh;min-height:100dvh;background:var(--app-bg-image) center center / cover no-repeat fixed;background-color:var(--app-bg-fallback);transition:background-color .35s ease}body.app-session-active:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:linear-gradient(180deg,#ffffff6b,#ffffff7a 55%,#ffffff85)}body.nav-immersive-active.app-session-active:after{display:none}html{--app-bg-image: url(/navpermit-map-truck-bg.png);--app-bg-fallback: #0a2e1c}html[data-bg-theme=day],html:not([data-bg-theme]){--app-bg-image: url(/navpermit-map-truck-bg.png);--app-bg-fallback: #0a2e1c}html[data-bg-theme=night]{--app-bg-image: url(/navpermit-map-truck-bg-night.png);--app-bg-fallback: #040a16}body:before{content:"";position:fixed;top:0;left:0;right:0;height:var(--safe-top);background:var(--safe-top-bar);z-index:100000;pointer-events:none}#root{position:relative;z-index:1;min-height:100vh;min-height:100dvh}a{color:var(--primary-dark);transition:color .15s}a:hover{color:var(--accent)}.navpermit-shell{max-width:1200px;margin:0 auto;padding:max(20px,calc(12px + var(--safe-top))) max(16px,var(--safe-right)) max(32px,calc(16px + var(--safe-bottom))) max(16px,var(--safe-left));background:transparent}.navpermit-shell.dispatcher-fullscreen{max-width:none;width:100%;min-height:100dvh;box-sizing:border-box;display:flex;flex-direction:column;padding-left:max(12px,var(--safe-left));padding-right:max(12px,var(--safe-right))}.dispatcher-fullscreen .navpermit-header{margin-bottom:8px;flex-shrink:0}.dispatcher-fullscreen .navpermit-header h1{font-size:1.35rem;margin:0}.dispatcher-fullscreen .dispatcher-tabs{flex-shrink:0;margin-bottom:10px}.dispatcher-routes-layout{flex:1;min-height:0;grid-template-columns:minmax(0,1fr) 520px!important;gap:12px;align-items:stretch}.dispatcher-routes-layout>aside,.dispatcher-routes-layout>.dispatcher-side{max-height:calc(100dvh - 140px);overflow:auto;min-width:0;width:520px;max-width:520px}@media (max-width: 1100px){.dispatcher-routes-layout{grid-template-columns:1fr!important}.dispatcher-routes-layout>aside,.dispatcher-routes-layout>.dispatcher-side{width:auto;max-width:none}}.dispatcher-map-section{display:flex;flex-direction:column;min-height:calc(100dvh - 150px)}.dispatcher-map-stage{position:relative;flex:1 1 auto;min-height:62vh;display:flex;flex-direction:column;z-index:0;isolation:isolate}.map-truck-search{position:absolute;top:12px;left:50%;transform:translate(-50%);z-index:1000;width:min(420px,calc(100% - 140px));pointer-events:auto}.map-truck-search-bar{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.55);background:#0f172a47;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 4px 18px #0f172a2e}.map-truck-search-icon{color:#ffffffe6;font-size:1rem;line-height:1;flex-shrink:0}.map-truck-search-input{flex:1;min-width:0;border:none;outline:none;background:transparent;color:#fff;font:inherit;font-size:.92rem}.map-truck-search-input::placeholder{color:#ffffffb8}.map-truck-search-clear{border:none;background:#ffffff2e;color:#fff;width:22px;height:22px;border-radius:999px;cursor:pointer;line-height:1;font-size:1rem;flex-shrink:0}.map-truck-search-results{list-style:none;margin:8px 0 0;padding:6px;max-height:min(280px,40vh);overflow:auto;border-radius:14px;border:1px solid rgba(255,255,255,.4);background:#0f172a6b;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 8px 24px #0f172a38}.map-truck-search-empty{padding:10px 12px;color:#fffc;font-size:.85rem}.map-truck-search-hit{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:2px;border:none;background:transparent;color:#fff;text-align:left;padding:8px 10px;border-radius:10px;cursor:pointer;font:inherit}.map-truck-search-hit span{font-size:.75rem;opacity:.82;word-break:break-all}.map-truck-search-hit:hover,.map-truck-search-hit.is-active{background:#ffffff29}.truck-picker,.searchable-picker{position:relative;width:100%}.truck-picker.is-disabled,.searchable-picker.is-disabled{opacity:.65}.truck-picker-bar,.searchable-picker-bar{position:relative;display:flex;align-items:center}.truck-picker-input,.searchable-picker-input{width:100%;padding-right:2rem}.truck-picker-clear,.searchable-picker-clear{position:absolute;right:6px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:#607064;font-size:1.1rem;line-height:1;cursor:pointer;padding:2px 6px}.truck-picker-results,.searchable-picker-results{position:absolute;z-index:5000;left:0;right:0;top:calc(100% + 4px);margin:0;padding:4px 0;list-style:none;max-height:240px;overflow:auto;border:1px solid #93a095;background:#f7faf4;box-shadow:0 10px 24px #10201624}.searchable-picker-results.is-portal{right:auto;top:auto;overflow:auto}.truck-picker-empty,.searchable-picker-empty{padding:10px 12px;color:#607064;font-size:.85rem}.truck-picker-hit,.searchable-picker-hit{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:2px;border:0;background:transparent;text-align:left;padding:8px 12px;cursor:pointer;color:#15271a}.truck-picker-hit strong,.searchable-picker-hit strong{font-size:.92rem}.truck-picker-hit span,.searchable-picker-hit span{font-size:.75rem;color:#607064}.truck-picker-hit:hover,.truck-picker-hit.is-active,.truck-picker-hit.is-selected,.searchable-picker-hit:hover,.searchable-picker-hit.is-active,.searchable-picker-hit.is-selected{background:#e7efe4}.fleet-working-desk .searchable-picker{min-width:12rem}.dispatcher-map-section .navpermit-map-wrap{flex:1 1 auto;min-height:62vh;height:auto!important}.map-basemap-switcher{position:absolute;left:12px;bottom:28px;z-index:1000;display:flex;gap:0;border-radius:8px;overflow:hidden;border:1px solid var(--border-strong, #cbd5e1);background:#fffffff5;box-shadow:0 2px 8px #0f172a1f}.map-basemap-switcher button,.map-layers-basemap button{border:none;background:transparent;color:inherit;font:inherit;font-size:.78rem;font-weight:600;padding:7px 10px;cursor:pointer;line-height:1.2}.map-basemap-switcher button+button{border-left:1px solid var(--border, #e2e8f0)}.map-basemap-switcher button.is-active,.map-layers-basemap button.is-active{background:var(--accent, #0f766e);color:#fff}.map-layers-basemap{display:flex;gap:0;border-radius:8px;overflow:hidden;border:1px solid var(--border, #e2e8f0)}.map-layers-basemap button{flex:1}.map-layers-basemap button+button{border-left:1px solid var(--border, #e2e8f0)}.nav-map-navigation .map-basemap-switcher{bottom:16px;left:10px}.map-layers-menu{position:absolute;top:12px;right:12px;left:auto;z-index:1000}.map-layers-toggle{border:1px solid var(--border-strong);background:#fffffff5;color:inherit;border-radius:8px;padding:8px 12px;font:inherit;font-weight:600;cursor:pointer;box-shadow:0 2px 8px #0f172a1f}.map-layers-toggle.is-open{background:var(--accent, #0f766e);border-color:var(--accent, #0f766e);color:#fff}.map-layers-panel{margin-top:8px;width:min(280px,calc(100vw - 40px));max-height:min(70vh,520px);overflow:auto;padding:12px;border-radius:12px;border:1px solid var(--border);background:#fffffffa;box-shadow:0 8px 24px #0f172a29;display:grid;gap:8px}.map-layers-section-title{margin:6px 0 0;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted, #64748b);font-weight:700}.map-layers-subtoggle{border:none;background:transparent;padding:0;font:inherit;font-size:inherit;font-weight:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer}.map-layers-row{display:flex;align-items:center;gap:8px;font-size:.9rem}.map-layers-roadside-row{display:grid;grid-template-columns:1fr auto;gap:6px 8px;align-items:center}.map-layers-roadside-row .map-layers-row{margin:0}.map-layers-color-swatch{width:22px;height:22px;border-radius:6px;border:2px solid #fff;box-shadow:0 0 0 1px #0f172a59;cursor:pointer;padding:0}.map-layers-color-swatch.is-open{outline:2px solid var(--accent, #0f766e);outline-offset:1px}.map-layers-color-palette{grid-column:1 / -1;display:grid;grid-template-columns:repeat(10,1fr);gap:6px;padding:8px;border-radius:10px;border:1px solid var(--border, #e2e8f0);background:#f8fafc}.map-layers-color-dot{width:100%;aspect-ratio:1;border-radius:999px;border:1px solid rgba(15,23,42,.2);cursor:pointer;padding:0}.map-layers-color-dot.is-light{border-color:#0f172a73}.map-layers-color-dot.is-active{outline:2px solid var(--accent, #0f766e);outline-offset:1px}.here-poi-icon-wrap{width:28px;height:34px;line-height:0;filter:drop-shadow(0 1px 3px rgba(0,0,0,.45))}.here-poi-icon-wrap svg{display:block;width:28px;height:34px}.map-layers-row.is-select{flex-direction:column;align-items:stretch;gap:4px}.map-layers-row.is-select .navpermit-input{padding:6px 8px}.map-layers-meta{margin:0;font-size:.78rem;color:var(--muted, #64748b)}.map-layers-routes{list-style:none;margin:0;padding:0;display:grid;gap:8px}.map-layers-routes li{display:flex;justify-content:space-between;gap:8px;align-items:center;padding-bottom:8px;border-bottom:1px solid var(--border)}.map-layers-routes li>div{display:flex;flex-direction:column;gap:2px;min-width:0}.fleet-truck-icon{background:transparent!important;border:none!important}.fleet-truck-pin-img{width:28px;height:34px;display:block;object-fit:contain;filter:drop-shadow(0 1px 3px rgba(0,0,0,.4))}.route-bend-handle{background:transparent!important;border:none!important}.route-bend-handle-dot{width:18px;height:18px;border-radius:50%;background:#f8fafc;border:3px solid #0f766e;box-shadow:0 1px 6px #0f172a73;cursor:grabbing}.fleet-truck-pin-img.is-selected{width:36px;height:44px;filter:drop-shadow(0 0 0 2px #fff) drop-shadow(0 2px 6px rgba(0,0,0,.55))}.fleet-truck-icon.is-selected{z-index:1200}.here-poi-icon{width:28px;height:34px;display:block;object-fit:contain;filter:drop-shadow(0 1px 3px rgba(0,0,0,.4))}.fleet-map-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:8px 10px;border-bottom:1px solid var(--border);background:#0f172a05}.fleet-company-select{width:auto;min-width:140px;max-width:180px;padding:6px 10px}.fleet-truck-marker{display:inline-flex;align-items:center;justify-content:center;min-width:44px;padding:2px 7px;border-radius:999px;font-size:11px;font-weight:700;line-height:1.2;color:#fff;background:#334155;border:2px solid #fff;box-shadow:0 1px 4px #0f172a59;white-space:nowrap}.fleet-truck-marker.company-sunway{background:#1d4ed8}.fleet-truck-marker.company-smartway{background:#15803d}.fleet-truck-marker.company-ilv{background:#b45309}.fleet-truck-marker.company-swc{background:#0369a1}.truck-company-badge.company-ilv{background:#ffedd5;color:#9a3412}.navpermit-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px;padding-top:2px}.dispatcher-tabs{display:flex;gap:6px;margin-bottom:16px;padding:4px;border-radius:var(--radius-sm);background:#fffffff0;border:1px solid var(--border-strong);box-shadow:0 2px 10px #0a2e1c1f;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.dispatcher-tab{flex:1;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:8px;padding:10px 12px;font-weight:700;font-size:.9rem;cursor:pointer;background:#f3f7f2f2;color:var(--text)}.dispatcher-tab.is-active{background:#fff;color:var(--primary-deep);box-shadow:0 1px 4px #0f172a29;border:1px solid rgba(15,77,44,.18)}.dispatcher-tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.25rem;height:1.25rem;margin-left:6px;padding:0 5px;border-radius:999px;background:#b91c1c;color:#fff;font-size:.72rem;font-weight:800}.dispatcher-live-panel{grid-template-columns:1fr;max-width:880px}.live-monitor{display:flex;flex-direction:column;gap:12px}.live-monitor-summary h3{margin-bottom:4px}.live-trip-card{background:#fffffff0;border:1px solid var(--border-strong);border-radius:var(--radius);padding:14px 16px}.live-trip-card.is-off,.live-trip-card.is-speed{border-color:#dc2626;box-shadow:0 0 0 1px #dc262633}.live-trip-card.is-stale{border-color:#d97706}.live-trip-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.live-trip-head h4{margin:0 0 2px;font-size:1.05rem}.live-status-pill{flex-shrink:0;font-size:.75rem;font-weight:800;border-radius:999px;padding:4px 10px;background:#dcfce7;color:#166534}.live-status-pill.is-off,.live-status-pill.is-speed{background:#fee2e2;color:#991b1b}.live-status-pill.is-stale,.live-status-pill.is-wait{background:#fef3c7;color:#92400e}.live-status-pill.is-assigned{background:#e0e7ff;color:#3730a3}.live-trip-route{margin:8px 0 4px}.live-trip-actions{margin:8px 0 12px}.live-violations h5{margin:0 0 6px;font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.live-violations-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.live-violation{display:flex;justify-content:space-between;gap:10px;padding:8px 10px;border-radius:8px;background:#f8fafc;border:1px solid var(--border)}.live-violation.is-speeding,.live-violation.is-off_route{background:#fef2f2;border-color:#fecaca}.live-violation.is-route_shortcut{background:#fffbeb;border-color:#fde68a}.live-violation-main{display:flex;flex-direction:column;gap:2px}.live-assigned-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.live-assigned-list li{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding-top:8px;border-top:1px solid var(--border)}.live-assigned-list li:first-child{padding-top:0;border-top:none}.dispatcher-tab-panel{display:grid;grid-template-columns:minmax(280px,420px) 1fr;gap:16px;align-items:start}@media (max-width: 900px){.dispatcher-tab-panel{grid-template-columns:1fr}}.dispatcher-card-panel h3{margin-top:0}.dispatcher-inline-truck{display:grid;gap:10px;padding:12px;border-radius:10px;background:#0f172a08;border:1px dashed var(--border-strong)}.dispatcher-entity-list{list-style:none;margin:0;padding:0}.dispatcher-entity-list li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--border)}.dispatcher-entity-list li:last-child{border-bottom:none}.dispatcher-entity-list li>div:first-child{display:flex;flex-direction:column;gap:2px}.driver-truck-pick{margin-top:6px;min-width:min(280px,100%)}.truck-card-driver{margin-top:4px}.truck-driver-select{padding:6px 8px;font-size:.85rem}.dispatcher-driver-row{align-items:flex-start}.dispatcher-fleet .dispatcher-tab-panel{flex:1;min-height:0;align-items:stretch;overflow:hidden}.dispatcher-fleet .dispatcher-card-panel{min-height:0;overflow:auto;margin-bottom:0}.dispatcher-roster-panel{min-height:0;display:flex;flex-direction:column;overflow:hidden;margin-bottom:0}.dispatcher-roster-hint{margin:0 0 10px}.dispatcher-roster-scroll{flex:1 1 auto;min-height:0;overflow:auto;padding-right:4px}.driver-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;padding-bottom:12px}.tms-card-stack{display:flex;flex-direction:column;gap:8px;padding-bottom:16px}.tms-entity-card{border:1px solid var(--border);border-radius:12px;background:#fff;overflow:hidden;transition:border-color .15s ease,box-shadow .15s ease}.tms-entity-card.is-open{border-color:#94a3b8;box-shadow:0 8px 24px #0f172a0f}.tms-entity-card.is-inactive{opacity:.78}.tms-entity-card.is-editing{border-color:var(--accent, #0f766e);box-shadow:0 0 0 1px var(--accent, #0f766e)}.tms-entity-summary{width:100%;display:flex;align-items:center;gap:12px;padding:12px 14px;border:0;background:transparent;text-align:left;cursor:pointer;font:inherit;color:inherit}.tms-entity-summary:hover{background:#0f172a08}.tms-entity-avatar{flex:0 0 auto;width:40px;height:40px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;background:#e2e8f0;color:#0f172a;font-weight:700;font-size:.95rem}.tms-entity-avatar-truck{background:#dbeafe;color:#1e3a8a;font-size:.78rem;letter-spacing:-.02em}.tms-entity-summary-main{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.tms-entity-title{font-weight:650;font-size:1rem;line-height:1.25}.tms-entity-sub{font-size:.82rem;color:var(--muted, #64748b);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tms-entity-summary-side{flex:0 0 auto;display:inline-flex;align-items:center;gap:8px}.tms-entity-chevron{color:#94a3b8;font-size:.85rem;width:1rem;text-align:center}.tms-entity-body{padding:0 14px 14px;border-top:1px solid rgba(148,163,184,.35);display:flex;flex-direction:column;gap:14px}.tms-detail-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px 14px;margin:12px 0 0}.tms-detail-grid>div{display:flex;flex-direction:column;gap:3px;min-width:0}.tms-detail-grid dt{font-size:.68rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted, #64748b)}.tms-detail-grid dd{margin:0;font-size:.9rem;word-break:break-word}.tms-detail-grid dd.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.8rem}.tms-assign-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.tms-module-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}.tms-module-panel{border:1px dashed #cbd5e1;border-radius:10px;padding:12px;background:#f8fafc}.tms-module-panel strong{display:block;margin-bottom:4px;font-size:.88rem}.tms-module-panel p{margin:0;font-size:.8rem;color:#64748b;line-height:1.35}.tms-module-panel.is-soon{opacity:.92}.tms-entity-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.driver-card{border:1px solid var(--border);border-radius:12px;padding:14px;background:#0f172a05;display:flex;flex-direction:column;gap:10px}.driver-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.driver-card-head h4{margin:0 0 4px;font-size:1.05rem}.driver-card-head p{margin:0}.driver-meta-chips{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 8px}.driver-role-pill,.driver-immigration-pill{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:.72rem;font-weight:600;letter-spacing:.02em;line-height:1.4}.driver-role-pill{background:#1e3a5f1a;color:#1e3a5f}.driver-immigration-pill.is-green{background:#16a34a24;color:#15803d}.driver-immigration-pill.is-red{background:#dc262624;color:#b91c1c}.driver-immigration-pill.is-citizen{background:#2563eb1f;color:#1d4ed8}.driver-card-actions{margin-top:auto}.driver-list-wrap{min-width:0}.driver-list-table{min-width:760px}.driver-list-table .navpermit-input{min-width:140px;max-width:240px}.truck-fleet-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.truck-fleet-toolbar h3{margin:0}.truck-filter-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:16px}.truck-company-tabs{display:flex;flex-wrap:wrap;gap:6px}.truck-company-tab{border:1px solid var(--border-strong);background:#fffffff5;color:var(--text);border-radius:8px;padding:6px 12px;cursor:pointer;font:inherit;font-weight:600;box-shadow:0 1px 4px #0a2e1c14}.truck-company-tab.is-active{background:var(--accent, #0f766e);border-color:var(--accent, #0f766e);color:#fff}.truck-search{flex:1 1 180px;min-width:160px;max-width:280px}.truck-view-toggle{display:inline-flex;border:1px solid var(--border-strong);border-radius:8px;overflow:hidden;margin-left:auto}.truck-view-btn{border:none;background:#fffffff5;color:var(--text);padding:6px 12px;cursor:pointer;font:inherit;font-size:.88rem}.truck-view-btn+.truck-view-btn{border-left:1px solid var(--border-strong)}.truck-view-btn.is-active{background:var(--accent, #0f766e);color:#fff}.truck-list-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:12px}.truck-list-table{width:100%;border-collapse:collapse;font-size:.88rem;min-width:920px}.truck-list-table th,.truck-list-table td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--border);vertical-align:middle;white-space:nowrap}.truck-list-table th{font-size:.72rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted, #64748b);background:#0f172a08;position:sticky;top:0}.truck-list-table tbody tr:hover{background:#0f172a08}.truck-list-table tr.is-inactive{opacity:.7}.truck-list-table tr.is-editing{outline:1px solid var(--accent, #0f766e);outline-offset:-1px}.truck-list-table td.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem}.truck-list-actions{display:flex;gap:6px}.truck-excel-form{display:grid;gap:10px}.truck-excel-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.truck-excel-field{display:flex;flex-direction:column;gap:4px;font-size:.82rem;color:var(--muted, #64748b)}.truck-excel-flags{display:flex;flex-wrap:wrap;gap:14px;align-items:end}.truck-check{display:inline-flex;align-items:center;gap:6px;font-size:.9rem}.truck-form-actions{display:flex;gap:8px;flex-wrap:wrap}.truck-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.truck-card{border:1px solid var(--border);border-radius:12px;padding:14px;background:#0f172a05;display:flex;flex-direction:column;gap:10px}.truck-card.is-inactive{opacity:.72}.truck-card.is-editing{border-color:var(--accent, #0f766e);box-shadow:0 0 0 1px var(--accent, #0f766e)}.truck-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.truck-card-head h4{margin:4px 0 0;font-size:1.05rem}.truck-company-badge{display:inline-block;font-size:.72rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;padding:2px 8px;border-radius:999px;background:#e2e8f0;color:#334155}.truck-company-badge.company-sunway{background:#ede9fe;color:#5b21b6}.truck-company-badge.company-smartway{background:#ffe4e6;color:#9f1239}.truck-company-badge.company-swc{background:#e0f2fe;color:#075985}.truck-status-pill{font-size:.75rem;padding:3px 8px;border-radius:999px;background:#fee2e2;color:#991b1b;white-space:nowrap}.truck-status-pill.is-active{background:#dcfce7;color:#166534}.truck-card-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px 10px;margin:0}.truck-card-fields>div{display:flex;flex-direction:column;gap:2px;min-width:0}.truck-card-fields dt{font-size:.7rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted, #64748b)}.truck-card-fields dd{margin:0;font-size:.88rem;word-break:break-word}.truck-card-fields dd.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem}.truck-card-actions{display:flex;gap:8px;margin-top:auto}.dispatcher-entity-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.navpermit-header.compact h1{font-size:1.35rem}.navpermit-header-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;justify-content:flex-end}.navpermit-header h1{margin:6px 0 0;font-size:1.65rem;font-weight:800;letter-spacing:-.02em;background:linear-gradient(135deg,#14532d,#16a34a);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.navpermit-kicker{margin:0;font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--primary)}.navpermit-link-btn,.navpermit-btn{border:none;border-radius:var(--radius-sm);padding:11px 18px;font-weight:600;font-size:.9rem;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;transition:transform .15s,box-shadow .15s,background .15s,border-color .15s}.navpermit-btn.primary,.navpermit-link-btn{background:linear-gradient(135deg,var(--primary-dark) 0%,var(--primary-deep) 100%);color:#fff;border:1px solid rgba(201,162,39,.35);box-shadow:0 4px 14px #0a2e1c59}.navpermit-btn:disabled,.navpermit-btn.primary:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none;filter:grayscale(.35)}.navpermit-btn.primary:hover,.navpermit-link-btn:hover{transform:translateY(-1px);box-shadow:0 6px 20px #0a2e1c73,0 0 0 1px #d4af3740;color:#fff}.navpermit-btn.primary:disabled:hover{transform:none;box-shadow:none;color:#fff}.navpermit-btn.secondary{background:#fff;color:var(--text);border:1px solid var(--border-strong);box-shadow:0 1px 3px #14532d0f}.navpermit-btn.secondary:hover{border-color:var(--primary);background:#f0fdf4}.navpermit-btn.block{width:100%}.navpermit-btn.large{padding:16px 20px;font-size:1rem}.navpermit-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.dispatcher-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px}.dispatcher-grid.dispatcher-routes-layout{grid-template-columns:minmax(0,1fr) 520px;gap:12px}@media (max-width: 900px){.dispatcher-grid{grid-template-columns:1fr}}.navpermit-map-section,.driver-map-section{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:var(--bg-elevated);box-shadow:var(--shadow)}.navpermit-map-wrap,.navpermit-map-wrap .leaflet-container{background:#e8f5e9}.navpermit-hint,.navpermit-muted{color:var(--muted)}.navpermit-muted.small.map-click-hint{margin:8px 10px 0;padding:8px 10px;border-radius:8px;background:#0f172a0a;border:1px dashed var(--border-strong)}.map-here-confirm-pin{background:transparent;border:none}.map-here-confirm-dot{display:block;width:16px;height:16px;border-radius:50%;background:#0f172a;border:2px solid #fff;box-shadow:0 1px 4px #0f172a73}.map-here-confirm-popup .leaflet-popup-content-wrapper{border-radius:10px;padding:2px 4px}.map-here-confirm-popup .leaflet-popup-content{margin:10px 12px;min-width:0}.map-here-confirm{display:flex;flex-direction:column;align-items:center;gap:8px;font-size:.92rem;color:#0f172a}.map-here-confirm-actions{display:flex;gap:8px}.map-here-confirm-yes,.map-here-confirm-no{border:0;border-radius:8px;padding:6px 14px;font-weight:600;font-size:.85rem;cursor:pointer}.map-here-confirm-yes{background:#16a34a;color:#fff}.map-here-confirm-no{background:#e2e8f0;color:#0f172a}.map-here-confirm-yes:hover{background:#15803d}.map-here-confirm-no:hover{background:#cbd5e1}.map-here-confirm-del{background:#dc2626;color:#fff}.map-here-confirm-del:hover{background:#b91c1c}.route-swatch{display:inline-block;width:.85rem;height:.35rem;border-radius:2px;vertical-align:middle;margin-right:.15rem}.route-swatch.is-red{background:#ef4444}.route-swatch.is-green{background:#22c55e}.navpermit-hint{padding:12px 14px;margin:0;font-size:.88rem}.navpermit-panel{background:#fffffff5;border:1px solid rgba(13,61,36,.16);border-radius:var(--radius);padding:18px;margin-bottom:14px;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:var(--shadow)}.navpermit-panel h3{margin:0 0 10px;font-size:1.05rem;font-weight:700;color:var(--accent)}.success-panel{border-color:var(--border-strong);background:linear-gradient(135deg,#ecfdf5,#fff);box-shadow:var(--shadow),var(--shadow-glow)}.connection-panel{border-color:var(--border-strong);background:linear-gradient(135deg,#f0fdf4,#fff)}.connection-url{font-family:ui-monospace,monospace;word-break:break-all;margin:8px 0;color:var(--primary)}.navpermit-label{display:block;margin:12px 0 6px;font-size:.8rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.navpermit-input,.navpermit-textarea,select.navpermit-input{width:100%;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:#fff;color:var(--text);padding:12px 14px;font:inherit;transition:border-color .15s,box-shadow .15s;box-shadow:inset 0 1px 2px #14532d0a}.navpermit-input:focus,select.navpermit-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow)}.navpermit-code{display:block;word-break:break-all;background:#f0fdf4;border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px;margin:12px 0;font-size:.8rem;color:var(--primary-dark)}.navpermit-message{padding:12px 14px;border-radius:var(--radius-sm);background:#ecfdf5;border:1px solid var(--border-strong);color:var(--primary-deep)}.navpermit-message.danger{background:#fef2f2;border-color:#dc262640;color:#b91c1c}.navpermit-stat{font-size:1.15rem;font-weight:800;margin:8px 0;color:var(--primary)}.navpermit-progress{color:var(--primary)}.small{font-size:.8rem}.navpermit-steps{list-style:none;margin:0;padding:0}.navpermit-steps li{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid var(--border);color:var(--muted)}.navpermit-steps li:last-child{border-bottom:none}.navpermit-steps li.active{color:var(--text);font-weight:600}.navpermit-steps li.done{color:#9ca3af}.navpermit-step-num{width:28px;height:28px;border-radius:999px;background:#f0fdf4;border:1px solid var(--border);display:inline-flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;flex-shrink:0}.navpermit-steps li.active .navpermit-step-num{background:linear-gradient(135deg,var(--primary-dark),var(--primary-deep));border-color:transparent;color:#fff;box-shadow:0 2px 8px #16a34a66}.navpermit-route-list{list-style:none;margin:0;padding:0}.navpermit-route-list li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid var(--border)}.navpermit-route-list li:last-child{border-bottom:none}.history-list li{align-items:flex-start}.navpermit-inline-actions{display:flex;gap:10px;align-items:center}.navpermit-inline-actions button,.navpermit-route-list button{background:none;border:none;color:var(--danger);cursor:pointer;font-weight:600;font-size:.85rem}.navpermit-status-bar{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:14px 16px;border-radius:var(--radius);margin-bottom:14px;border:1px solid var(--border);background:var(--panel);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.navpermit-status-bar.ok{background:#ecfdf5;border-color:var(--border-strong)}.navpermit-status-bar.danger{background:#fef2f2;border-color:#dc262640}.navpermit-status-bar.neutral{background:#f8fafc}.navpermit-status-bar strong{display:block;font-weight:700}.navpermit-status-bar span{color:var(--muted);font-size:.85rem}.navpermit-pills{display:flex;gap:8px;flex-wrap:wrap}.pill{padding:5px 12px;border-radius:999px;background:#fff;border:1px solid var(--border);font-size:.72rem;font-weight:600}.pill.ok{color:var(--primary-dark);border-color:var(--border-strong);background:#ecfdf5}.pill.warn{color:var(--warning);background:#fffbeb}.navpermit-next-step{background:linear-gradient(135deg,#ecfdf5,#fff);border:1px solid var(--border-strong);border-radius:var(--radius);padding:16px;margin-bottom:14px;box-shadow:var(--shadow-glow)}.navpermit-next-step h2{margin:6px 0;font-size:1.15rem;font-weight:700}.driver-controls{margin:14px 0}.center{text-align:center;padding-top:48px}.navpermit-waypoint-dot{width:12px;height:12px;border-radius:999px;background:var(--warning);border:2px solid white;box-shadow:0 0 0 2px #fbbf2459}.navpermit-waypoint-marker{display:flex;align-items:center;gap:6px;white-space:nowrap;pointer-events:none}.navpermit-waypoint-num{flex:0 0 auto;min-width:22px;height:22px;padding:0 5px;border-radius:999px;background:#f59e0b;color:#111;font-size:12px;font-weight:800;line-height:22px;text-align:center;border:2px solid #fff;box-shadow:0 1px 4px #00000059}.navpermit-waypoint-label{max-width:190px;overflow:hidden;text-overflow:ellipsis;padding:3px 8px;border-radius:6px;background:#0f172ae0;color:#f8fafc;font-size:11px;font-weight:600;line-height:1.25;border:1px solid rgba(248,250,252,.18);box-shadow:0 1px 4px #0000004d}.map-waypoint-legend{margin-top:10px;max-height:200px}.navpermit-driver-dot{width:18px;height:18px;border-radius:999px;background:var(--primary);border:3px solid white;box-shadow:0 0 0 4px var(--primary-glow);animation:driver-pulse 2s ease infinite}.navpermit-driver-chevron{width:36px;height:36px;display:grid;place-items:center;filter:drop-shadow(0 2px 4px rgba(0,0,0,.45));transform-origin:50% 50%;will-change:transform}.navpermit-driver-chevron span{width:0;height:0;border-left:12px solid transparent;border-right:12px solid transparent;border-bottom:26px solid #0ea5e9}.navpermit-driver-icon.nav-driver .navpermit-driver-chevron{width:48px;height:48px}.navpermit-driver-icon.nav-driver .navpermit-driver-chevron span{border-left-width:16px;border-right-width:16px;border-bottom-width:34px;border-bottom-color:#0284c7}.navpermit-driver-icon.nav-driver.is-off-route .navpermit-driver-chevron span{border-bottom-color:#ef4444}.navpermit-driver-arrow{width:0;height:0;margin:2px auto 0;border-left:11px solid transparent;border-right:11px solid transparent;border-bottom:22px solid #0ea5e9;filter:drop-shadow(0 1px 2px rgba(0,0,0,.45));position:relative}.navpermit-driver-arrow:after{content:"";position:absolute;left:-7px;top:6px;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:14px solid #e0f2fe}@keyframes driver-pulse{0%,to{box-shadow:0 0 0 4px var(--primary-glow)}50%{box-shadow:0 0 0 10px #4ade801f}}.navpermit-waypoint-icon,.navpermit-driver-icon{background:transparent;border:none}.waypoint-list{list-style:none;margin:0 0 12px;padding:0;max-height:160px;overflow-y:auto}.waypoint-list li{display:flex;justify-content:space-between;gap:8px;padding:8px 0;border-bottom:1px solid var(--border);font-size:.85rem}.waypoint-list li:last-child{border-bottom:none}.waypoint-list button{background:none;border:none;color:var(--danger);cursor:pointer}.workflow-panel{margin-bottom:16px}.navpermit-workflow{margin:8px 0 0;padding-left:20px;color:var(--muted);font-size:.9rem}.navpermit-map-wrap .leaflet-control-scale{margin-bottom:8px;margin-right:8px}.navpermit-map-wrap .leaflet-control-scale-line{border-color:#0f172abf;color:#0f172a;background:#ffffffe0;font-weight:600;line-height:1.15;padding:1px 4px 0}.navpermit-map-wrap{position:relative;z-index:0;isolation:isolate}.navpermit-map-error{display:flex;align-items:center;justify-content:center;background:#f8fafc;color:#b91c1c;font-weight:600;padding:16px;text-align:center}.map-with-gps-overlay{position:relative}.gps-overlay{position:absolute;top:12px;left:12px;z-index:1000;padding:8px 14px;border-radius:999px;font-size:.8rem;font-weight:600;background:#fffffff2;border:1px solid var(--border-strong);box-shadow:var(--shadow);pointer-events:none}.gps-overlay.ok{border-color:var(--primary);color:var(--primary-dark)}.gps-overlay.pulse{animation:gps-pulse 1.5s ease-in-out infinite;color:var(--warning)}@keyframes gps-pulse{0%,to{opacity:1}50%{opacity:.55}}.navpermit-btn.active-toggle{border-color:var(--primary);color:var(--primary-dark);background:#ecfdf5}.navpermit-btn.small-btn{margin-top:8px;padding:10px;font-size:.85rem}.driver-controls .navpermit-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.driver-nav-fullscreen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:flex;flex-direction:column;overflow:hidden}.driver-nav-fullscreen.is-immersive{display:block;background:#000}body.nav-immersive-active{overflow:hidden;overscroll-behavior:none;touch-action:none;background:#000}body.nav-immersive-active:before{background:#000}body.nav-immersive-active #root{height:100%;overflow:hidden}.driver-nav-fullscreen.nav-theme-day{--nav-bg: transparent;--nav-hud: transparent;--nav-hud-border: rgba(255, 255, 255, .18);--nav-text: #f8fafc;--nav-muted: rgba(248, 250, 252, .78);--nav-accent: #5eead4;--nav-accent-soft: rgba(15, 23, 42, .35);--nav-card: rgba(15, 23, 42, .48);--nav-danger: #fecaca;--nav-danger-bg: rgba(127, 29, 29, .55);--nav-shadow: 0 8px 28px rgba(0, 0, 0, .35);background:#000;color:var(--nav-text)}.driver-nav-fullscreen.nav-theme-night{--nav-bg: transparent;--nav-hud: transparent;--nav-hud-border: rgba(148, 163, 184, .22);--nav-text: #f8fafc;--nav-muted: rgba(226, 232, 240, .75);--nav-accent: #2dd4bf;--nav-accent-soft: rgba(45, 212, 191, .14);--nav-card: rgba(2, 6, 23, .52);--nav-danger: #fca5a5;--nav-danger-bg: rgba(127, 29, 29, .6);--nav-shadow: 0 10px 32px rgba(0, 0, 0, .45);background:#000;color:var(--nav-text)}.driver-nav-hud-top{position:absolute;top:0;left:0;right:0;z-index:3;flex-shrink:0;padding:max(10px,var(--safe-top)) max(12px,var(--safe-right)) 28px max(12px,var(--safe-left));background:linear-gradient(to bottom,#000000b8,#00000059 55%,#0000);border-bottom:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;pointer-events:none}.driver-nav-hud-top>*{pointer-events:auto}.driver-nav-hud-top.is-danger{background:linear-gradient(to bottom,#7f1d1dd9,#7f1d1d59 60%,#7f1d1d00);border-bottom-color:transparent}.driver-nav-hud-row{display:flex;align-items:center;gap:8px;margin-bottom:10px}.driver-nav-route-name{flex:1;min-width:0;font-size:.78rem;font-weight:600;color:var(--nav-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.driver-nav-theme-badge{flex-shrink:0;font-size:.65rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:4px 8px;border-radius:999px;background:var(--nav-accent-soft);color:var(--nav-accent)}.driver-nav-exit,.driver-nav-expand{flex-shrink:0;border:1px solid rgba(255,255,255,.22);background:#0f172a73;color:#f8fafc;border-radius:999px;padding:8px 14px;font-size:.8rem;font-weight:700;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.driver-nav-expand{border-color:#2dd4bf73;color:#5eead4}.driver-nav-next-card{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center;padding:12px 14px;border-radius:18px;background:var(--nav-card);border:1px solid var(--nav-hud-border);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:var(--nav-shadow)}.driver-nav-maneuver-stack{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:84px}.driver-nav-maneuver-stack .driver-nav-distance{margin:0;font-size:1.35rem;text-align:center}.nav-maneuver-icon{width:76px;height:76px;border-radius:20px;display:grid;place-items:center;background:transparent;color:#fff;padding:0;overflow:hidden}.nav-maneuver-icon img{width:100%;height:100%;object-fit:contain;display:block}.nav-theme-night .nav-maneuver-icon{background:transparent;color:#042f2e}.driver-nav-fullscreen.is-off-route .nav-maneuver-icon{background:transparent;color:#fff}.driver-nav-next-copy{min-width:0}.driver-nav-kicker{margin:0;font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--nav-accent)}.driver-nav-distance{margin:2px 0 0;font-size:1.55rem;font-weight:800;line-height:1.1;color:var(--nav-text);letter-spacing:-.02em}.driver-nav-instruction{margin:4px 0 0;font-size:1.08rem;line-height:1.3;font-weight:700;color:var(--nav-text);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.nav-lane-guide{margin-top:10px}.nav-lane-guide-single{display:inline-flex;align-items:center;gap:10px;padding:6px 10px 6px 6px;border-radius:12px;background:#020617b8;border:1px solid rgba(255,255,255,.14)}.nav-lane-guide-track{display:inline-flex;align-items:stretch;gap:4px;padding:6px 8px;border-radius:12px;background:#020617b8;border:1px solid rgba(255,255,255,.14)}.nav-lane-slot{width:44px;min-height:48px;border-radius:10px;display:flex;align-items:center;justify-content:center}.nav-lane-slot.is-active{background:linear-gradient(180deg,#38bdf8,#0284c7);color:#fff;box-shadow:0 0 0 1px #7dd3fc8c,0 4px 12px #0ea5e959}.nav-lane-guide-label{font-size:.82rem;font-weight:700;color:#f8fafce6}.nav-lane-arrow{display:block}.driver-nav-approach-meta{margin:6px 0 0;font-size:.82rem;color:var(--nav-muted)}.nav-theme-day .driver-nav-next-card{box-shadow:var(--nav-shadow)}.driver-nav-map{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;isolation:isolate;overflow:hidden;background:#0f172a}.nav-theme-night .driver-nav-map{background:#020617}.driver-nav-map .navpermit-map-wrap,.driver-nav-map .leaflet-container{height:100%!important;width:100%!important;transform:none!important}.nav-map-navigation .leaflet-control-container{display:none}.nav-map-navigation.navpermit-map-wrap{overflow:hidden;background:transparent;position:relative}.nav-map-navigation .leaflet-container{background:#0f172a}.nav-heading-up-clip{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;background:#0f172a}.nav-heading-up-clip.is-map-3d{perspective:1100px;perspective-origin:50% 85%}.nav-heading-up-rotator{position:absolute;left:50%;top:50%;width:160vmax;height:160vmax;transform:translate(-50%,-50%) rotate(0);transform-origin:50% 50%;transition:transform .35s ease-out;will-change:transform;transform-style:preserve-3d}.nav-heading-up-rotator .leaflet-container,.nav-heading-up-rotator .navpermit-map-wrap{width:100%!important;height:100%!important}.navpermit-truck-wrap,.navpermit-truck-img{display:block;width:100%;height:100%;object-fit:contain;transform-origin:50% 70%;pointer-events:none;filter:drop-shadow(0 2px 4px rgba(0,0,0,.45))}.navpermit-dest-icon{background:transparent!important;border:none!important}.navpermit-dest-icon img{width:44px;height:44px;display:block;filter:drop-shadow(0 2px 4px rgba(0,0,0,.4))}.driver-nav-recenter{position:absolute;bottom:calc(96px + env(safe-area-inset-bottom));right:16px;z-index:1000;width:52px;height:52px;padding:8px;border-radius:999px;font-weight:700;background:#0f172a8c;color:#5eead4;border:1px solid rgba(255,255,255,.18);box-shadow:var(--nav-shadow);cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:grid;place-items:center}.driver-nav-compass-btn{position:absolute;bottom:calc(160px + env(safe-area-inset-bottom));right:16px;z-index:1000;padding:10px 14px;border-radius:999px;font-weight:700;font-size:.85rem;background:#0f172ab8;color:#fef3c7;border:1px solid rgba(255,255,255,.2);box-shadow:var(--nav-shadow);cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.driver-nav-map-toggles{position:absolute;top:max(12px,calc(8px + var(--safe-top)));left:max(12px,var(--safe-left));z-index:1000;display:flex;gap:8px}.driver-map-section{position:relative}.driver-nav-map-toggles.is-preview{top:12px}.driver-nav-toggle{border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:8px 12px;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#e2e8f0;background:#0f172ab8;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer}.driver-nav-toggle.is-on{color:#052e16;background:#4ade80eb;border-color:transparent}.here-poi-marker{background:transparent!important;border:none!important}.here-poi-icon-wrap.is-selected,.here-poi-marker.is-selected .here-poi-icon-wrap{transform:scale(1.15);filter:drop-shadow(0 0 6px rgba(250,204,21,.95))}.driver-nav-pitstop-card,.driver-nav-pitstop-banner{position:absolute;left:max(12px,var(--safe-left));right:max(12px,var(--safe-right));z-index:5;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:16px;background:#0f172aeb;border:1px solid rgba(255,255,255,.18);box-shadow:0 12px 32px #0006;color:#f8fafc;pointer-events:auto}.driver-nav-pitstop-card,.driver-nav-pitstop-banner{bottom:max(118px,calc(100px + var(--safe-bottom)))}.driver-nav-pitstop-banner.phase-returning{background:#7f1d1deb;border-color:#fca5a573}.driver-nav-pitstop-banner.phase-at_stop{background:#082f49f0;border-color:#7dd3fc66}.driver-nav-pitstop-copy{min-width:0;flex:1}.driver-nav-pitstop-copy h3,.driver-nav-pitstop-copy strong{margin:0;font-size:1rem;font-weight:800;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.driver-nav-pitstop-kicker{margin:0 0 2px;font-size:.68rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#f8fafcb3}.driver-nav-pitstop-meta{margin:4px 0 0;font-size:.78rem;color:#e2e8f0c7;line-height:1.35}.driver-nav-pitstop-actions{display:flex;flex-direction:column;gap:6px;flex-shrink:0}.driver-nav-pitstop-actions .navpermit-btn{margin:0;padding:8px 12px;font-size:.82rem;white-space:nowrap}.nav-map-navigation .here-poi-pill{box-shadow:0 2px 8px #0000008c,0 0 0 2px #fffffff2}.here-poi-dot{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:var(--poi, #0f766e);color:#fff;font-size:11px;font-weight:800;letter-spacing:.02em;box-shadow:0 1px 4px #00000059,0 0 0 2px #ffffffe6;line-height:1}.driver-nav-recenter img{width:32px;height:32px;display:block}.driver-nav-hud-bottom{position:absolute;left:0;right:0;bottom:0;z-index:3;display:grid;grid-template-columns:1.6fr .9fr;gap:8px;padding:28px 14px max(14px,env(safe-area-inset-bottom));background:linear-gradient(to top,#000000c7,#0006 55%,#0000);border-top:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;pointer-events:none}.driver-nav-speed-gauges{position:absolute;top:max(58px,calc(48px + var(--safe-top)));right:max(12px,var(--safe-right));z-index:4;display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none}.driver-nav-gauge{width:64px;height:64px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1;box-shadow:0 6px 18px #0006}.driver-nav-gauge-current{background:#0f172ae0;border:3px solid rgba(255,255,255,.92);color:#f8fafc}.driver-nav-gauge-limit{position:relative;background:#fff;border:8px solid #e30613;color:#111;box-shadow:0 0 0 2px #fff,0 6px 16px #00000080}.driver-nav-limit-ring{display:none}.driver-nav-gauge-limit .driver-nav-gauge-value{position:relative;z-index:1;font-size:1.4rem;font-weight:900;font-family:Arial Black,Arial Narrow,Arial,Helvetica,sans-serif;letter-spacing:-.04em;color:#111}.driver-nav-gauge-limit.is-unknown{border-color:#94a3b8;color:#64748b;opacity:.85}.driver-nav-gauge-limit.is-unknown .driver-nav-gauge-value{color:#64748b}.driver-nav-speed-gauges.is-speeding .driver-nav-gauge-limit{border-color:#e30613;box-shadow:0 0 0 3px #fecaca,0 0 18px #e11d488c,0 6px 16px #00000073}.driver-nav-pitstop-btn{position:absolute;left:max(12px,var(--safe-left));bottom:max(118px,calc(100px + var(--safe-bottom)));z-index:5;border:1px solid rgba(255,255,255,.28);border-radius:999px;padding:12px 16px;font-size:.9rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#052e16;background:linear-gradient(135deg,#4ade80,#22c55e);box-shadow:0 8px 24px #0006;cursor:pointer}.driver-nav-pitstop-sheet{position:absolute;left:max(10px,var(--safe-left));right:max(10px,var(--safe-right));bottom:max(12px,var(--safe-bottom));z-index:6;max-height:min(62vh,520px);display:flex;flex-direction:column;gap:10px;padding:14px;border-radius:18px;background:#0f172af5;border:1px solid rgba(255,255,255,.16);box-shadow:0 16px 40px #00000080;color:#f8fafc}.driver-nav-pitstop-sheet-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.driver-nav-pitstop-sheet-head h3{margin:0;font-size:1.05rem}.driver-nav-pitstop-filters{display:flex;flex-wrap:wrap;gap:6px}.driver-nav-pitstop-filter{border:1px solid rgba(255,255,255,.18);background:#ffffff0f;color:#e2e8f0;border-radius:999px;padding:6px 10px;font-size:.75rem;font-weight:700;cursor:pointer}.driver-nav-pitstop-filter.is-active{background:#22c55e;border-color:transparent;color:#052e16}.driver-nav-pitstop-list{overflow:auto;display:flex;flex-direction:column;gap:6px;min-height:120px}.driver-nav-pitstop-item{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;text-align:left;width:100%;border:1px solid rgba(255,255,255,.1);background:#ffffff0d;color:inherit;border-radius:12px;padding:10px 12px;cursor:pointer}.driver-nav-pitstop-item:hover{background:#ffffff1a}.driver-nav-pitstop-kind{font-size:.65rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;padding:4px 7px;border-radius:999px;background:#0f766e;color:#fff}.driver-nav-pitstop-kind.kind-rest{background:#2563eb}.driver-nav-pitstop-kind.kind-weigh{background:#ca8a04}.driver-nav-pitstop-kind.kind-catscale{background:#ea580c}.driver-nav-pitstop-kind.kind-fuel{background:#0d9488}.driver-nav-pitstop-item-copy{min-width:0;display:flex;flex-direction:column;gap:2px}.driver-nav-pitstop-item-copy strong{font-size:.92rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.driver-nav-pitstop-item-copy small{font-size:.72rem;color:#e2e8f0b3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.driver-nav-pitstop-dist{font-size:.82rem;font-weight:800;color:#86efac}.driver-nav-pitstop-empty{margin:12px 4px;color:#e2e8f0bf;font-size:.9rem}.driver-nav-gauge-value{font-size:1.35rem;font-weight:900;letter-spacing:-.02em}.driver-nav-gauge-current .driver-nav-gauge-unit{margin-top:2px;font-size:.58rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#f8fafcbf}.driver-nav-gauge-current.is-over,.driver-nav-speed-gauges.is-speeding .driver-nav-gauge-current{background:#b91c1c;border-color:#fecaca;color:#fff;animation:nav-speed-pulse .85s ease-in-out infinite alternate}.driver-nav-road-wide{grid-column:auto}@media (min-width: 480px){.driver-nav-gauge{width:72px;height:72px}.driver-nav-gauge-value{font-size:1.5rem}.driver-nav-gauge-limit{border-width:9px}.driver-nav-gauge-limit .driver-nav-gauge-value{font-size:1.65rem}}.driver-nav-hud-bottom>*{pointer-events:auto}.driver-nav-hud-bottom.is-danger{background:linear-gradient(to top,#7f1d1de0,#7f1d1d66 60%,#7f1d1d00)}.driver-nav-stat{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 6px;border-radius:14px;background:#0f172a66;border:1px solid rgba(255,255,255,.12);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.driver-nav-stat.center-stat{border-left:1px solid rgba(255,255,255,.12);border-right:1px solid rgba(255,255,255,.12)}.driver-nav-speed-stat{align-items:stretch;padding:6px 8px}.driver-nav-speed-row{display:flex;align-items:center;justify-content:center;gap:8px}.driver-nav-speed-readout{display:flex;flex-direction:column;align-items:center;gap:1px;min-width:3.2rem}.driver-nav-speed-limit{width:46px;height:46px;border-radius:50%;background:#fff;border:3px solid #dc2626;box-shadow:0 0 0 2px #ffffffd9,0 4px 12px #00000059;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1;flex-shrink:0}.driver-nav-speed-limit-caption{font-size:.42rem;font-weight:800;letter-spacing:.04em;color:#0f172a;text-transform:uppercase}.driver-nav-speed-limit-value{font-size:.95rem;font-weight:900;color:#0f172a}.driver-nav-speed-limit.is-unknown{border-color:#94a3b8;opacity:.72}.driver-nav-speed-limit.is-over,.driver-nav-speed-stat.is-speeding .driver-nav-speed-limit{border-color:#fbbf24;box-shadow:0 0 0 2px #7f1d1d,0 0 16px #ef4444a6;animation:nav-speed-pulse .9s ease-in-out infinite alternate}.driver-nav-speed-stat.is-speeding .driver-nav-stat-value{color:#fecaca}.driver-nav-hud-bottom.is-speeding{background:linear-gradient(to top,#7f1d1de6,#7f1d1d73 55%,#7f1d1d00)}@keyframes nav-speed-pulse{0%{transform:scale(1)}to{transform:scale(1.06)}}.driver-nav-road-stat{min-width:0;padding-left:10px;padding-right:10px}.driver-nav-road-name{font-size:.92rem!important;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center}.nav-road-label-icon{background:transparent!important;border:none!important}.nav-road-label-chip{transform:translate(-50%,-50%);pointer-events:none;white-space:nowrap}.nav-road-label-chip span{display:inline-block;padding:3px 8px;border-radius:999px;background:#0f172ad1;border:1px solid rgba(255,255,255,.55);color:#f8fafc;font-size:11px;font-weight:800;letter-spacing:.02em;text-shadow:0 1px 2px rgba(0,0,0,.55);box-shadow:0 2px 8px #00000059}.nav-theme-day .nav-road-label-chip span{background:#0f172ac7}.driver-nav-stat-value{font-size:1.05rem;font-weight:800;color:var(--nav-text)}.driver-nav-stat-label{font-size:.62rem;color:var(--nav-muted);text-transform:uppercase;letter-spacing:.06em}.driver-nav-fullscreen.is-off-route .driver-nav-stat-value{color:var(--nav-danger)}.driver-nav-error{position:absolute;bottom:96px;left:14px;right:14px;z-index:3;padding:12px;border-radius:12px;background:#7f1d1deb;border:1px solid #ef4444;color:#fff;text-align:center;font-weight:600}.driver-nav-gps-hint{position:absolute;left:12px;right:12px;bottom:calc(100px + env(safe-area-inset-bottom));z-index:1000;padding:10px 12px;border-radius:12px;font-size:.82rem;font-weight:600;text-align:center;background:#0f172a8c;color:#f8fafc;border:1px solid rgba(255,255,255,.16);box-shadow:var(--nav-shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}@media (min-width: 720px){.driver-nav-next-card{grid-template-columns:88px 1fr;padding:14px 16px}.nav-maneuver-icon{width:88px;height:88px;padding:18px}.driver-nav-distance{font-size:1.85rem}.driver-nav-instruction{font-size:1.2rem}}.home-shell{max-width:760px;position:relative;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;justify-content:center;background:transparent;padding:max(16px,calc(12px + var(--safe-top))) max(16px,var(--safe-right)) max(24px,calc(16px + var(--safe-bottom))) max(16px,var(--safe-left));box-sizing:border-box}.home-hero{text-align:center;margin-bottom:32px;padding:32px 20px 20px;border-radius:var(--radius);background:linear-gradient(165deg,#0a2e1cf0,#0f4d2ce6 55%,#082416f5);border:1px solid rgba(212,175,55,.35);box-shadow:var(--shadow),0 0 0 1px #00000014}.home-hero .brand-mark{justify-content:center}.home-hero-sub{margin:14px 0 0;color:#e8d696d9;font-size:.85rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.brand-mark{display:inline-flex;flex-direction:column;align-items:center;gap:10px}.brand-mark.is-inline,.brand-mark.inline{flex-direction:row;align-items:center;gap:8px}.brand-mark-emblem{display:block;flex-shrink:0;object-fit:contain;filter:drop-shadow(0 2px 6px rgba(0,0,0,.25))}.brand-mark-logo{display:block;max-width:min(320px,86vw);height:auto;object-fit:contain;filter:drop-shadow(0 6px 16px rgba(0,0,0,.4))}.header-brand{margin-bottom:8px}.brand-mark-text{display:flex;flex-direction:column;align-items:center;line-height:1.05;gap:2px}.brand-mark.is-inline .brand-mark-text,.brand-mark.inline .brand-mark-text{align-items:flex-start}.brand-mark-sunway{font-weight:800;letter-spacing:.06em;color:var(--gold);text-shadow:0 1px 0 #000,0 0 18px rgba(212,175,55,.35)}.brand-mark-carriers{font-size:.42em;font-weight:700;letter-spacing:.18em;color:#e8d696}.brand-mark.is-inline .brand-mark-sunway,.brand-mark.inline .brand-mark-sunway{color:var(--primary-dark);text-shadow:none;font-size:1em;letter-spacing:.04em}.brand-mark.is-inline .brand-mark-carriers,.brand-mark.inline .brand-mark-carriers{color:var(--muted);letter-spacing:.12em;font-size:.55em}.home-logo{width:64px;height:64px;margin:0 auto 16px;border-radius:18px;background:linear-gradient(135deg,var(--primary-dark) 0%,var(--primary-deep) 100%);color:var(--gold);font-size:2rem;font-weight:800;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px #0a2e1c59}.home-hero h1{font-size:2rem;font-weight:800;letter-spacing:-.03em}.home-choose-lead{text-align:center;margin:0 0 18px;color:var(--muted);font-weight:600}.home-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}@media (max-width: 560px){.home-cards{grid-template-columns:1fr}}.home-card{display:block;padding:28px 22px;border-radius:var(--radius);border:1px solid rgba(13,61,36,.18);background:#fffffff5;text-decoration:none;color:var(--text);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 6px 22px #0a2e1c29;transition:transform .2s,border-color .2s,box-shadow .2s;position:relative;overflow:hidden}.home-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(212,175,55,.12) 0%,transparent 60%);opacity:0;transition:opacity .2s}.home-card:hover{border-color:#c9a22773;transform:translateY(-4px);box-shadow:var(--shadow),var(--shadow-glow)}.home-card:hover:before{opacity:1}.home-card h2{margin:14px 0 8px;font-size:1.25rem;font-weight:800}.home-card p{margin:0;font-size:.9rem;color:var(--muted);line-height:1.5}.home-card-badge{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:14px;font-size:.72rem;font-weight:800;letter-spacing:.06em}.dispatcher-card .home-card-badge,.driver-card .home-card-badge{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-deep) 100%);color:var(--gold);border:1px solid rgba(212,175,55,.4)}.header-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.map-region-select{display:inline-flex;align-items:center;gap:4px;padding:3px;border-radius:10px;background:#f1f5f9;border:1px solid var(--border, #e2e8f0)}.map-region-select-label{font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#64748b;padding:0 6px}.map-region-select button{border:none;background:transparent;color:#334155;font-size:.82rem;font-weight:600;padding:6px 10px;border-radius:8px;cursor:pointer;line-height:1.2}.map-region-select button.is-active{background:#fff;color:#14532d;box-shadow:0 1px 3px #14532d1f}.navpermit-link-btn.secondary-link{background:#fffffffa;border:1px solid var(--border-strong);color:var(--text);box-shadow:0 2px 8px #14532d1f}.driver-select-list{list-style:none;margin:0 0 18px;padding:0;display:flex;flex-direction:column;gap:12px}.driver-select-card{width:100%;display:flex;align-items:center;gap:16px;padding:16px 18px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);color:var(--text);cursor:pointer;text-align:left;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:border-color .15s,transform .15s,box-shadow .15s}.driver-select-card:hover{border-color:var(--primary);transform:translate(4px);box-shadow:var(--shadow-glow)}.driver-select-avatar{width:48px;height:48px;border-radius:14px;background:linear-gradient(135deg,var(--primary-dark),var(--primary-deep));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.15rem;flex-shrink:0;box-shadow:0 4px 12px #16a34a59}.driver-select-arrow{color:var(--primary);font-size:1.25rem;font-weight:700}.navpermit-live-banner{margin:8px 0 0;padding:8px 12px;border-radius:8px;background:#ecfdf5;border:1px solid var(--border-strong);font-size:.85rem;font-weight:600}.navpermit-live-banner .linkish{background:none;border:none;color:var(--primary-dark);font-weight:700;cursor:pointer;text-decoration:underline;padding:0}.waypoint-label-input{display:inline-block;width:min(100%,280px);padding:4px 8px;font-size:.85rem;margin:0 4px}.waypoint-edit-actions{display:flex;gap:4px;flex-shrink:0}.waypoint-edit-actions button{background:none;border:1px solid var(--border);border-radius:6px;padding:4px 8px;cursor:pointer;color:var(--text);font-size:.8rem}.waypoint-edit-actions button:disabled{opacity:.35;cursor:default}.driver-active-route h2{margin:6px 0 10px;font-weight:800}.driver-profile-card{margin-bottom:16px;padding:20px 18px;border-radius:var(--radius);background:#ffffffe6;border:1px solid rgba(13,61,36,.14);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.driver-profile-top{display:flex;align-items:center;gap:14px;margin-bottom:16px}.driver-profile-avatar{width:56px;height:56px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:1.4rem;font-weight:800;color:var(--gold);background:linear-gradient(145deg,var(--primary) 0%,var(--primary-deep) 100%);border:2px solid rgba(212,175,55,.45);flex-shrink:0}.driver-profile-name{margin:0 0 4px;font-size:1.25rem;font-weight:800}.driver-profile-status{margin:0;font-size:.8rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.driver-profile-status.is-busy{color:#b45309}.driver-profile-status.is-free{color:var(--success)}.driver-profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px;margin:0 0 16px}.driver-profile-grid dt{margin:0;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.driver-profile-grid dd{margin:2px 0 0;font-size:.98rem;font-weight:700;color:var(--text)}.driver-card-current{margin:0 0 16px;padding:12px 14px;border-radius:var(--radius-sm);background:#0f4d2c0f;border:1px solid rgba(13,61,36,.12)}.driver-card-current strong{display:block;margin:2px 0 4px;font-size:1.05rem}.driver-profile-card--compact{padding:14px 16px;margin-bottom:12px}.driver-profile-card--compact .driver-profile-top{margin-bottom:0}.driver-profile-card--compact .driver-profile-avatar{width:44px;height:44px;font-size:1.1rem}.driver-profile-card--compact .driver-profile-name{font-size:1.1rem}.driver-cabinet-section .navpermit-kicker{margin-bottom:4px}.driver-cabinet-section-title{margin:0 0 12px;font-size:1.15rem;font-weight:800}.driver-no-route-inline{text-align:left;padding:4px 0 8px}.driver-no-route-inline h3{margin:0 0 6px}.driver-history-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:4px}.driver-no-route{border-color:var(--border);text-align:center;padding:28px}.sync-status-banner{display:flex;flex-direction:column;gap:4px;padding:12px 16px;margin-bottom:16px;border-radius:var(--radius-sm);font-size:.85rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.sync-status-banner.sync-ok{background:#ecfdf5;border:1px solid var(--border-strong)}.sync-status-banner.sync-warn{background:#fffbeb;border:1px solid rgba(217,119,6,.3)}.sync-status-label{color:var(--muted);font-size:.75rem}.home-sync{margin-bottom:20px}.home-note{margin-top:8px}.driver-refresh-row{margin-bottom:14px}.permit-pdf-panel h3{margin-bottom:6px}.permit-slot{margin-top:14px;padding:12px;border:1px solid var(--border-strong);border-radius:var(--radius);background:#ffffff8c}.permit-slot+.permit-slot{margin-top:12px}.permit-slot.is-loaded{border-color:#86efac;background:linear-gradient(180deg,#dcfce78c,#ffffff80)}.permit-slot-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:4px;flex-wrap:wrap}.permit-slot-header-right{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.permit-slot-actions{display:flex;align-items:center;gap:10px}.permit-slot-actions .linkish.danger{color:#b91c1c}.permit-slot-badge{font-size:.78rem;font-weight:700;color:#166534;background:#dcfce7;border:1px solid #86efac;border-radius:999px;padding:3px 10px}.permit-slot-badge.is-partial{color:#92400e;background:#fef3c7;border-color:#fcd34d}.permit-slot.is-expired{border-color:#dc2626;box-shadow:0 0 0 1px #dc262640}.permit-slot.is-upcoming{border-color:#d97706}.permit-validity-alert{margin:8px 0 10px;padding:10px 12px;border-radius:8px;font-size:.9rem;line-height:1.35}.permit-validity-alert.is-expired{background:#fef2f2;border:1px solid #f87171;color:#991b1b}.permit-validity-alert.is-upcoming{background:#fffbeb;border:1px solid #fbbf24;color:#92400e}.permit-validity-ok{margin:6px 0 8px}.permit-validity-banner{margin:0 0 12px;padding:12px 14px;border-radius:10px;font-size:.92rem;line-height:1.4}.permit-validity-banner.is-expired{background:#7f1d1d;border:1px solid #dc2626;color:#fee2e2}.permit-validity-banner.is-upcoming{background:#78350f;border:1px solid #f59e0b;color:#fef3c7}.permit-validity-banner.is-provisional{background:#422006;border:1px solid #ca8a04;color:#fef3c7}.permit-review-open{margin-top:8px}.permit-review-empty{margin:8px 0 0}.permit-transition-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:16px;background:#020617b8}.permit-transition-modal{width:min(520px,100%);max-height:min(90vh,720px);overflow:auto;padding:16px 18px 18px;border-radius:12px;border:1px solid #475569;background:#0f172a;color:#e2e8f0;box-shadow:0 20px 50px #00000073}.permit-transition-modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.permit-transition-modal-head h4{margin:0;font-size:1.05rem}.permit-transition-modal-close{flex-shrink:0}.permit-transition-instruction{margin:0 0 10px;line-height:1.45}.permit-transition-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px 12px;margin:0 0 12px}.permit-transition-summary dt{margin:0;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:#94a3b8}.permit-transition-summary dd{margin:2px 0 0;font-weight:600}.permit-transition-warning{margin:0 0 12px;padding:10px 12px;border-radius:8px;border:1px solid #7c3aed;background:#7c3aed1f;color:#ddd6fe;font-size:.9rem}.permit-transition-candidates{display:grid;gap:8px;margin-bottom:12px}.permit-transition-candidate{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:10px;border:1px solid #334155;background:#111827;cursor:pointer}.permit-transition-candidate.is-selected{border-color:#8b5cf6;box-shadow:0 0 0 1px #8b5cf659}.permit-transition-candidate input{margin-top:4px}.permit-transition-candidate-body{display:grid;gap:2px}.permit-transition-actions{display:flex;flex-wrap:wrap;gap:8px}.permit-transition-error{margin:0 0 8px}.route-swatch.is-preview{background:linear-gradient(90deg,#6366f1 50%,transparent 50%) 0 0 / 8px 2px repeat-x;border:1px solid #8b5cf6}@media (max-width: 640px){.permit-transition-modal{width:100%;max-height:92vh;padding:14px}.permit-transition-actions{flex-direction:column}.permit-transition-actions .navpermit-btn{width:100%}}.permit-review-panel{margin:12px 0;padding:14px;border:1px solid var(--border, #334155);border-radius:10px}.permit-review-layout{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(280px,1.3fr);gap:12px}.permit-review-list{display:flex;flex-direction:column;gap:6px}.permit-review-list button{display:flex;flex-direction:column;align-items:flex-start;gap:3px;text-align:left}.permit-review-list button.is-selected{outline:2px solid currentColor}.permit-review-detail{display:grid;gap:8px}.permit-review-detail label{display:grid;gap:4px}.permit-review-detail textarea{width:100%;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px}@media (max-width: 760px){.permit-review-layout{grid-template-columns:1fr}}.app-update-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200000;display:flex;align-items:center;justify-content:center;padding:24px;background:#050a089e;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);pointer-events:auto}.app-update-card{width:min(420px,100%);background:#0f1714;border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:28px 24px;text-align:center;box-shadow:0 24px 60px #00000073;color:#e8efeb}.app-update-card h2{margin:0 0 10px;font-size:1.35rem}.app-update-card p{margin:0 0 20px;color:#a8b5af;line-height:1.45}.app-update-btn{min-width:200px;font-size:1.05rem;padding:12px 20px}.app-update-hint{margin:12px 0 0;font-size:.85rem;color:#a8b5af}.permit-add-btn{width:100%;margin-top:12px}.permit-upload-lead{margin-bottom:10px}.permit-dropzone.is-dragover{border-color:var(--primary);background:#dcfce7}.permit-loaded-list{margin-top:16px;padding-top:12px;border-top:1px solid var(--border-strong)}.permit-loaded-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:8px}.permit-loaded-empty{margin:0}.permit-loaded-ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.permit-loaded-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--border-strong);border-radius:var(--radius);background:#ffffff8c}.permit-loaded-row.is-loaded{border-color:#86efac;background:linear-gradient(180deg,#dcfce78c,#ffffff80)}.permit-loaded-row.is-partial{border-color:#fcd34d;background:#fffbeb}.permit-loaded-row.is-expired{border-color:#dc2626;box-shadow:0 0 0 1px #dc262640}.permit-loaded-row.is-upcoming{border-color:#d97706}.permit-loaded-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.permit-loaded-meta,.permit-loaded-files{margin:3px 0 0}.permit-loaded-warn{margin:4px 0 0;color:#92400e;font-size:.82rem}.permit-loaded-remove{flex-shrink:0}.permit-expired-flag,.permit-upcoming-flag{font-size:.72rem;font-weight:700;border-radius:999px;padding:2px 8px}.permit-expired-flag{color:#991b1b;background:#fee2e2}.permit-upcoming-flag{color:#92400e;background:#fef3c7}.permit-slot-details{margin-top:8px;font-size:.85rem}.permit-slot-details summary{cursor:pointer;color:var(--muted)}.permit-import-tabs{display:flex;gap:8px;margin:12px 0 10px}.permit-import-tab{flex:1;padding:10px 12px;border:1px solid var(--border-strong);border-radius:var(--radius);background:#fff;color:var(--text);font-weight:700;font-size:.88rem;cursor:pointer}.permit-import-tab.is-active{background:linear-gradient(135deg,#dcfce7,#bbf7d0);border-color:var(--primary);color:var(--primary-dark)}.permit-import-tab:disabled{opacity:.6;cursor:not-allowed}.permit-paste-block{margin-top:4px}.permit-paste-textarea{min-height:180px;resize:vertical;font-family:inherit;line-height:1.45;font-size:.88rem}.permit-paste-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.permit-paste-actions .navpermit-btn{flex:1;min-width:120px}.permit-dropzone{display:flex;flex-direction:column;align-items:center;gap:6px;padding:24px 16px;margin-top:10px;border:2px dashed var(--border-strong);border-radius:var(--radius);background:#f0fdf4;cursor:pointer;text-align:center;transition:border-color .15s,background .15s,box-shadow .15s}.permit-dropzone:hover:not(.is-busy){border-color:var(--primary);background:#ecfdf5;box-shadow:var(--shadow-glow)}.permit-dropzone.is-busy{opacity:.7;cursor:wait}.permit-file-input{display:none}.permit-dropzone-icon{width:48px;height:48px;border-radius:12px;background:linear-gradient(135deg,#dcfce7,#bbf7d0);color:var(--primary-dark);font-weight:800;font-size:.85rem;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-strong)}.permit-progress{margin-top:10px;font-size:.85rem}.permit-preview{margin-top:14px;padding-top:12px;border-top:1px solid var(--border)}.permit-step-preview{margin:8px 0 12px;padding-left:20px;font-size:.82rem;color:var(--text);max-height:180px;overflow-y:auto}.permit-step-preview li{margin-bottom:6px;line-height:1.35}.permit-steps-textarea{min-height:140px;resize:vertical;font-family:inherit;line-height:1.4}.driver-start-nav{margin-bottom:14px}.driver-start-nav .navpermit-btn.block{width:100%}.address-ab-fields{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.address-ab-fields .navpermit-label{margin-top:4px}.navpermit-error{color:#b91c1c;margin:0}.address-autocomplete,.address-autocomplete-input-wrap{position:relative}.address-autocomplete-spinner{position:absolute;right:10px;top:50%;width:14px;height:14px;margin-top:-7px;border:2px solid #94a3b8;border-top-color:#0f766e;border-radius:50%;animation:address-spin .7s linear infinite}@keyframes address-spin{to{transform:rotate(360deg)}}.address-suggest-list{list-style:none;margin:4px 0 0;padding:4px 0;position:absolute;left:0;right:0;z-index:40;max-height:220px;overflow-y:auto;background:#fff;border:1px solid var(--border-strong, #cbd5e1);border-radius:8px;box-shadow:0 8px 24px #0f172a1f;pointer-events:auto}.address-ab-fields{position:relative;z-index:2;overflow:visible}.address-suggest-list button{display:block;width:100%;text-align:left;border:0;background:transparent;padding:10px 12px;font:inherit;font-size:.88rem;color:#0f172a;cursor:pointer;line-height:1.35}.address-suggest-list button:hover,.address-suggest-list button.is-active{background:#ecfdf5;color:#0f766e}.driver-self-route-layout{display:grid;gap:12px;grid-template-columns:1fr;min-height:0;flex:1}.driver-self-route-map{height:min(52vh,420px);border-radius:12px;overflow:hidden;border:1px solid var(--border-strong, #cbd5e1)}.driver-self-route-controls .driver-self-route-actions{display:grid;gap:8px;grid-template-columns:1fr 1fr;margin:10px 0 12px}.driver-self-route-controls .driver-self-route-actions .navpermit-btn.primary{grid-column:1 / -1}.navpermit-route-list.compact li{padding:6px 0}@media (min-width: 900px){.driver-self-route-layout{grid-template-columns:1.4fr 1fr;align-items:stretch}.driver-self-route-map{height:min(70vh,560px)}}.auth-shell{max-width:440px}.auth-card{display:grid;gap:14px;padding:22px;border-radius:var(--radius);border:1px solid rgba(13,61,36,.16);background:#fffffff5;box-shadow:var(--shadow)}.auth-label{display:grid;gap:6px;font-size:.82rem;font-weight:700;color:var(--muted)}.auth-label input,.admin-form input,.admin-form select{width:100%;padding:10px 12px;border-radius:10px;border:1px solid var(--border, #e2e8f0);font:inherit;color:var(--text);background:#fff}.auth-submit{width:100%;margin-top:4px}.auth-hint{margin:0;font-size:.8rem;color:var(--muted);text-align:center}.auth-error{margin:0;color:#b91c1c;font-size:.88rem;font-weight:600}.banner-error{margin:0 0 12px;padding:10px 12px;border-radius:10px;background:#fef2f2;border:1px solid #fecaca}.auth-loading{display:grid;place-items:center;min-height:40vh}.auth-signed-as{margin:10px 0 0;font-size:.9rem;color:var(--muted)}.auth-user-chip{font-size:.78rem;font-weight:600;color:var(--muted);max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-footer-actions{display:flex;justify-content:center;margin-top:8px}.admin-card .home-card-badge{background:linear-gradient(135deg,#0f172a,#1e293b);color:#f8fafc;border:1px solid rgba(212,175,55,.35)}.admin-users-shell{max-width:none;width:min(1600px,calc(100vw - 24px));min-height:calc(100vh - 32px)}.admin-users-layout{display:grid;gap:16px;grid-template-columns:minmax(0,1.7fr) minmax(320px,.9fr);align-items:start}@media (max-width: 1100px){.admin-users-layout{grid-template-columns:1fr}}.admin-side{display:grid;gap:16px}.admin-panel-accounts{min-height:min(70vh,720px);display:flex;flex-direction:column}.admin-panel-accounts .admin-table-wrap{flex:1;min-height:420px;overflow:auto}.admin-users-grid{display:grid;gap:16px;grid-template-columns:1.4fr 1fr}@media (max-width: 900px){.admin-users-grid{grid-template-columns:1fr}}.admin-driver-login-list{list-style:none;margin:0;padding:0;display:grid;gap:8px;max-height:min(42vh,380px);overflow:auto}.admin-driver-login-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid var(--border, #e2e8f0);border-radius:10px;background:#fff}.admin-driver-login-row>div{display:grid;gap:2px;min-width:0}.admin-driver-login-row .navpermit-btn{flex-shrink:0;white-space:nowrap}.admin-login-badge{flex-shrink:0;font-size:.75rem;font-weight:700;color:#166534;background:#dcfce7;border-radius:999px;padding:4px 10px}.admin-panel{padding:16px;border-radius:var(--radius);border:1px solid var(--border, #e2e8f0);background:#ffffffeb;box-shadow:var(--shadow)}.admin-panel h2{margin:0 0 12px;font-size:1.1rem}.admin-panel-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.admin-panel-head h2{margin:0}.admin-table-wrap{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;font-size:.88rem}.admin-table th,.admin-table td{text-align:left;padding:8px 6px;border-bottom:1px solid #eef2f7;vertical-align:middle}.admin-table th{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.admin-table tr.is-editing{background:#fffbeb}.admin-row-actions{display:flex;gap:8px;white-space:nowrap}.linkish{border:0;background:none;color:#1d4ed8;font:inherit;font-weight:600;cursor:pointer;padding:0}.linkish.danger{color:#b91c1c}.admin-form{display:grid;gap:12px}.admin-form label{display:grid;gap:6px;font-size:.82rem;font-weight:700;color:var(--muted)}.admin-check{display:flex!important;align-items:center;gap:8px;grid-template-columns:none!important}.admin-check input{width:auto}.admin-form-actions{display:flex;flex-wrap:wrap;gap:8px}.navpermit-btn.secondary{background:#f1f5f9;color:var(--text);border:1px solid var(--border, #e2e8f0)}.auth-rule{margin:0;font-size:.78rem;color:var(--muted);line-height:1.4}.driver-login-line{margin:4px 0 8px}.admin-hint{margin:0 0 14px}.admin-form{position:relative;z-index:2}.admin-form select.navpermit-input{position:relative;z-index:3;pointer-events:auto}.driver-app-header{position:relative;align-items:flex-start;gap:10px}.driver-app-header-actions{display:flex;flex-direction:column;align-items:flex-end;gap:8px;flex-shrink:0;margin-left:auto}.driver-signout-btn{border:1px solid rgba(15,23,42,.12);background:#ffffffeb;color:var(--text, #0f172a);font:inherit;font-size:.82rem;font-weight:700;padding:8px 12px;border-radius:10px;cursor:pointer;white-space:nowrap}.driver-app-secondary-actions{justify-content:flex-end}@media (max-width: 640px){.driver-shell{padding-top:8px}.driver-app-header{padding-top:4px}.driver-app-header-main{padding-right:4px;min-width:0;flex:1}.driver-app-header-main h1{font-size:1.2rem;line-height:1.25}.driver-signout-btn{position:sticky;top:8px;z-index:20;box-shadow:0 4px 14px #0f172a14}.driver-app-secondary-actions{width:100%}}.fleet-planner{color-scheme:light;--fleet-bg: #eef1e9;--fleet-panel: rgba(255, 255, 255, .94);--fleet-panel-2: #f5f7f1;--fleet-panel-3: #e8eee4;--fleet-line: rgba(42, 76, 48, .16);--fleet-text: #193c22;--fleet-muted: #617366;--fleet-accent: #b69b36;--fleet-accent-soft: #f3edcf;--fleet-green: #3f7c3d;--fleet-green-soft: #e5efe1;--fleet-amber: #ad8625;--fleet-red: #a84d4a;width:100%;height:100dvh;overflow:hidden;color:var(--fleet-text);background:var(--fleet-bg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}.fleet-planner *{box-sizing:border-box}.fleet-planner button,.fleet-planner input{font:inherit}.fleet-shell{width:100%;height:100%;overflow:hidden;display:grid;grid-template-rows:72px minmax(0,1fr);background:var(--fleet-bg)}.fleet-topbar{display:grid;grid-template-columns:minmax(280px,1.05fr) minmax(240px,1fr) auto;align-items:center;gap:20px;padding:0 24px;position:relative;z-index:50;background:radial-gradient(circle at 78% 12%,rgba(255,255,255,.95) 0 2%,transparent 2.4%),radial-gradient(ellipse at 74% 18%,rgba(255,245,196,.72),transparent 28%),linear-gradient(112deg,#ebeee0f5,#c1c2addb 46%,#f1e7bae6);border-bottom:1px solid var(--fleet-line)}.fleet-brand{display:flex;align-items:center;gap:12px;white-space:nowrap;min-width:0}.fleet-brand-mark{width:40px;height:40px;object-fit:contain;border-radius:50%;box-shadow:0 3px 12px #24392238;flex-shrink:0}.fleet-brand-copy strong{display:block;font-size:16px;font-weight:750;letter-spacing:.08em}.fleet-brand-copy span{display:block;margin-top:2px;color:#4c6f51;font-size:11px}.fleet-podium{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.18fr) minmax(0,1fr);align-items:end;gap:8px;margin-left:6px;min-width:268px;max-width:460px;flex:1 1 268px}.fleet-podium-place{position:relative;overflow:visible;display:grid;justify-items:center;gap:2px;width:100%;min-width:0;padding:6px 6px 7px;border:1px solid rgba(120,110,80,.35);background:#f3f1ea;color:#2b2618;text-align:center;cursor:pointer}.fleet-podium-place.is-empty{min-height:36px;opacity:.22;pointer-events:none;border-style:dashed;background:transparent;box-shadow:none;animation:none;filter:none}.fleet-podium-place.is-empty .fleet-podium-clip,.fleet-podium-place.is-empty:before,.fleet-podium-place.is-empty:after{display:none}.fleet-podium-clip{pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;overflow:hidden}.fleet-podium-shine{position:absolute;z-index:2;top:-40%;bottom:-40%;left:-70%;width:46%;background:linear-gradient(108deg,transparent 0%,rgba(255,255,255,0) 28%,rgba(255,255,255,.72) 48%,rgba(255,255,255,.18) 58%,transparent 78%);transform:translate(-30%) skew(-18deg);animation:fleet-podium-shine 3.6s ease-in-out infinite}.fleet-podium-award{position:relative;z-index:1;display:grid;place-items:center;line-height:0}.fleet-podium-icon{width:22px;height:22px}.fleet-podium-place.is-gold .fleet-podium-icon{width:30px;height:30px;filter:drop-shadow(0 0 8px rgba(255,220,80,1));animation:fleet-gold-icon 2.2s ease-in-out infinite}.fleet-podium-rank{display:none}.fleet-podium-place strong,.fleet-podium-place small{position:relative;z-index:1}.fleet-podium-place strong{max-width:100%;font-size:9px;font-weight:800;letter-spacing:.04em;line-height:1.15;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fleet-podium-place small{font-size:9px;font-weight:700;letter-spacing:.04em;color:inherit;opacity:.88}.fleet-podium-place.is-silver{padding-top:8px;padding-bottom:9px;color:#2a3340;border-color:#c5d2e0;background:linear-gradient(180deg,#fff,#e7edf3 42%,#b7c2ce);box-shadow:0 1px #fffffff2 inset,0 0 12px #bed2e6b3,0 0 22px #8caac859,0 3px 8px #46505f29;animation:fleet-silver-glow 2.6s ease-in-out infinite}.fleet-podium-place.is-silver:before,.fleet-podium-place.is-gold:before,.fleet-podium-place.is-bronze:before{content:"";position:absolute;z-index:-1;top:-7px;right:-7px;bottom:-7px;left:-7px;pointer-events:none;border-radius:2px}.fleet-podium-place.is-silver:before{background:radial-gradient(circle at 50% 40%,rgba(210,230,255,.7),transparent 68%);animation:fleet-aura-silver 2.6s ease-in-out infinite}.fleet-podium-place.is-silver .fleet-podium-shine{animation-delay:.5s;animation-duration:4s}.fleet-podium-place.is-silver .fleet-podium-icon{filter:drop-shadow(0 0 6px rgba(230,240,255,.95))}.fleet-podium-place.is-gold{padding-top:12px;padding-bottom:11px;border-color:#ffe27a;background:radial-gradient(circle at 50% 0%,rgba(255,255,220,.95),transparent 55%),linear-gradient(180deg,#fff4b8,#ffd24a 46%,#e6b01c 78%,#c99212);box-shadow:0 0 0 1px #fff8c8d9 inset,0 0 16px #ffd646f2,0 0 34px #ffbe148c,0 0 52px #ffaa0047,0 4px 10px #5037002e;animation:fleet-best-glow 1.8s ease-in-out infinite}.fleet-podium-place.is-gold:before{top:-10px;right:-10px;bottom:-10px;left:-10px;background:radial-gradient(circle at 50% 45%,rgba(255,220,80,.85),rgba(255,180,0,.2) 55%,transparent 72%);animation:fleet-aura-gold 1.8s ease-in-out infinite}.fleet-podium-place.is-gold:after{content:"";position:absolute;z-index:3;top:5px;right:8px;width:5px;height:5px;border-radius:50%;background:#fff;box-shadow:0 0 6px 2px #ffffdcf2,-18px 10px #ffffffd9,12px 16px 0 -1px #fff8b4cc;animation:fleet-sparkle 1.6s ease-in-out infinite;pointer-events:none}.fleet-podium-place.is-gold .fleet-podium-shine{width:54%;background:linear-gradient(108deg,transparent 0%,rgba(255,255,255,0) 22%,rgba(255,255,255,.9) 48%,rgba(255,248,180,.35) 60%,transparent 78%);animation-duration:2.7s}.fleet-podium-place.is-gold strong{color:#3d2e08;text-shadow:0 0 10px rgba(255,236,140,.9)}.fleet-podium-place.is-bronze{padding-top:6px;padding-bottom:7px;color:#5a3014;border-color:#e09a58;background:linear-gradient(180deg,#fbe4c8,#e39a52 48%,#b05e28);box-shadow:0 1px #ffecd6cc inset,0 0 12px #e08c46b3,0 0 22px #b4501452,0 3px 8px #5a2d1029;animation:fleet-bronze-glow 2.9s ease-in-out infinite}.fleet-podium-place.is-bronze:before{background:radial-gradient(circle at 50% 40%,rgba(255,170,80,.65),transparent 68%);animation:fleet-aura-bronze 2.9s ease-in-out infinite}.fleet-podium-place.is-bronze .fleet-podium-shine{animation-delay:1.1s;animation-duration:4.2s}.fleet-podium-place.is-bronze .fleet-podium-icon{filter:drop-shadow(0 0 6px rgba(255,170,90,.95))}.fleet-podium-place:hover,.fleet-podium-place:focus-visible{filter:brightness(1.04)}.fleet-podium{gap:3px;margin-left:8px;min-width:132px;max-width:168px;flex:0 0 156px}.fleet-podium-place{padding:2px 3px 3px;gap:0}.fleet-podium-place.is-empty{min-height:22px}.fleet-podium-icon{width:12px;height:12px}.fleet-podium-place.is-gold .fleet-podium-icon{width:14px;height:14px;filter:none;animation:none}.fleet-podium-place strong,.fleet-podium-place small{font-size:8px;letter-spacing:.02em}.fleet-podium-shine,.fleet-podium-place.is-gold:after,.fleet-podium-place.is-silver:before,.fleet-podium-place.is-gold:before,.fleet-podium-place.is-bronze:before{display:none}.fleet-podium-place.is-silver,.fleet-podium-place.is-gold,.fleet-podium-place.is-bronze{animation:none;padding-top:3px;padding-bottom:3px;box-shadow:0 1px #ffffffa6 inset,0 1px 2px #28321e1f}@keyframes fleet-podium-shine{0%,28%{transform:translate(-30%) skew(-18deg);opacity:0}42%{opacity:1}62%{transform:translate(280%) skew(-18deg);opacity:.85}63%,to{transform:translate(280%) skew(-18deg);opacity:0}}@keyframes fleet-gold-icon{0%,to{filter:drop-shadow(0 0 6px rgba(255,214,70,.75));transform:translateY(0)}50%{filter:drop-shadow(0 0 12px rgba(255,236,120,1));transform:translateY(-1px)}}@keyframes fleet-silver-glow{0%,to{box-shadow:0 1px #ffffffe6 inset,0 0 8px #aabed266,0 2px 8px #46505f24}50%{box-shadow:0 1px #fff inset,0 0 18px #dce8f5f2,0 0 30px #a0bedc80,0 2px 10px #46505f29}}@keyframes fleet-bronze-glow{0%,to{box-shadow:0 1px #ffecd6b3 inset,0 0 8px #c47a3d59,0 2px 6px #5a2d1024}50%{box-shadow:0 1px #ffecd6e6 inset,0 0 18px #ffa050d9,0 0 28px #b45a1e66,0 2px 8px #5a2d102e}}@keyframes fleet-sparkle{0%,to{opacity:.35;transform:scale(.7)}50%{opacity:1;transform:scale(1.15)}}@keyframes fleet-aura-gold{0%,to{opacity:.45;transform:scale(.96)}50%{opacity:1;transform:scale(1.05)}}@keyframes fleet-aura-silver{0%,to{opacity:.35}50%{opacity:.85}}@keyframes fleet-aura-bronze{0%,to{opacity:.3}50%{opacity:.8}}@media (prefers-reduced-motion: reduce){.fleet-podium-place,.fleet-podium-place:before,.fleet-podium-place:after,.fleet-podium-shine,.fleet-podium-place.is-gold .fleet-podium-icon{animation:none}}.fleet-best-dispatcher{display:flex;align-items:center;gap:8px;margin-left:4px;padding:5px 12px 5px 9px;border:1.5px solid rgba(201,162,39,.85);border-radius:8px;background:linear-gradient(135deg,#fff8dcf2,#ffecaab8 55%,#fffae6e6);box-shadow:0 0 0 1px #ffffff8c inset,0 0 10px #ffd6508c,0 0 22px #ffc42859,0 2px 8px #503c0a1f;animation:fleet-best-glow 2.4s ease-in-out infinite;max-width:min(280px,42vw);min-width:0}.fleet-best-crown{display:grid;place-items:center;width:22px;height:22px;color:#b8860b;flex-shrink:0;filter:drop-shadow(0 0 4px rgba(255,210,60,.9))}.fleet-best-copy{min-width:0;overflow:hidden}.fleet-best-copy small{display:block;font-size:8px;font-weight:700;letter-spacing:.14em;color:#8a6a12;line-height:1.1}.fleet-best-copy strong{display:block;margin-top:1px;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#3d2e08;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 0 8px rgba(255,220,90,.65)}@keyframes fleet-best-glow{0%,to{box-shadow:0 0 0 1px #ffffff8c inset,0 0 8px #ffd65073,0 0 16px #ffc42840,0 2px 8px #503c0a1f}50%{box-shadow:0 0 0 1px #ffffffb3 inset,0 0 14px #ffdc5ad9,0 0 28px #ffc8328c,0 2px 10px #503c0a24}}.fleet-mode{justify-self:center;display:flex;gap:8px;padding:4px;border-radius:13px;background:#ffffff61;border:1px solid rgba(255,255,255,.55)}.fleet-mode button{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(38,72,43,.12);border-radius:10px;padding:9px 22px;color:var(--fleet-text);background:#ffffffe0;cursor:pointer;font-size:13px;white-space:nowrap;box-shadow:0 2px 8px #263e2814}.fleet-mode button.active{color:#fff;background:#193c22;border-color:#193c22;box-shadow:0 3px 12px #193c223d}.fleet-top-actions{display:flex;align-items:center;gap:10px}.fleet-text-link{color:var(--fleet-text);text-decoration:none;font-size:12px;font-weight:600;padding:8px 10px;border-radius:8px}.fleet-text-link:hover{background:#ffffff8c}.fleet-icon-button{min-height:38px;padding:0 12px;border:1px solid rgba(38,72,43,.12);border-radius:10px;color:var(--fleet-text);background:#ffffffe0;cursor:pointer;font-size:12px}.fleet-user{display:flex;align-items:center;gap:9px;padding-left:8px}.fleet-avatar{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;color:var(--fleet-accent);background:var(--fleet-accent-soft);font-weight:600;font-size:12px}.fleet-user-copy strong{display:block;font-size:12px;font-weight:600}.fleet-user-copy span{color:var(--fleet-muted);font-size:11px}.fleet-topbar-admin{grid-template-columns:auto minmax(240px,1fr) auto}.fleet-admin{display:block;overflow:auto;padding:16px 22px 28px}.fleet-admin-grid{display:grid;gap:16px;grid-template-columns:minmax(0,1.55fr) minmax(300px,.9fr);align-items:start}@media (max-width: 1100px){.fleet-admin-grid{grid-template-columns:1fr}}.fleet-admin .admin-panel{border:1px solid var(--fleet-line);background:var(--fleet-panel);box-shadow:none;border-radius:2px}.fleet-admin .admin-table th{color:var(--fleet-muted)}.fleet-admin .linkish{color:#193c22}.fleet-admin .banner-error,.fleet-admin .navpermit-message{margin:0 0 12px}.dispatchers-admin-grid{grid-template-columns:minmax(260px,.85fr) minmax(0,1.4fr);min-height:0;height:calc(100dvh - 120px)}.dispatchers-admin-grid .admin-panel{min-height:0;display:flex;flex-direction:column;overflow:hidden;height:100%}.dispatchers-admin-grid .admin-panel>.truck-search,.dispatchers-admin-grid .admin-panel>.navpermit-input.truck-search,.admin-panel-desks>.truck-search,.admin-panel-desks>.navpermit-input{flex:0 0 auto;align-self:stretch;width:100%;max-width:none;height:auto;min-height:2.4rem;max-height:2.75rem;box-sizing:border-box}.admin-group-add{flex:0 0 auto}.dispatcher-desk-pick-list{list-style:none;margin:10px 0 0;padding:0;overflow:auto;flex:1;min-height:0}.dispatcher-desk-pick{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;border:1px solid var(--fleet-line);background:#fff;color:inherit;padding:10px 12px;margin-bottom:8px;cursor:pointer;font:inherit}.dispatcher-desk-pick.desk-board-row{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:12px;cursor:default}.dispatcher-desk-pick.desk-board-row>div{display:flex;flex-direction:column;gap:2px;min-width:0}.dispatcher-desk-pick strong{font-size:.98rem}.dispatcher-desk-pick span{color:var(--fleet-muted);font-size:.82rem}.dispatcher-desk-pick.is-on{border-color:#193c22;background:#eef5ea}.admin-panel-desk-detail{min-height:0}.desk-assigned-list{max-height:180px;overflow:auto;margin-bottom:12px}.desk-assign-toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:10px}.desk-assign-toolbar .truck-search{flex:1 1 200px;max-width:none}.desk-assign-scroll{flex:1;min-height:0;overflow:auto}.desk-assign-list{margin:0}.desk-assign-row{align-items:center}.desk-assign-check{display:flex;align-items:flex-start;gap:10px;flex:1;min-width:0;cursor:pointer}.desk-assign-check span{display:flex;flex-direction:column;gap:2px;min-width:0}.admin-subhead{margin:12px 0 8px;font-size:.92rem;color:var(--fleet-muted);text-transform:uppercase;letter-spacing:.04em}.dispatcher-fleet .fleet-workspace{min-height:0;overflow:hidden;display:flex;flex-direction:column;padding:0 16px 12px}.dispatcher-fleet .dispatcher-tab-panel,.dispatcher-fleet .dispatcher-routes-layout{min-height:0}.fleet-workspace{min-height:0;display:grid}.fleet-center{min-width:0;min-height:0;display:flex;flex-direction:column}.fleet-planner-toolbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,440px) minmax(0,1fr);gap:10px 16px;align-items:center;padding:10px 18px;background:var(--fleet-panel);border-bottom:1px solid var(--fleet-line);position:relative;z-index:40}.fleet-toolbar-left{display:flex;flex-wrap:nowrap;align-items:center;gap:10px 12px;min-width:0;justify-self:start}.fleet-working-desk{display:inline-flex;align-items:center;gap:6px;margin-left:0;white-space:nowrap;flex:none;position:relative;z-index:50}.fleet-working-desk-locked{display:flex;flex-direction:column;gap:2px;min-width:180px;padding:6px 10px;border:1px solid var(--fleet-line);border-radius:8px;background:color-mix(in srgb,var(--fleet-panel) 88%,#1f3d28)}.fleet-working-desk-locked strong{font-size:13px;color:#183c22}.fleet-working-desk-locked span{font-size:11px;color:#5a6b5e;text-transform:none;letter-spacing:0;font-weight:500}.fleet-working-desk span{color:var(--fleet-muted);font-size:10px;text-transform:uppercase;letter-spacing:.05em;font-weight:700}.fleet-working-desk select{min-width:120px;max-width:180px;width:160px;height:32px;padding:4px 8px}.fleet-month-nav{display:flex;align-items:center;gap:8px;flex:none}.fleet-month-nav button{width:34px;height:34px;border:1px solid var(--fleet-line);border-radius:8px;background:var(--fleet-panel-2);color:var(--fleet-text);cursor:pointer}.fleet-month-nav strong{min-width:120px;text-align:center;font-size:14px;font-weight:600;white-space:nowrap}.fleet-team-picker{position:relative;width:200px;max-width:200px;z-index:50;flex:none}.fleet-team-view{position:absolute;z-index:60;top:calc(100% - 1px);left:0;right:auto;width:min(280px,70vw);min-width:220px;display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:6px;padding:6px;border:1px solid var(--fleet-line);background:var(--fleet-panel);max-height:min(60vh,520px);overflow-y:auto;overflow-x:hidden;box-shadow:0 8px 24px #1428181f}.fleet-team-toggle{width:100%;min-height:32px;display:grid;grid-template-columns:1fr auto 14px;align-items:center;gap:6px;padding:4px 8px;border:1px solid var(--fleet-line);background:#fff;color:var(--fleet-text);text-align:left;cursor:pointer}.fleet-team-toggle span{color:var(--fleet-muted);font-size:10px;text-transform:uppercase;letter-spacing:.05em}.fleet-team-toggle strong{font-size:11px}.fleet-team-toggle b{color:var(--fleet-muted);font-size:8px;text-align:right}.fleet-dispatcher-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border:1px solid var(--fleet-line);border-radius:999px;color:var(--fleet-text);background:#fff;font:inherit;font-size:10px;white-space:nowrap;cursor:pointer;opacity:.45;width:100%}.fleet-dispatcher-chip.is-on,.fleet-dispatcher-chip.current{opacity:1;border-color:color-mix(in srgb,var(--chip-color) 55%,var(--fleet-line));background:color-mix(in srgb,var(--chip-color) 13%,#fff);font-weight:650}.fleet-filter-btn{padding:5px 10px;border:1px solid var(--fleet-line);border-radius:999px;background:#fff;color:var(--fleet-text);font:inherit;font-size:10px;font-weight:650;cursor:pointer}.fleet-filter-btn.is-on{border-color:#193c22;background:#193c22;color:#f4efe0}.fleet-filter-btn:disabled{opacity:.4;cursor:not-allowed}.fleet-dispatcher-chip i,.fleet-dispatcher-label i{width:7px;height:7px;flex:none;border-radius:50%;background:var(--chip-color, var(--dispatcher-color))}.fleet-view-tools{display:flex;flex-wrap:nowrap;align-items:center;gap:7px 8px;justify-self:end;flex:none}.fleet-view-tools button{border:1px solid var(--fleet-line);border-radius:8px;padding:8px 11px;background:var(--fleet-panel-2);color:var(--fleet-text);cursor:pointer;font-size:12px}.fleet-view-tools button.is-selected{color:#fff;background:#193c22;border-color:#193c22}.fleet-metrics{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;padding:8px;background:#e8ece2;border-bottom:1px solid var(--fleet-line);position:relative;z-index:20}.fleet-metric{padding:10px 12px;background:#fff;border:1px solid rgba(42,76,48,.1);border-radius:11px;min-width:0}.fleet-metric span{display:block;color:var(--fleet-muted);font-size:11px}.fleet-metric strong{display:block;margin-top:3px;font-size:16px;font-weight:600;font-variant-numeric:tabular-nums}.fleet-money-note,.fleet-error,.fleet-loading{margin:0;padding:6px 18px;font-size:12px;color:var(--fleet-muted)}.fleet-error{color:var(--fleet-red)}.fleet-schedule{flex:1;min-height:0;overflow-x:hidden;overflow-y:auto;background:var(--fleet-panel)}.fleet-schedule-table{min-width:0;width:100%;max-width:100%}.fleet-calendar-head,.fleet-driver-row,.fleet-desk-head{display:grid}.fleet-calendar-head{position:sticky;top:0;z-index:6;min-height:55px;background:var(--fleet-panel-2);border-bottom:1px solid var(--fleet-line)}.fleet-desk-group{--desk-fill: color-mix(in srgb, var(--desk-tint) 9%, var(--fleet-panel));--desk-head: color-mix(in srgb, var(--desk-tint) 18%, #f7faf4);box-shadow:inset 4px 0 0 var(--desk-tint)}.fleet-org-group{border-bottom:1px solid var(--fleet-line)}.fleet-org-group.is-flat{border-bottom:0}.fleet-org-group-head{position:sticky;top:55px;z-index:6;display:grid;grid-template-columns:240px minmax(0,1fr);min-height:34px;background:#1f3d28;color:#f4f7f1;border-bottom:1px solid color-mix(in srgb,#1f3d28 70%,#000)}.fleet-org-group-head-name{display:flex;flex-direction:column;justify-content:center;gap:1px;padding:6px 14px;border-right:1px solid color-mix(in srgb,#fff 12%,transparent)}.fleet-org-group-head-name strong{font-size:12px;font-weight:700;letter-spacing:.02em;text-transform:uppercase}.fleet-org-group-head-name span{font-size:10px;opacity:.78}.fleet-org-group-head-span{background:repeating-linear-gradient(90deg,transparent 0,transparent calc(var(--day-size) - 1px),color-mix(in srgb,#fff 10%,transparent) calc(var(--day-size) - 1px),color-mix(in srgb,#fff 10%,transparent) var(--day-size))}.fleet-org-group:not(.is-flat) .fleet-desk-head{top:89px}.fleet-desk-group.is-you{--desk-fill: color-mix(in srgb, var(--desk-tint) 14%, var(--fleet-panel));--desk-head: color-mix(in srgb, var(--desk-tint) 24%, #f7faf4)}.fleet-desk-head{position:sticky;top:55px;z-index:5;min-height:36px;border-bottom:1px solid color-mix(in srgb,var(--desk-tint) 28%,var(--fleet-line));background:var(--desk-head)}.fleet-desk-head-name{display:flex;align-items:center;gap:10px;padding:7px 14px;border-right:1px solid color-mix(in srgb,var(--desk-tint) 22%,var(--fleet-line))}.fleet-desk-head-name i{width:10px;height:10px;flex:none;border-radius:50%;background:var(--desk-tint)}.fleet-desk-head-name strong{display:block;font-size:12px;font-weight:700;color:#183c22}.fleet-desk-head-name span{display:block;margin-top:1px;color:#38583e;font-size:10px}.fleet-desk-head-open{display:block;min-width:0;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.fleet-desk-head-open:hover strong,.fleet-driver-open:hover .fleet-driver-name strong{text-decoration:underline}.fleet-driver-head{grid-area:1 / 1 / 2 / 3;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 6px;align-items:start;min-width:0}.fleet-driver-open{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:start;gap:6px 8px;min-width:0;width:100%;margin:0;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.fleet-driver-copy-btn{margin:1px 0 0;display:inline-grid;place-items:center;width:26px;height:26px;padding:0;border:1px solid color-mix(in srgb,var(--desk-tint, var(--fleet-line)) 35%,var(--fleet-line));background:var(--fleet-panel, #fff);color:var(--fleet-muted, #5a6a60);cursor:pointer;flex:0 0 auto}.fleet-driver-copy-btn:hover{color:var(--fleet-accent, #193c22);border-color:var(--fleet-accent, #193c22)}.fleet-driver-copy-btn.is-copied{color:#166534;border-color:#166534;background:#f0fdf4}.fleet-driver-open .fleet-driver-avatar,.fleet-driver-open .fleet-driver-name{grid-area:auto}.fleet-desk-head-span{min-width:0;background:var(--desk-head);display:flex;align-items:stretch;padding:4px 6px;overflow:auto;pointer-events:none}.fleet-desk-head-stats{display:flex;flex-wrap:nowrap;gap:6px;width:100%;min-width:36rem;align-items:stretch}.fleet-desk-stat-group{display:flex;flex:1 1 auto;align-items:center;gap:10px 12px;padding:3px 8px;min-width:max-content;border:1px solid color-mix(in srgb,var(--desk-tint) 16%,transparent)}.fleet-desk-stat-group.is-volume{background:color-mix(in srgb,#1f5c3a 14%,#f4faf5);border-color:color-mix(in srgb,#1f5c3a 22%,var(--fleet-line))}.fleet-desk-stat-group.is-money{background:color-mix(in srgb,#c9a227 18%,#fffaf0);border-color:color-mix(in srgb,#c9a227 28%,var(--fleet-line))}.fleet-desk-stat-group.is-costs{background:color-mix(in srgb,#6b5344 12%,#f7f3ef);border-color:color-mix(in srgb,#6b5344 22%,var(--fleet-line))}.fleet-desk-stat-group>div{min-width:4.25rem}.fleet-desk-stat-group.is-volume>div:last-child,.fleet-desk-stat-group.is-money>div{min-width:5rem}.fleet-desk-head-stats span{display:block;color:#38583e;font-size:8px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.fleet-desk-head-stats strong{display:block;margin-top:1px;color:#183c22;font-size:12px;font-weight:750;line-height:1.15;white-space:nowrap;font-variant-numeric:tabular-nums}.fleet-resource-head{display:flex;align-items:center;padding:0 16px;border-right:1px solid var(--fleet-line);color:var(--fleet-muted);font-size:11px}.fleet-days{display:grid}.fleet-day{display:grid;place-items:center;border-right:1px solid var(--fleet-line);color:var(--fleet-muted);font-size:10px}.fleet-day strong{display:block;color:var(--fleet-text);font-size:11px;font-weight:600;text-align:center}.fleet-day.weekend{background:#485b700d}.fleet-day.today strong{color:var(--fleet-green)}.fleet-driver-row{min-height:102px;border-bottom:3px solid color-mix(in srgb,var(--desk-tint, var(--fleet-line)) 35%,var(--fleet-line))}.fleet-driver{display:grid;grid-template-rows:minmax(0,1fr) minmax(0,1fr);gap:0;align-items:stretch;height:100%;min-height:100%;padding:0;border-right:1px solid color-mix(in srgb,var(--desk-tint, var(--fleet-line)) 18%,var(--fleet-line));background:var(--desk-fill, var(--fleet-panel))}.fleet-driver-top{display:grid;grid-template-columns:34px minmax(0,1fr);grid-template-areas:"avatar identity" "meta meta";gap:6px 8px;align-content:start;min-height:0;padding:8px 10px;border-bottom:1px solid color-mix(in srgb,var(--desk-tint, var(--fleet-line)) 22%,var(--fleet-line))}.fleet-driver-avatar{grid-area:avatar;width:32px;height:32px;margin-top:2px;border-radius:50%;display:grid;place-items:center;background:var(--fleet-panel-3);color:var(--fleet-accent);font-size:11px;font-weight:600}.fleet-driver-name{grid-area:identity;min-width:0;overflow:visible}.fleet-driver-name strong{display:flex;align-items:baseline;gap:6px;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;overflow-wrap:normal;word-break:normal;line-height:1.25;font-size:12px;font-weight:600}.fleet-driver-workauth{flex:0 0 auto;display:inline-block;margin:0;padding:1px 5px;border:1px solid color-mix(in srgb,var(--fleet-line) 80%,#193c22);border-radius:4px;background:color-mix(in srgb,#e8efe6 88%,#fff);color:#31553a;font-size:9px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;line-height:1.35}.fleet-driver-name span{display:block;margin-top:3px;color:var(--fleet-muted);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;overflow-wrap:normal;word-break:normal;line-height:1.3}.fleet-driver-name .fleet-driver-phone{color:#2f4a36;font-weight:600;font-variant-numeric:tabular-nums}.fleet-driver-loan{display:block;margin-top:3px;color:#7a4a12;font-size:10px;font-weight:700;letter-spacing:.02em}.fleet-driver-loan.is-out{color:#8a3418}.fleet-driver-loan.is-in{color:#2f5f3a}.fleet-driver-row.is-loaned-out{background:linear-gradient(90deg,color-mix(in srgb,#c45c28 10%,transparent),transparent 42%)}.fleet-driver-row.is-loaned-out .fleet-driver{opacity:.92}.fleet-driver-row.is-loaned-out .fleet-driver-avatar{outline:2px solid #c45c28;outline-offset:1px}.fleet-driver-row.is-loaned-in .fleet-driver-avatar{outline:2px solid #3f7c3d;outline-offset:1px}.fleet-timeline.has-transfer-banner .fleet-plan-bar{opacity:1}.fleet-transfer-banner{position:absolute;left:50%;top:50%;right:auto;bottom:auto;transform:translate(-50%,-50%);z-index:2;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 14px;width:max-content;max-width:min(520px,calc(100% - 24px));margin:0;padding:8px 12px;border:1px solid color-mix(in srgb,#c45c28 28%,transparent);border-radius:999px;background:color-mix(in srgb,#fff8f0 72%,transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);box-shadow:0 2px 10px #5a280a14;pointer-events:none}.fleet-transfer-banner-copy{display:grid;gap:1px;min-width:0;text-align:center}.fleet-transfer-banner-copy strong{color:#8a3418;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.fleet-transfer-banner-copy span{color:#5c3a22;font-size:11px;line-height:1.3}.fleet-transfer-banner-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:center;pointer-events:auto}.fleet-transfer-banner-actions .fleet-icon-button{background:#fff;border:1px solid color-mix(in srgb,#c45c28 28%,var(--fleet-line));color:#5c3a22}.fleet-transfer-banner-actions .fleet-load-map-btn{background:#c45c28;border:1px solid #a84818;color:#fff;font-weight:700}.fleet-transfer-banner-actions .fleet-load-map-btn:hover{background:#a84818}.fleet-dispatcher-label{display:flex;align-items:center;gap:5px;margin-top:5px;color:#38583e;font-size:10px}.fleet-driver-meta{grid-area:meta;display:flex;align-items:stretch;justify-content:space-between;gap:10px;min-width:0}.fleet-driver-state{flex:1 1 auto;min-width:0;text-align:left}.fleet-driver-state strong{display:block;white-space:normal;overflow-wrap:anywhere;word-break:break-word;line-height:1.25;font-size:10px;font-weight:600}.fleet-driver-state span{display:block;margin-top:3px;color:var(--fleet-muted);font-size:10px;white-space:normal;overflow-wrap:anywhere;word-break:break-word;line-height:1.3}.fleet-truck-state{flex:0 0 auto;min-width:66px;padding:5px 7px;border:1px solid var(--fleet-line);background:#fff;text-align:center;align-self:center}.fleet-truck-state span{display:block;color:var(--fleet-muted);font-size:7px;font-weight:700;letter-spacing:.06em;line-height:1;text-transform:uppercase}.fleet-truck-state strong{display:block;margin-top:3px;color:var(--fleet-muted);font-size:12px;font-weight:800;line-height:1}.fleet-truck-state.is-live{border-color:#193c22;background:#193c22}.fleet-truck-state.is-live span{color:#cddbc9}.fleet-truck-state.is-live strong{color:#fff;font-size:16px}.fleet-driver-stats{display:flex;flex-direction:column;justify-content:center;gap:5px;min-height:0;padding:6px 10px 8px;background:color-mix(in srgb,var(--desk-tint, #617366) 6%,#fff)}.fleet-driver-stats-period{color:var(--fleet-muted);font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.fleet-driver-stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 10px}.fleet-driver-stats-grid .is-gross{grid-column:1 / -1}.fleet-driver-stats-grid div span{display:block;color:var(--fleet-muted);font-size:9px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.fleet-driver-stats-grid div strong{display:block;margin-top:1px;color:#183c22;font-size:13px;font-weight:750;line-height:1.15}.fleet-driver-stats-grid .is-gross strong{font-size:15px}.fleet-timeline.is-settable{cursor:pointer}.fleet-status-bar{height:52px;top:calc(10px + var(--bar-lane, 0) * 74px);color:#fff;border:1px solid color-mix(in srgb,var(--bar-color) 55%,#fff);background:color-mix(in srgb,var(--bar-color) 88%,#111);box-shadow:inset 3px 0 color-mix(in srgb,var(--bar-color) 70%,#000);z-index:0}.fleet-status-bar strong,.fleet-status-bar span{color:#fff}.fleet-calendar-status-card{width:min(420px,100%)}.fleet-calendar-status-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0}.fleet-calendar-status-options label{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--fleet-line, #c5d0c4);background:#fff;cursor:pointer;font-size:13px;font-weight:650}.fleet-calendar-status-options label.is-on{border-color:#193c22;background:#eef5ea}.fleet-calendar-status-dates{display:grid;grid-template-columns:1fr 1fr;gap:10px}.fleet-truck-icon{display:flex;flex-direction:column;align-items:center}.fleet-truck-status-flag{display:inline-block;margin-top:2px;padding:1px 5px;background:#193c22;color:#fff;font-size:9px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;line-height:1.2;white-space:nowrap}.fleet-timeline{position:relative;min-width:0;height:100%;min-height:calc(12px + var(--lane-count, 1) * 74px);overflow:hidden;background-color:var(--desk-fill, var(--fleet-panel));background-image:repeating-linear-gradient(90deg,transparent 0,transparent calc(var(--day-size, 3.333%) - 1px),color-mix(in srgb,var(--desk-tint, var(--fleet-line)) 18%,var(--fleet-line)) calc(var(--day-size, 3.333%) - 1px),color-mix(in srgb,var(--desk-tint, var(--fleet-line)) 18%,var(--fleet-line)) var(--day-size, 3.333%))}.fleet-timeline.is-hours{background-image:repeating-linear-gradient(90deg,transparent 0,transparent calc(100% / 24 - 1px),color-mix(in srgb,var(--desk-tint, var(--fleet-line)) 22%,var(--fleet-line)) calc(100% / 24 - 1px),color-mix(in srgb,var(--desk-tint, var(--fleet-line)) 22%,var(--fleet-line)) calc(100% / 24))}.fleet-timeline.is-watches{background-image:repeating-linear-gradient(90deg,transparent 0,transparent calc(var(--day-size) / 4 - 1px),color-mix(in srgb,var(--desk-tint, var(--fleet-line)) 10%,transparent) calc(var(--day-size) / 4 - 1px),color-mix(in srgb,var(--desk-tint, var(--fleet-line)) 10%,transparent) calc(var(--day-size) / 4)),repeating-linear-gradient(90deg,transparent 0,transparent calc(var(--day-size) - 1px),color-mix(in srgb,var(--desk-tint, var(--fleet-line)) 22%,var(--fleet-line)) calc(var(--day-size) - 1px),color-mix(in srgb,var(--desk-tint, var(--fleet-line)) 22%,var(--fleet-line)) var(--day-size))}.fleet-hour-ticks{display:grid;grid-template-columns:repeat(4,1fr);margin:4px 0 0;padding:0;list-style:none;color:var(--fleet-muted);font-size:8px;font-weight:500}.fleet-hour-ticks li{text-align:left;opacity:.8;white-space:nowrap}.fleet-plan-bar{position:absolute;top:calc(6px + var(--bar-lane, 0) * 74px);height:68px;box-sizing:border-box;min-width:0;padding:6px 8px;overflow:hidden;border-radius:8px;color:var(--fleet-text);border:1px solid color-mix(in srgb,var(--bar-color) 50%,var(--fleet-line));background:linear-gradient(90deg,color-mix(in srgb,var(--bar-color) 30%,#fff) 0 var(--progress),color-mix(in srgb,var(--bar-color) 11%,#fff) var(--progress) 100%);box-shadow:inset 3px 0 0 var(--bar-color);font:inherit;text-align:left;cursor:pointer;z-index:1}.fleet-plan-bar.is-conflict{border-color:#b42318;background:linear-gradient(90deg,color-mix(in srgb,#b42318 28%,#fff) 0 var(--progress),color-mix(in srgb,#b42318 10%,#fff) var(--progress) 100%);box-shadow:inset 3px 0 #b42318;z-index:2}.fleet-plan-bar:hover,.fleet-plan-bar.is-open{border-color:#193c22;box-shadow:inset 3px 0 0 var(--bar-color),0 0 0 1px #193c22;z-index:2}.fleet-plan-bar.is-conflict:hover,.fleet-plan-bar.is-conflict.is-open{border-color:#7a150f;box-shadow:inset 3px 0 #b42318,0 0 0 1px #7a150f;z-index:2}.fleet-plan-bar.is-canceled{color:#5f645f;border-color:#b4b8b4;background:linear-gradient(90deg,#d8dbd8 0 var(--progress),#eceeec var(--progress) 100%);box-shadow:inset 3px 0 #9aa09a}.fleet-plan-bar.is-canceled:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(to top right,transparent calc(50% - 1.25px),#6f756f 50%,transparent calc(50% + 1.25px));z-index:3}.fleet-plan-bar.is-canceled strong,.fleet-plan-bar.is-canceled>span,.fleet-plan-bar.is-canceled em{color:#5f645f;opacity:.9}.fleet-plan-bar.is-canceled:hover,.fleet-plan-bar.is-canceled.is-open{border-color:#7a807a;box-shadow:inset 3px 0 #9aa09a,0 0 0 1px #7a807a}.fleet-driver-state strong.is-conflict{color:#b42318}.fleet-load-conflict{margin:0 0 12px;padding:8px 10px;border-radius:8px;background:#fdecea;color:#7a150f;font-size:12px}.fleet-plan-bar strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px;font-weight:600}.fleet-plan-bar>span{display:block;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--fleet-muted);font-size:9px}.fleet-plan-bar em{display:flex;justify-content:space-between;gap:6px;margin-top:4px;font-style:normal;font-size:10px;color:color-mix(in srgb,var(--bar-color) 78%,#183c22)}.fleet-plan-bar em b{color:#183c22;font-weight:750}.fleet-empty-label{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:var(--fleet-muted);font-size:11px;opacity:.7;pointer-events:none}.fleet-map-view{display:none;flex:1;min-height:0;position:relative;overflow:hidden;background:linear-gradient(180deg,#e8f4ed,#dcebdc);z-index:0;isolation:isolate}.fleet-map-view.active{display:block}.fleet-map-view[hidden]{display:none!important}.fleet-planner-view.hidden{display:none}.fleet-map-canvas{position:absolute;top:0;right:360px;bottom:0;left:0;z-index:0;isolation:isolate}.fleet-map-canvas .navpermit-map-wrap,.fleet-map-canvas .leaflet-container{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%!important;border-radius:0}.fleet-map-canvas .map-truck-search{left:18px;top:64px;transform:none;width:min(340px,calc(100% - 36px));z-index:1100}.fleet-map-toolbar{position:absolute;z-index:1100;top:18px;left:18px;display:flex;align-items:center;gap:12px;padding:10px 13px;border:1px solid rgba(42,76,48,.16);border-radius:12px;background:#ffffffeb;box-shadow:0 7px 22px #26492d21}.fleet-map-toolbar strong{font-size:12px}.fleet-map-toolbar span{color:var(--fleet-muted);font-size:10px}.fleet-route-panel{position:absolute;z-index:1100;top:12px;right:12px;bottom:12px;width:336px;padding:14px;overflow:auto;border:1px solid rgba(42,76,48,.16);border-radius:14px;background:#fffffff2;box-shadow:0 8px 26px #26492d24}.fleet-route-panel h3{margin:0;color:#ad8b26;font-size:15px}.fleet-route-panel>p{margin:3px 0 12px;color:var(--fleet-muted);font-size:10px}.fleet-route-card{margin-top:9px;padding:0;border:1px solid var(--fleet-line);border-radius:10px;background:#f8faf5}.fleet-route-card.is-selected{border-color:#193c22;box-shadow:inset 0 0 0 1px #193c22}.fleet-route-card-btn{display:block;width:100%;margin:0;padding:11px;border:0;background:transparent;color:inherit;text-align:left;font:inherit;cursor:pointer}.fleet-route-card-btn:disabled{cursor:default}.fleet-route-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.fleet-route-card-head strong{font-size:11px}.fleet-route-card-head span{color:var(--fleet-green);font-size:11px;font-weight:750}.fleet-route-card p{margin:7px 0 8px;color:var(--fleet-text);font-size:10px}.fleet-route-desk{display:block;margin:-2px 0 6px;color:var(--fleet-accent, #193c22);font-size:10px;font-weight:700}.fleet-route-progress{height:6px;overflow:hidden;border-radius:999px;background:#e2e8dd}.fleet-route-progress i{display:block;width:var(--route-progress);height:100%;border-radius:inherit;background:var(--fleet-green)}.fleet-route-card small{display:block;margin-top:7px;color:var(--fleet-muted);font-size:9px}.map-land{fill:#f7faf4;stroke:#9bad9c;stroke-width:2}@media (max-width: 1100px){.fleet-topbar{grid-template-columns:1fr auto;height:auto;padding:10px 16px}.fleet-mode{justify-self:end}.fleet-planner-toolbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);overflow-x:auto}.fleet-load-search{grid-column:1 / -1;order:-1;max-width:520px;justify-self:center}.fleet-toolbar-left{flex-wrap:nowrap}.fleet-metrics{grid-template-columns:repeat(2,1fr)}.fleet-map-canvas{top:0;right:0;bottom:0;left:0}}.fleet-load-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;display:grid;place-items:center;padding:24px;background:color-mix(in srgb,#102016 55%,transparent)}.fleet-notify-stack{position:fixed;right:18px;bottom:18px;z-index:2600;display:grid;gap:10px;width:min(340px,calc(100vw - 36px));pointer-events:none}.fleet-notify-card{pointer-events:auto;padding:12px 14px;border:1px solid #93a095;background:#f7faf4;color:#15271a;box-shadow:0 12px 28px #1020162e}.fleet-notify-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.fleet-notify-card header p{margin:0;color:#607064;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.fleet-notify-pending{flex:none;color:#9a3412;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.fleet-notify-card>strong{display:block;margin-top:6px;font-size:15px}.fleet-notify-card>p{margin:4px 0 0;color:#607064;font-size:12px}.fleet-notify-card footer{margin-top:10px}.fleet-load-card{width:min(640px,100%);max-height:min(86vh,760px);overflow:auto;padding:22px 24px 18px;border:1px solid var(--fleet-line);border-radius:16px;background:#f7faf4;box-shadow:0 24px 60px #10201647;color:var(--fleet-text)}.fleet-load-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.fleet-load-card header p{margin:0;color:var(--fleet-muted);font-size:11px;letter-spacing:.08em;text-transform:uppercase}.fleet-load-card header h2{margin:4px 0 0;font-size:22px;font-weight:700}.fleet-load-lane{margin:14px 0 18px;color:#183c22;font-size:15px;font-weight:650}.fleet-load-tabs{display:flex;gap:0;margin:0 0 14px;border:1px solid var(--fleet-line);background:#fff}.fleet-load-tabs button{flex:1;padding:8px 10px;border:0;border-right:1px solid var(--fleet-line);background:transparent;color:var(--fleet-muted);font:inherit;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;cursor:pointer}.fleet-load-tabs button:last-child{border-right:0}.fleet-load-tabs button.is-on{color:#183c22;background:#eef5ea}.fleet-load-history{display:grid;gap:12px}.fleet-load-history-list{list-style:none;margin:0;padding:0;display:grid;gap:10px;max-height:min(48vh,420px);overflow:auto}.fleet-load-history-list>li{padding:10px 12px;border:1px solid var(--fleet-line);background:#fff}.fleet-load-history-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.fleet-load-history-head strong{font-size:13px;color:#183c22}.fleet-load-history-head span{color:var(--fleet-muted);font-size:11px;white-space:nowrap}.fleet-load-history-actor{margin:4px 0 0;color:var(--fleet-muted);font-size:12px}.fleet-load-history-list ul{margin:8px 0 0;padding-left:16px;color:#15271a;font-size:12px}.fleet-load-history-list ul li{margin:2px 0}.fleet-load-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 18px}.fleet-load-grid div span{display:block;color:var(--fleet-muted);font-size:10px;letter-spacing:.04em;text-transform:uppercase}.fleet-load-grid div strong{display:block;margin-top:3px;font-size:13px;font-weight:650}.fleet-profile-card{max-height:min(90vh,860px);overflow:auto}.fleet-profile-stats{margin-bottom:8px}.fleet-profile-list{margin-top:16px;padding-top:14px;border-top:1px solid var(--fleet-line)}.fleet-profile-list>p{margin:0 0 8px;color:var(--fleet-muted);font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.fleet-profile-list ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}.fleet-profile-list li{display:grid;gap:2px;padding:0;border:1px solid var(--fleet-line);background:#fff}.fleet-profile-list li strong{font-size:13px}.fleet-profile-list li span{color:var(--fleet-muted);font-size:11px}.fleet-profile-item-btn{display:grid;gap:2px;width:100%;margin:0;padding:8px 10px;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.fleet-profile-item-btn:hover,.fleet-profile-item-btn:focus-visible{background:color-mix(in srgb,var(--fleet-accent, #617366) 10%,#fff)}.fleet-profile-list li:has(>strong){padding:8px 10px}.fleet-load-search{position:relative;width:100%;max-width:none;justify-self:center;z-index:8}.fleet-load-search-field{display:grid;gap:3px}.fleet-load-search-field span{display:block;text-align:center;color:var(--fleet-muted);font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.fleet-load-search-field input{width:100%;height:34px;text-align:center}.fleet-load-search-hits{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:12;margin:0;padding:4px;list-style:none;max-height:320px;overflow:auto;border:1px solid var(--fleet-line);background:#fff;box-shadow:0 10px 28px #10201629}.fleet-load-search-hits button{display:grid;gap:2px;width:100%;padding:8px 10px;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.fleet-load-search-hits button:hover,.fleet-load-search-hits button:focus-visible{background:#eef3ea}.fleet-load-search-hits strong{font-size:13px}.fleet-load-search-hits span{color:var(--fleet-muted);font-size:11px}.fleet-load-search-empty{padding:10px;color:var(--fleet-muted);font-size:12px;text-align:center}.fleet-profile-empty{color:var(--fleet-muted);font-size:12px}.fleet-profile-links{display:flex;flex-wrap:wrap;gap:8px 12px;margin:8px 0 0}.fleet-load-notes{margin:16px 0 0;color:var(--fleet-muted);font-size:12px}.fleet-load-notes-field{display:grid;gap:6px;margin-top:14px;font-size:12px;color:var(--fleet-muted)}.fleet-load-notes-field .fleet-notes-editor{color:var(--fleet-text)}.fleet-notes-editor{display:grid;gap:6px}.fleet-notes-editor.is-disabled{opacity:.65;pointer-events:none}.fleet-notes-head{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:28px}.fleet-notes-label{font-size:12px;color:var(--fleet-muted);text-transform:uppercase;letter-spacing:.04em}.fleet-notes-tools{position:relative;display:inline-flex;align-items:center;gap:4px}.fleet-notes-tool{width:28px;height:28px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--fleet-text);font:inherit;font-size:13px;font-weight:700;line-height:1;cursor:pointer;padding:0}.fleet-notes-tool-h{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:2px;text-decoration-color:#ca8a04}.fleet-notes-tool-clear{font-weight:500;font-size:16px;color:var(--fleet-muted)}.fleet-notes-tool:hover:not(:disabled),.fleet-notes-tool.is-open{border-color:var(--fleet-line);background:#fff}.fleet-notes-palette{position:absolute;top:calc(100% + 6px);right:0;z-index:30;display:grid;grid-template-columns:repeat(3,22px);gap:6px;padding:8px;border:1px solid var(--fleet-line);border-radius:10px;background:#fff;box-shadow:0 10px 24px #11182724}.fleet-notes-swatch{width:22px;height:22px;border:1px solid color-mix(in srgb,var(--swatch) 35%,#111827);border-radius:999px;background:var(--swatch);cursor:pointer;padding:0}.fleet-notes-swatch:hover{transform:scale(1.08)}.fleet-notes-surface{resize:vertical;overflow:auto;min-height:72px;white-space:pre-wrap;word-break:break-word;line-height:1.45;text-transform:none;letter-spacing:normal;color:var(--fleet-text)}.fleet-notes-surface:empty:before{content:attr(data-placeholder);color:var(--fleet-muted);pointer-events:none}.fleet-notes-html{white-space:pre-wrap;word-break:break-word;line-height:1.4;color:var(--fleet-text);text-transform:none;letter-spacing:normal;font-size:13px}.fleet-plan-bar.has-notes{box-shadow:inset 3px 0 0 var(--bar-color),inset 0 -2px #c9a227}.fleet-load-notes-tooltip{position:fixed;z-index:20000;transform:translateY(-100%);min-width:220px;max-width:min(360px,70vw);padding:10px 12px;border-radius:10px;border:1px solid var(--fleet-line);background:#fffef8;box-shadow:0 10px 28px #1118272e;color:var(--fleet-text);text-transform:none;letter-spacing:normal;white-space:normal;pointer-events:none;text-align:left}.fleet-load-notes-tooltip.is-below{transform:none}.fleet-load-notes-tooltip-label{display:block;margin-bottom:4px;color:var(--fleet-muted);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.fleet-load-extras{margin-top:16px;padding-top:14px;border-top:1px solid var(--fleet-line);display:grid;gap:10px}.fleet-load-extras>p{margin:0;color:var(--fleet-muted);font-size:11px;text-transform:uppercase;letter-spacing:.04em}.fleet-load-extra-row{display:grid;grid-template-columns:minmax(120px,.9fr) minmax(140px,1.1fr);gap:10px 14px;align-items:end}.fleet-load-check{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:650}.fleet-load-cost span{display:block;color:var(--fleet-muted);font-size:10px;letter-spacing:.04em;text-transform:uppercase}.fleet-load-cost input{margin-top:3px;width:100%}.fleet-load-extra-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.fleet-load-actuals{margin-top:4px;display:grid;gap:8px}.fleet-load-actuals>p{margin:0;color:var(--fleet-muted);font-size:11px;text-transform:uppercase;letter-spacing:.04em}.fleet-load-actual-hint{text-transform:none!important;letter-spacing:0!important;font-size:12px!important}.fleet-load-actual-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.fleet-load-cancel-btn{padding:8px 14px;border:1px solid #b42318;background:#fff;color:#b42318;font:inherit;font-weight:700;cursor:pointer}.fleet-load-cancel-btn:disabled{opacity:.5;cursor:not-allowed}.fleet-load-delete-btn{padding:8px 14px;border:1px solid #7a150f;background:#7a150f;color:#fff;font:inherit;font-weight:700;cursor:pointer}.fleet-load-delete-btn:disabled{opacity:.5;cursor:not-allowed}.fleet-load-card.is-canceled{background:#eef0ee;color:#5f645f;position:relative;overflow:auto}.fleet-load-card.is-canceled:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(to top right,transparent calc(50% - 1.5px),color-mix(in srgb,#6f756f 55%,transparent) 50%,transparent calc(50% + 1.5px));z-index:0}.fleet-load-card.is-canceled>*{position:relative;z-index:1}.fleet-load-card.is-canceled header h2,.fleet-load-card.is-canceled .fleet-load-lane{color:#5f645f}.fleet-load-docs{margin:16px 0 0;display:grid;gap:6px}.fleet-load-docs .fleet-text-link{justify-self:start;text-align:left;font-weight:600}.fleet-load-card footer{display:flex;justify-content:space-between;gap:12px;margin-top:20px;position:sticky;bottom:-18px;padding:12px 0 4px;background:linear-gradient(to top,#f7faf4 70%,color-mix(in srgb,#f7faf4 70%,transparent));z-index:2}.fleet-load-card.is-canceled footer{background:linear-gradient(to top,#eef0ee 70%,color-mix(in srgb,#eef0ee 70%,transparent))}.fleet-load-map-btn{padding:8px 14px;border:0;border-radius:8px;background:#193c22;color:#f4efe0;font:inherit;font-size:12px;font-weight:650;cursor:pointer}.fleet-track-hud{position:absolute;left:18px;bottom:18px;z-index:1200;width:min(340px,calc(100% - 36px));padding:12px 14px;border:1px solid #193c22;border-radius:12px;background:color-mix(in srgb,#f7faf4 92%,transparent);box-shadow:0 10px 28px #1020162e;color:var(--fleet-text)}.fleet-track-hud strong{display:block;font-size:13px}.fleet-track-hud p{margin:4px 0 8px;font-size:12px}.fleet-track-hud span,.fleet-track-hud small{display:block;color:var(--fleet-muted);font-size:11px}.fleet-track-hud b{display:block;margin:4px 0 2px;color:#183c22;font-size:16px}.fleet-add-load{padding:4px 8px;border:1px solid var(--fleet-line);border-radius:8px;background:#fff;color:var(--fleet-text);font:inherit;font-size:10px;font-weight:650;cursor:pointer}.fleet-compose-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px;margin:12px 0}.fleet-compose-grid label,.fleet-compose-card label{display:flex;flex-direction:column;gap:4px;font-size:11px;color:var(--fleet-muted)}.fleet-compose-card{max-height:min(90vh,860px);overflow:auto}.fleet-load-notes{margin:8px 0 0;color:var(--fleet-muted);font-size:12px}.fleet-reports{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;padding:16px 18px 28px}.fleet-reports[hidden]{display:none!important}.fleet-reports-lead{margin:0 0 14px;color:var(--fleet-muted);font-size:12px}.fleet-reports-grid{display:grid;gap:18px}.fleet-reports article{overflow-x:auto;overflow-y:visible;border:1px solid var(--fleet-line);border-radius:12px;background:#fff}.fleet-reports article header{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid #8f9d90;border-left:4px solid #0f1c13;background:#d6dfd2}.fleet-reports article h2{margin:0;color:#0c1610;font-size:16px;font-weight:750;letter-spacing:.02em}.fleet-reports article header span{color:#3a4b40;font-size:11px;font-weight:650;text-align:right}.fleet-reports table{width:100%;border-collapse:collapse;font-size:12px}.fleet-reports th,.fleet-reports td{padding:8px 12px;border-bottom:1px solid var(--fleet-line);text-align:left;white-space:nowrap}.fleet-reports th{color:#0f1c13;font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.05em;background:#c4d0bf;border-bottom-color:#8f9d90}.fleet-reports thead{position:sticky;top:0;z-index:1}.fleet-reports tr.is-you{background:color-mix(in srgb,var(--fleet-accent, #617366) 8%,#fff)}.fleet-planner *,.fleet-planner *:before,.fleet-planner *:after{border-radius:0!important}.fleet-planner button,.fleet-planner article,.fleet-planner .fleet-brand-mark,.fleet-planner .fleet-mode,.fleet-planner .fleet-metric,.fleet-planner .fleet-map-toolbar,.fleet-planner .fleet-route-panel,.fleet-planner .fleet-track-hud,.fleet-planner .fleet-load-card{box-shadow:none!important}.fleet-planner .fleet-team-view{max-height:min(60vh,520px);overflow-y:auto;overflow-x:hidden;gap:0}.fleet-planner .fleet-dispatcher-chip,.fleet-planner .fleet-filter-btn{padding:4px 7px;border-color:var(--fleet-line)}.fleet-planner .fleet-metrics{gap:0;padding:0;background:var(--fleet-panel);grid-template-columns:repeat(7,minmax(0,1fr))}.fleet-planner .fleet-metric{border-width:0 1px 1px 0;border-color:var(--fleet-line);padding:8px 10px}.fleet-planner .fleet-metric span{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fleet-planner .fleet-metric strong{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fleet-metric-action{display:block;width:100%;text-align:left;cursor:pointer;font:inherit;color:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none}.fleet-metric-action:hover,.fleet-metric-action:focus-visible{background:color-mix(in srgb,var(--fleet-green, #2a4c30) 8%,#fff);outline:none}.fleet-metric-action.has-value strong{color:#183c22;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.fleet-handed-card{width:min(520px,100%)}.fleet-handed-list{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:6px;max-height:min(56vh,420px);overflow:auto}.fleet-handed-row{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"num to" "meta meta";gap:2px 12px;width:100%;padding:10px 12px;border:1px solid var(--fleet-line);background:#fff;color:inherit;font:inherit;text-align:left;cursor:pointer}.fleet-handed-row:hover,.fleet-handed-row:focus-visible{border-color:#2a4c30;outline:none}.fleet-handed-row strong{grid-area:num;font-size:14px}.fleet-handed-to{grid-area:to;color:#183c22;font-size:13px;font-weight:650;white-space:nowrap}.fleet-handed-row small{grid-area:meta;color:var(--fleet-muted);font-size:11px}.fleet-handed-empty{margin:16px 0 0;color:var(--fleet-muted);font-size:13px}.fleet-planner .fleet-plan-bar{border-width:1px;box-shadow:none}.fleet-planner .fleet-reports-grid{gap:12px}.fleet-planner .fleet-reports article{box-shadow:none}.fleet-planner .fleet-reports article header{border-left-width:4px;background:#cfd9cb}.fleet-planner .fleet-reports article h2{font-size:15px;font-weight:750;text-transform:uppercase;letter-spacing:.06em;color:#0a140e}.fleet-planner .fleet-reports th{background:#b7c5b2;color:#0a140e;border-bottom-color:#7f8f81}.dw-date-nav{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.dw-date-input{width:auto;min-width:160px}.dw-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:8px 0 16px}.dw-summary>div{background:#fff;border:1px solid #d0d7e2;border-radius:12px;padding:10px 12px}.dw-summary span{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:#64748b}.dw-summary strong{font-size:1.15rem}.dw-date-group{margin-bottom:20px}.dw-date-heading{display:flex;gap:10px;align-items:baseline;margin:0 0 10px;font-size:1.05rem}.dw-date-heading span{font-size:.8rem;font-weight:500;color:#64748b}.dw-week-grid{display:grid;grid-template-columns:repeat(7,minmax(140px,1fr));gap:8px;overflow-x:auto;padding-bottom:12px}.dw-week-col{background:#fff;border:1px solid #d0d7e2;border-radius:12px;min-width:140px;padding:8px}.dw-week-col header{display:flex;gap:6px;align-items:baseline;margin-bottom:8px}.dw-week-col header em{margin-left:auto;font-style:normal;color:#64748b}.dw-week-load{border-top:1px solid #e2e8f0;padding:6px 0;font-size:.8rem}.dw-week-load p{margin:0 0 4px;font-weight:600}.dw-week-load span{display:block;color:#64748b}.dw-month-head,.dw-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.dw-month-head{font-size:.75rem;text-transform:uppercase;color:#64748b;margin-bottom:4px}.dw-cal-cell{min-height:88px;border:1px solid #d0d7e2;background:#fff;border-radius:10px;padding:8px;text-align:left;font:inherit;cursor:pointer;display:flex;flex-direction:column;gap:2px}.dw-cal-cell.is-empty{background:transparent;border-color:transparent;cursor:default}.dw-cal-cell.has-loads{border-color:#0f172a}.dw-cal-num{font-weight:700}.dw-report-block{margin:16px 0;overflow-x:auto}.dw-report-block h3{margin:0 0 8px;font-size:1rem}.dw-report-table{width:100%;border-collapse:collapse;background:#fff}.dw-report-table th,.dw-report-table td{text-align:left;padding:8px 10px;border-bottom:1px solid #e2e8f0;font-size:.85rem}.dw-report-table th{color:#64748b;font-weight:600;text-transform:uppercase;font-size:.72rem}@media (max-width: 900px){.dw-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.dw-week-grid,.dw-month-head,.dw-month-grid{grid-template-columns:repeat(7,minmax(110px,1fr))}}.dw-drivers{flex:1;min-height:0;overflow:auto}.dw-driver-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;padding-bottom:16px}.dw-driver-card{margin:0}.dw-desk-card{width:100%;text-align:left;font:inherit;cursor:pointer;color:inherit}.dw-desk-card.is-selected{border-color:#0f172a;box-shadow:0 0 0 2px #0f172a}.dw-driver-description{margin:10px 0 0;display:flex;flex-direction:column;gap:4px;font-size:.85rem;color:#0f172a}.dw-driver-description strong{font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:#64748b}.dw-driver-description span{white-space:pre-wrap}.dw-card-field-full{grid-column:1 / -1}.dw-card-select{width:100%;margin-top:4px}.dw-load-lane{font-size:1.05rem;line-height:1.25}.fleet-upload-rate-btn{white-space:nowrap;border-color:#193c22!important;background:#fff!important;color:#193c22!important;font-weight:700}.fleet-new-load-notify-btn{white-space:nowrap;max-width:min(320px,42vw);overflow:hidden;text-overflow:ellipsis;border-color:#b45309!important;background:#fff7ed!important;color:#9a3412!important;font-weight:700}.rate-intake-backdrop{z-index:2400;display:flex;align-items:stretch;justify-content:center;padding:12px;box-sizing:border-box}.rate-intake{display:flex;flex-direction:column;width:min(1540px,100%);height:calc(100vh - 24px);max-height:calc(100vh - 24px);min-height:0;margin:auto;overflow:hidden;border:1px solid #93a095;background:#f7faf4;color:#15271a;box-shadow:none}.rate-intake,.rate-intake *,.rate-intake *:before,.rate-intake *:after{border-radius:0!important}.rate-intake-header{display:flex;flex:none;align-items:flex-start;justify-content:space-between;gap:16px;padding:14px 16px;border-bottom:1px solid #cbd3ca;background:#fff}.rate-intake-header p{margin:0;color:#607064;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.rate-intake-header h2{margin:3px 0 0;font-size:19px}.rate-intake-start{width:min(680px,calc(100% - 40px));margin:auto;padding:28px 0;text-align:center}.rate-drop-zone{display:grid;width:100%;min-height:240px;place-content:center;gap:9px;padding:28px;border:1px dashed #788a7b;background:#fff;color:#193c22;font:inherit;cursor:pointer}.rate-drop-zone.is-dragging{border-style:solid;background:#edf4eb;outline:2px solid #193c22}.rate-drop-zone:disabled{cursor:wait}.rate-drop-zone strong{font-size:16px}.rate-drop-zone span{max-width:480px;color:#607064;font-size:12px}.rate-upload-progress{display:block;width:min(420px,70vw);height:5px;margin-top:12px;background:linear-gradient(90deg,#193c22 0 var(--upload-progress),#dce4da var(--upload-progress) 100%)}.rate-processing{margin:14px 0 0;color:#607064;font-size:12px}.rate-intake-message{margin:12px 0 0;padding:9px 11px;border:1px solid #c83b31;background:#fff5f4;text-align:left}.rate-review-form{display:flex;min-height:0;flex:1;flex-direction:column}.rate-review-meta{display:flex;flex:none;gap:0;border-bottom:1px solid #cbd3ca;background:#edf1e9}.rate-review-meta span{padding:7px 12px;border-right:1px solid #cbd3ca;color:#607064;font-size:10px;text-transform:uppercase}.rate-review-meta strong{margin-left:4px;color:#193c22}.rate-review-alerts{flex:none;max-height:104px;overflow:auto;border-bottom:1px solid #d8c67f;background:#fff9df}.rate-review-alerts p{margin:0;padding:6px 14px;color:#705d19;font-size:11px}.rate-review-alerts p+p{border-top:1px solid #eadfae}.rate-review-alerts p.is-error{color:#98251d;background:#fff0ee}.rate-review-split{display:grid;min-height:0;flex:1;grid-template-columns:minmax(360px,.92fr) minmax(520px,1.08fr)}.rate-pdf-pane{display:flex;min-height:0;flex-direction:column;border-right:1px solid #aeb9ae;background:#dfe4dd}.rate-pane-title,.rate-section-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.rate-pane-title{min-height:39px;padding:8px 11px;border-bottom:1px solid #aeb9ae;background:#edf1e9;font-size:11px}.rate-pane-title a{color:#193c22;font-weight:700}.rate-pdf-pane iframe{width:100%;min-height:0;flex:1;border:0;background:#fff}.rate-pdf-pane>p{margin:auto;color:#607064;font-size:12px}.rate-fields-pane{min-height:0;overflow:auto;background:#f7faf4}.rate-permit-grid{display:grid;grid-template-columns:minmax(140px,.8fr) minmax(160px,1.2fr);gap:10px 14px;align-items:end}.rate-check-row{display:flex;align-items:center;gap:8px;min-height:38px;font-size:13px;font-weight:650}.rate-form-section{padding:12px 14px 14px;border-bottom:1px solid #cbd3ca}.rate-form-section h3{margin:0 0 9px;color:#193c22;font-size:11px;letter-spacing:.06em;text-transform:uppercase}.rate-section-heading h3{margin:0}.rate-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 11px}.rate-field-grid label{display:flex;min-width:0;flex-direction:column;gap:4px}.rate-field-grid label>span{color:#607064;font-size:10px;font-weight:600}.rate-field-grid .navpermit-input{min-width:0;width:100%;box-sizing:border-box;background:#fff;font-size:12px}.rate-field-grid textarea.navpermit-input{height:auto;resize:vertical}.rate-wide-field{grid-column:1 / -1}.rate-secondary-btn,.rate-stop header button{padding:6px 9px;border:1px solid #879789;background:#fff;color:#193c22;font:inherit;font-size:10px;font-weight:700;cursor:pointer}.rate-secondary-btn:disabled,.rate-stop header button:disabled{cursor:not-allowed;opacity:.45}.rate-stop-list{display:grid;gap:10px;margin-top:10px}.rate-stop{border:1px solid #b9c3b8;background:#fdfefc}.rate-stop>header{display:flex;align-items:center;justify-content:space-between;padding:6px 8px;border-bottom:1px solid #d4dbd2;background:#edf1e9;font-size:11px}.rate-stop>.rate-field-grid{padding:9px}.rate-review-footer{display:flex;flex:none;align-items:center;justify-content:space-between;gap:14px;padding:10px 14px;border-top:1px solid #aeb9ae;background:#fff}.rate-review-footer>span{color:#607064;font-size:11px}.rate-review-footer>div{display:flex;gap:8px}@media (max-width: 1100px){.fleet-planner-toolbar{grid-template-columns:auto minmax(180px,1fr) auto}.fleet-view-tools{gap:4px}.fleet-view-tools button{padding-inline:7px}.rate-review-split{grid-template-columns:1fr;overflow:auto}.rate-pdf-pane{min-height:280px;max-height:42vh;border-right:0;border-bottom:1px solid #aeb9ae}.rate-fields-pane{overflow:auto;min-height:0}}@media (max-width: 760px){.rate-intake-backdrop{padding:0}.rate-review-meta{flex-wrap:wrap}.rate-field-grid{grid-template-columns:1fr}.rate-wide-field{grid-column:auto}.rate-review-footer{align-items:stretch;flex-direction:column}.rate-review-footer>div{justify-content:flex-end}}.us-datetime-field{display:flex;flex-direction:column;gap:4px;min-width:0}.us-datetime-row{display:flex;align-items:center;gap:6px;min-width:0}.us-datetime-date{flex:1 1 7.5rem;min-width:0}.us-datetime-hour,.us-datetime-minute{flex:0 0 2.75rem;width:2.75rem;text-align:center;padding-left:6px;padding-right:6px}.us-datetime-colon{color:#4a5d4f;font-weight:600}.us-datetime-ampm{flex:0 0 4.25rem;width:4.25rem;padding-left:6px;padding-right:6px}.us-date-control{position:relative;min-width:0;width:100%}.us-datetime-row>.us-date-control{flex:1 1 7.5rem;width:auto}.us-date-control .us-datetime-date,.fleet-profile-field .us-datetime-date{width:100%;padding-right:2.5rem}.us-date-calendar-btn{position:absolute;top:50%;right:4px;z-index:1;display:grid;place-items:center;width:32px;height:32px;padding:0;border:0;background:transparent;color:#193c22;cursor:pointer;transform:translateY(-50%)}.us-date-calendar-btn:disabled{cursor:not-allowed;opacity:.45}.us-date-calendar-btn:hover:not(:disabled),.us-date-calendar-btn:focus-visible{color:#0f4d2c}.us-date-calendar{position:fixed;z-index:500000;width:280px;padding:10px;border:1px solid #aeb9ae;background:#fff;color:#15271a;box-shadow:0 10px 28px #0f4d2c29;font-family:Plus Jakarta Sans,Inter,system-ui,sans-serif}.us-date-calendar-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.us-date-calendar-head strong{flex:1;text-align:center;font-size:13px;font-weight:700}.us-date-calendar-head button,.us-date-calendar-foot button{border:1px solid #879789;background:#fff;color:#193c22;font:inherit;font-size:12px;font-weight:700;cursor:pointer}.us-date-calendar-head button{width:28px;height:28px;padding:0}.us-date-calendar-weekdays,.us-date-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}.us-date-calendar-weekdays span{padding:4px 0;color:#607064;font-size:10px;font-weight:700;letter-spacing:.04em;text-align:center;text-transform:uppercase}.us-date-calendar-grid button{height:32px;border:0;background:transparent;color:#193c22;font:inherit;font-size:12px;cursor:pointer}.us-date-calendar-grid button.is-today{box-shadow:inset 0 0 0 1px #193c22}.us-date-calendar-grid button.is-selected,.us-date-calendar-grid button.is-selected.is-today{background:#193c22;color:#fff;box-shadow:none}.us-date-calendar-foot{display:flex;justify-content:space-between;gap:8px;margin-top:8px}.us-date-calendar-foot button{padding:5px 8px}.rate-form-section--stops .rate-section-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.fleet-group-filter-list{display:flex;flex-wrap:wrap;gap:.35rem;width:100%;margin:.35rem 0 .5rem}.fleet-group-filter-label{width:100%;font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;color:#607064}.fleet-group-filter-list .fleet-filter-btn em{font-style:normal;opacity:.7;font-weight:500}.admin-page-tabs{display:flex;gap:.5rem;margin-bottom:1rem}.admin-page-tab{border:1px solid #93a095;background:#f7faf4;color:#15271a;padding:.45rem .9rem;cursor:pointer;font:inherit}.admin-page-tab.is-on{background:#1f3d28;border-color:#1f3d28;color:#f7faf4}.admin-group-members{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem}.admin-group-member-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.45rem .6rem;background:#eef3ea}.admin-group-add{display:grid;gap:.5rem;margin-top:.75rem;flex:0 0 auto}.fleet-driver-row.is-search-flash,.fleet-desk-group.is-search-flash>.fleet-desk-head{animation:fleet-search-flash 1.6s ease-out 1}.fleet-plan-bar.is-search-flash{z-index:5;animation:fleet-search-flash-bar 1.6s ease-out 1;outline:2px solid #c45c28;outline-offset:1px}@keyframes fleet-search-flash{0%{background-color:color-mix(in srgb,#f0c14a 34%,transparent)}to{background-color:transparent}}@keyframes fleet-search-flash-bar{0%{box-shadow:inset 3px 0 0 var(--bar-color),0 0 0 3px color-mix(in srgb,#c45c28 55%,transparent)}to{box-shadow:inset 3px 0 0 var(--bar-color)}}
