@keyframes pulse{0%{transform:scale(1);box-shadow:0 0 0 0 rgba(74,144,226,.7)}70%{transform:scale(1.1);box-shadow:0 0 0 10px transparent}to{transform:scale(1);box-shadow:0 0 0 0 transparent}}@keyframes moveIndicator{0%{transform:translateY(0)}to{transform:translateY(40px)}}@keyframes progressPulse{0%,to{transform:scale(1);box-shadow:0 0 0 4px rgba(74,144,226,.2)}50%{transform:scale(1.1);box-shadow:0 0 0 8px rgba(74,144,226,.1)}}@keyframes progressDot{0%,to{opacity:.4;transform:translateX(-50%) scale(.8)}50%{opacity:1;transform:translateX(-50%) scale(1.2)}}@keyframes lineGlow{0%,to{opacity:.6}50%{opacity:1}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(360deg)}}@keyframes statusDots{0%,20%{content:""}40%{content:"."}60%{content:".."}80%,to{content:"..."}}@keyframes marker-pulse-light{0%{box-shadow:0 0 0 0 rgba(8,64,218,.4)}70%{box-shadow:0 0 0 10px transparent}to{box-shadow:0 0 0 0 transparent}}@keyframes marker-pulse-dark{0%{box-shadow:0 0 0 0 rgba(255,255,255,.6)}70%{box-shadow:0 0 0 10px transparent}to{box-shadow:0 0 0 0 transparent}}.nav-link:active,.nav-link:focus,a:active,a:focus{outline:0;border:0}.btn:focus,.btn:focus-visible,button:focus,button:focus-visible,input[type=button]:focus,input[type=button]:focus-visible{outline:0!important;box-shadow:none!important}#fullscreen-btn{background:#fff padding-box;display:block;border:0;margin:0;padding:5px 12px;text-transform:none;appearance:none;position:absolute;cursor:pointer;user-select:none;direction:ltr;overflow:hidden;text-align:left;color:rgba(0,0,0,.8);font-family:Roboto,Arial,sans-serif;font-size:18px;border-radius:2px;box-shadow:rgba(0,0,0,.3)0 1px 4px -1px;font-weight:500;z-index:100;right:24px;top:13px}.advanced-marker-circle,.advanced-marker-container{position:absolute;z-index:2}.advanced-marker-circle{width:100%;height:100%;border-radius:50%;border:2px solid #fff;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;text-align:center;box-sizing:border-box;overflow:hidden;box-shadow:0 2px 4px rgba(0,0,0,.25);padding:0}.advanced-marker-device-name{display:block;text-align:center;padding:0 2px;color:#fff;font-family:Arial,sans-serif;line-height:1;white-space:nowrap}.advanced-marker-arrow-container{position:absolute;top:0;left:0;width:100%;height:100%;z-index:3;pointer-events:none}.advanced-marker-arrow{position:absolute;top:50%;left:50%;width:0;height:0;transform-origin:50%0;border-left:transparent solid;border-right:transparent solid;border-bottom:#000 solid;border-bottom-width:12px;margin-left:0}#mobileSectionModal .modal-body{padding:1.5rem}@media (max-width:991.98px){#scrollable #geofences,#scrollable #parking,#scrollable #routes,#scrollable #schedules,#scrollable #status,#scrollable #stops,#scrollable #trips,#scrollable #waypoints,#scrollable .secti1on-title,#scrollable .section-caption-fancy,#scrollable h2,#scrollable h3,#siteBadge,#siteTitle{display:none!important}#mobileSectionModal .modal-body{max-height:calc(100vh - 8rem);overflow-y:auto}.page-section{padding-bottom:0}}#siteBadge{margin-left:-5px}#siteTitle{margin-left:2px}#side-view h4{font-size:19px;margin-left:-1px}.gm-style .gm-ui-hover-effect[style*="height: 0"],.gm-ui-hover-effect[style*="height:0"]{height:24px!important}.gm-ui-hover-effect>span{pointer-events:none}.gm-style .gm-ui-hover-effect{position:absolute!important;top:8px!important;right:8px!important;width:24px!important;height:24px!important;display:flex!important;align-items:center!important;justify-content:center!important;background:0 0!important;border:0!important;box-shadow:none!important;padding:0!important;margin:0!important;cursor:pointer!important;z-index:100001!important}.gm-style .gm-ui-hover-effect:hover{background:rgba(0,0,0,.04)!important}.gm-style .gm-ui-hover-effect:active{background:rgba(0,0,0,.08)!important}.gm-style .gm-ui-hover-effect span{width:17px!important;height:17px!important;display:block!important;pointer-events:none!important;margin:0!important;padding:0!important}.gm-style .gm-ui-hover-effect span:empty::before{content:"×";font:400 18px/1 Arial,sans-serif;color:#5d5d5d}.gm-style .gm-ui-hover-effect span::after,.gm-style .gm-ui-hover-effect span::before{content:none!important}@media (max-width:991.98px){.gm-style .gm-style-iw-d{padding:0 16px 14px 0!important;overflow:visible!important}}.gm-style .gm-style-iw-d{padding:0 25px 15px 5px!important;overflow:visible!important}.dark-mode .gm-title{color:#e5e7eb!important;border:0!important}.dark-mode .gm-style .transit-container div,.dark-mode .gm-style-iw-c,.dark-mode .gm-title{background-color:#1f2937!important}.dark-mode .gm-style-iw-d{color:#e5e7eb!important}.gm-style .transit-container .gm-full-width{width:100%!important}.dark-mode .gm-style .transit-container,.dark-mode .gm-title .gm-full-width{background-color:#1f2937!important}.dark-mode .poi-info-window a,.dark-mode .poi-info-window div{background-color:#1f2937!important;color:#e5e7eb!important}.gm-style .gm-style-iw{border:0!important}.gm-style-iw{overflow:hidden!important;display:block!important;white-space:wrap;min-width:100px}.gm-style-iw-chr{padding-left:5px;padding-bottom:10px;height:auto}.info{font-size:10.5px!important}#map-log p,.info p{line-height:15px;padding:0;margin:0}.dark-mode .info{color:#e5e7eb!important}.status-indicator{float:left;width:8px;height:8px;border-radius:4px;margin-top:4px;margin-right:5px}.gm-s{margin:0 0 .1em;font-size:13px}#map-log p{line-height:25px;font-size:16px}#map-log{-ms-overflow-style:none;scrollbar-width:none}#map-log::-webkit-scrollbar{display:none}#parking input[type=text]{width:40px}#noblock label,.noblock label{display:inline-block!important}.checkbox-inline input{margin-right:8px}.toast-container{position:absolute!important;bottom:25px!important;left:20px!important;top:auto!important;right:20px!important;z-index:2147483647;max-width:400px}@media (max-width:576px){.toast-container{left:10px!important;right:10px!important;max-width:none}}#dynamicToast,#dynamicToastMap{max-width:100%;background:#fff;color:#0f172a;border-radius:12px}#dynamicToast{width:min(94vw,352px);box-shadow:0 8px 24px rgba(0,0,0,.12);padding:16px 20px;border:1px solid rgba(0,0,0,.08);--bs-toast-bg:#ffffff;--bs-toast-color:#0f172a;--bs-toast-border-color:rgba(0, 0, 0, 0.08);--bs-toast-opacity:1;box-sizing:border-box}#dynamicToastMap{width:min(90vw,360px);min-width:0;box-shadow:rgba(0,0,0,.3)0 1px 4px -1px;padding:5px 2px;border:0;text-transform:none;appearance:none;user-select:none}@media (max-width:576px){#dynamicToastMap{width:calc(100vw - 110px)!important}}#dynamicToast .toast-body{white-space:normal;word-break:break-word;overflow-wrap:anywhere;flex:1;min-width:0;font-size:.95rem;font-weight:500;line-height:1.5;opacity:1;color:#1f2937;padding:0;display:flex;align-items:flex-start;gap:8px}#dynamicToast .toast-body>i,#dynamicToastMap .toast-body>i{flex-shrink:0;margin-top:2px}#dynamicToast .toast-body>span{flex:1;min-width:0}#dynamicToast .mi-bell,.action-btn i{font-size:16px}#dynamicToast .btn-close{opacity:.6;flex-shrink:0}#dynamicToastMap .toast-body{white-space:normal;font-size:.95rem;font-weight:500;line-height:1.5;opacity:1;color:#1f2937;padding:8px 12px;display:flex;align-items:flex-start;gap:8px}#dynamicToastMap .toast-body,#dynamicToastMap .toast-body>span{flex:1;min-width:0;word-break:break-word;overflow-wrap:anywhere}#cstatus .status-center-active,#cstatus .status-info-active,#cstatus .status-pan-active{background-color:#eaf0fd!important}.dark-mode #cstatus .status-center-active,.dark-mode #cstatus .status-info-active,.dark-mode #cstatus .status-pan-active{background-color:#4a5568!important}.no-wordwrap{white-space:nowrap;display:inline-block}#toastBody{min-width:350px}.dropdown-menu li{padding:5px 10px}.modal-backdrop{background-color:#f7f9fc;opacity:0}.modal-dialog-centered{transform:none;top:0;margin-top:0;position:relative}.modal-content{border-radius:15px;border:0;box-shadow:0 8px 16px rgba(0,0,0,.2);z-index:1050}.modal-header{border-top-left-radius:15px;border-top-right-radius:15px}.modal-footer{border-bottom-left-radius:15px;border-bottom-right-radius:15px}#parkingMap{height:300px;width:100%;margin:20px 0;border-radius:8px}a{text-decoration:none}.work-container{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.work-item{flex:1 1 20%;max-width:160px;min-width:100px;text-align:right}@media (max-width:768px){.work-item{flex:1 1 50%;max-width:none}}@media (max-width:576px){.work-item{flex:1 1 50%}}@media (max-width:400px){.work-item{flex:1 1 50%}}.hidden{display:none}.filter_menu{cursor:pointer}.filter-section-header{font-weight:600;color:#333;margin-bottom:0}.modal-body hr{margin:.1rem 0;opacity:.15}#fleetName,#groupName{font-size:24px;padding:0;margin:-2px}#groupName{margin:0}.pr-10{padding-right:2.5rem!important}.pl-10{padding-left:2.5rem!important}.card-side{display:flex;flex-direction:column;padding:12px 16px;border:0 solid #e5e5e5;border-radius:12px;background:#f8f9fa;box-shadow:0 1px 3px rgba(0,0,0,.04)}.schedule-container{background:#fff;border:1px solid #e9ecef;border-radius:8px;overflow:hidden;box-shadow:0 1px 2px rgba(0,0,0,.02);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;margin-bottom:8px!important;transition:all .2s ease}.schedule-container:hover{box-shadow:0 1px 2px rgba(0,0,0,.04);border-color:#dee2e6}.schedule-header{display:flex;align-items:center;background:#fff;color:#333;padding:10px 12px;position:relative}.device-number,.route-badge{border:0;display:flex;font-weight:600;color:#fff;font-size:0;flex-shrink:0}.device-number{background:#4a90e2;border-radius:3px;width:3px;min-height:36px;height:auto;align-items:center;justify-content:center;margin-right:12px;line-height:1}.route-badge{background:#28a745}.device-info{flex:1;min-width:0}.device-info input{border-bottom:1px dashed #ccc!important;width:90%!important}.device-name{font-size:15px;font-weight:600;margin-bottom:2px;color:#1f2937;line-height:1.2}.device-description{font-size:12px;color:#6b7280;line-height:1.3}.schedule-actions{align-items:center}.btn-mod.btn-border{color:var(--color-dark-1);border:0 solid var(--color-dark-1);background:0 0}.btn.btn-manage{background:#f8f9fa;border:1px solid #e9ecef;color:#4a90e2;font-size:12px;font-weight:600;padding:6px 12px;transition:all .2s;white-space:nowrap}.btn.btn-manage:hover{background:#4a90e2;color:#fff;border-color:#4a90e2;transform:translateY(-1px);box-shadow:0 2px 4px rgba(74,144,226,.2)}.btn-blue,.btn.btn-location,.btn.btn-manage{border-radius:6px;cursor:pointer}.btn.btn-location{background:#f8f9fa;border:1px solid #e9ecef;color:#6b7280;width:36px;height:36px;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.btn.btn-location img{width:22px!important;height:22px!important}.btn.btn-location:hover{background:#e9ecef;color:#1f2937;border-color:#dee2e6}.btn-blue{background:#007bff;border:0;color:#fff;padding:6px 12px;transition:background .2s ease,transform .1s ease;margin-right:-2px}.btn-blue:hover{background:#0056b3;transform:translateY(-1px)}@media (max-width:768px){.schedule-container{margin-bottom:6px!important}.schedule-header{padding:9px 12px}.device-number,.route-badge{width:3px;min-height:32px;margin-right:10px}.device-name{font-size:14px}.device-description{font-size:11px}.btn.btn-manage{font-size:11px;padding:5px 10px}.btn.btn-location{width:28px;height:28px}}.trip-container{background:#f8f9fa;border:0 solid #e5e5e5;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.04);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;margin-bottom:16px}.route-number,.trip-header{display:flex;align-items:center}.trip-header{background:#fff;color:#333;padding:12px 16px;border-bottom:1px solid #e9ecef;position:relative}.route-number{background:#4a90e2;border:0;border-radius:6px;width:50px;height:32px;justify-content:center;font-weight:600;font-size:14px;color:#fff;margin-right:12px}.route-info{flex:1}.route-name{font-size:16px;font-weight:600;margin-bottom:2px;color:#333}.trip-direction{font-size:13px;color:#666}.trip-meta-inline{font-size:12px;color:#555;line-height:1.2;white-space:nowrap}.trip-meta-inline #trip_counter{font-weight:600}.trip-meta-inline .trip-sep{color:#9aa0a6;margin:0 6px}.trip-meta-inline .trip-time{color:#6c757d}.btn-close-trip{background:#f8f9fa;border:1px solid #e9ecef;color:#666;font-size:18px;width:28px;height:28px;border-radius:4px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.btn-close-trip:hover{background:#e9ecef;color:#333}.trip-status-bar{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;background:#fff;border-bottom:1px solid #e9ecef}.trip-nav{background:#f3f4f6;border:1px solid #e5e7eb;color:#374151;width:28px;height:28px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s ease,border-color .2s ease,transform .08s ease;box-shadow:0 1px 2px rgba(0,0,0,.04)}.trip-nav:hover{background:#e9ecef;border-color:#d1d5db}.trip-nav:active{transform:translateY(1px)}.trip-header .trip-nav.prev{margin-right:0}.trip-header .trip-nav.next{margin-left:5px}.current-time{font-size:14px;color:#666;font-weight:500}.vehicle-number{line-height:1;font-size:14px;color:#666}.trip-status{padding:3px 8px;border-radius:8px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;line-height:1}.trip-status.on_time{background:#d4edda;color:#155724}.trip-status.delayed{background:#f8d7da;color:#721c24}.trip-status.early{background:#d1ecf1;color:#0c5460}.stops-timeline{padding:0;background:#fff;max-height:860px;overflow-y:auto;border-radius:0 0 12px 12px}.stop-item{transition:background-color .2s;position:relative}.stop-item:last-child{border-bottom:none}.stop-timeline{display:flex;flex-direction:column;margin-right:16px;position:relative}.timeline-line{transform-origin:top;width:3px;height:40px;background:#e9ecef;position:absolute;top:16px;left:50%;transform:translateX(-50%);transition:all .3s ease;border-radius:1px}.stop-item.completed .timeline-line{background:#4a90e2!important}.stop-item.progress-active .timeline-line{background:#4a90e2!important;opacity:.8!important}.stop-item.last-stop .timeline-line,.stop-item:last-child .timeline-line{display:none}.stop-item.progress-active .stop-indicator{background:#4a90e2;border-color:#4a90e2;animation:progressPulse 2s infinite ease-in-out;box-shadow:0 0 0 4px rgba(74,144,226,.2)}.stop-item.progress-active .timeline-line{animation:lineGlow 2s infinite ease-in-out;transition:height .5s ease-in-out;background:linear-gradient(to bottom,#4a90e2 0,rgba(74,144,226,.6) 80%,rgba(74,144,226,.2) 100%);position:relative;height:45px}.stop-item.progress-active .timeline-line::after{content:"";position:absolute;bottom:-2px;left:50%;transform:translateX(-50%);width:6px;height:6px;background:#4a90e2;border-radius:50%;animation:progressDot 1.5s infinite ease-in-out}.stop-indicator{width:12px;height:12px;border-radius:50%;border:3px solid #e9ecef;background:#fff;position:relative;z-index:2;transition:all .3s ease;box-shadow:0 2px 4px rgba(0,0,0,.1)}.stop-indicator.arrived{background:#4a90e2;border-color:#4a90e2;box-shadow:0 2px 8px rgba(74,144,226,.3)}.stop-indicator.completed{background:#28a745;border-color:#28a745;box-shadow:0 2px 6px rgba(40,167,69,.3)}.stop-indicator.approaching{background:#fff;border-color:#4a90e2;animation:pulse 2s infinite;box-shadow:0 2px 8px rgba(74,144,226,.4)}.stop-indicator.scheduled{background:#fff;border-color:#e9ecef}.stop-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.stop-location{flex:1;min-width:0;margin-right:16px}.stop-name{font-weight:600;font-size:15px;color:#333;margin-bottom:3px}.stop-description{font-size:13px;color:#666;line-height:1.3}.stop-time-info{text-align:right;min-width:80px}.stop-times{display:flex;flex-direction:column;gap:2px;align-items:flex-end}.stop-time-row{display:flex;align-items:baseline;gap:6px}.stop-time-row .time-val{font-size:14px;font-weight:600;color:#222;min-width:46px;text-align:right}.stop-time-row .time-label{font-size:10px;font-weight:600;letter-spacing:.5px;color:#666;background:#f1f3f5;padding:2px 4px;border-radius:3px}.stop-times .dwell-delay{margin-top:2px;font-size:11px;font-weight:500;color:#555;max-width:120px;white-space:nowrap}.stop-id{font-size:12px;color:#999;margin-bottom:4px}.arrives-label{font-size:11px;color:#666;text-transform:uppercase;letter-spacing:.5px;display:block;margin-bottom:2px}.arrival-time{font-size:16px;font-weight:600;color:#333;margin-bottom:2px}.delay-text{font-size:12px;font-weight:500}.delay-text.on-time{color:#28a745}.delay-text.scheduled{color:#6c757d;font-style:italic}.delay-text.late{color:#dc3545}.delay-text.early{color:#17a2b8}.stop-features{display:flex;align-items:center;gap:3px;margin-top:8px}.passenger-icon,.wheelchair-icon{font-size:12px;opacity:.5}.passenger-icon.filled,.wheelchair-icon.accessible{opacity:.8;font-size:10px}.passenger-icon.empty,.wheelchair-icon.not-accessible{opacity:.2}.trip-footer{background:#f8f9fa;padding:16px;border-top:1px solid #e9ecef}.action-btn,.footer-actions{display:flex;gap:8px}.action-btn{flex:1;padding:12px 16px;background:#fff;border:1px solid #dee2e6;border-radius:8px;font-size:14px;font-weight:500;color:#495057;cursor:pointer;transition:all .2s;align-items:center;justify-content:center}.action-btn:hover{background:#4a90e2;color:#fff;border-color:#4a90e2}.icon-location::before{content:"📍"}.icon-gps::before{content:"🧭"}.icon-share::before{content:"📤"}.no-trip-message{text-align:center;padding:48px 24px;color:#666}.no-trip-icon{font-size:48px;margin-bottom:16px}.error-message h3,.loading-message h3,.no-trip-message h3{margin-bottom:8px;color:#333}.error-message p,.loading-message p,.no-trip-message p{margin-bottom:24px}.error-message,.loading-message{text-align:center;padding:48px 24px;color:#666}.error-icon,.loading-spinner{font-size:48px;margin-bottom:16px;animation:spin 2s linear infinite}.error-icon{animation:none}@media (max-width:768px){.trip-header{padding:12px}.route-number{width:50px;height:35px;font-size:14px;margin-right:12px}.route-name{font-size:16px}.stop-header{display:flex;flex-direction:row;justify-content:space-between;align-items:flex-start}.stop-location{flex:1;min-width:0;margin-right:12px}.stop-time-info{text-align:right;min-width:80px;margin-top:0}.stop-times{display:flex;flex-direction:column;gap:2px;align-items:flex-end}.stop-time-row{display:flex;align-items:baseline;gap:6px}.stop-time-row .time-val{font-size:14px;font-weight:600;color:#222;min-width:46px;text-align:right}.stop-time-row .time-label{font-size:10px;font-weight:600;letter-spacing:.5px;color:#666;background:#f1f3f5;padding:2px 4px;border-radius:3px}.stop-times .dwell-delay{margin-top:2px;font-size:11px;font-weight:500;color:#555;text-align:right;white-space:nowrap}.footer-actions{flex-direction:column}.action-btn{width:100%}}@media (max-width:767px){.nav-logo-wrap,.tracking-log{margin-left:-23px}.tracking-log h4{font-size:16px;margin-left:-2px}.mlog p{font-size:14px!important}}.mlog p{font-size:14px!important}.nav-tabs .nav-link{color:#6c757d;border:1px solid transparent}.nav-tabs .nav-link.active{color:#0d6efd;font-weight:600;border-color:#dee2e6 #dee2e6 #fff;background-color:#fff}.nav-tabs .nav-link:hover{color:#0d6efd;border-color:#e9ecef #e9ecef #dee2e6}.nav-tabs{border-bottom:1px solid #dee2e6}.device_details .small-section{padding-top:15px!important;padding-bottom:15px!important}@media (min-width:768px){.device_details .small-section{padding-top:30px!important;padding-bottom:30px!important}}.device_details .device_status{margin-top:10px!important;margin-left:10px!important}@media (min-width:768px){.device_details .device_status{margin-top:20px!important;margin-left:20px!important}}@media (max-width:767px){.device_details .device_status{margin-left:0!important;margin-bottom:15px!important}.device_details .col-md-7{margin-top:0!important;padding-left:0!important}.device_details .col-md-7 .row{display:flex;flex-wrap:wrap;justify-content:flex-start;margin-left:-10px!important;margin-right:0!important}.device_details .col-1{flex:0 0 33.333%;max-width:33.333%;padding-left:10px!important;padding-right:10px!important}.device_details .work-process-item{padding:5px!important;text-align:center!important}.device_details .work-process-icon{margin-bottom:5px!important}.device_details .work-process-title{font-size:14px!important;margin-top:0!important}}.work-process-title{font-size:15px!important}@media (min-width:768px){.page-section{padding-top:100px}}.status-dots::after{content:"";animation:statusDots 1.5s steps(4,end) infinite}.status-item-wrapper{border-bottom:1px solid #f0f0f0}.dark-mode .status-item-wrapper{border-bottom-color:#374151}.status-device-item{color:#1f2937}.dark-mode .status-device-item{color:#f9fafb}.status-device-meta{color:#6b7280}.dark-mode .status-device-meta{color:#9ca3af}.list-item-title{color:#1f2937}.dark-mode .list-item-title{color:#f9fafb}.list-item-subtitle{color:#6b7280}.dark-mode .list-item-subtitle{color:#9ca3af}.list-item-input{border:0;background:0 0;color:#1f2937}.dark-mode .list-item-input{color:#f9fafb}.breadcrumb-text{color:#6c757d}.dark-mode .breadcrumb-text{color:#9ca3af}.breadcrumb-separator{color:#adb5bd}.dark-mode .breadcrumb-separator{color:#6b7280}.trip-template{background:#f8f9fa}.dark-mode .trip-template{background:#1f2937}.schedule-table-header{background:#f8f9fa;border-bottom:2px solid #dee2e6}.dark-mode .schedule-table-header{background:#1f2937;border-bottom-color:#374151}.schedule-table-th{color:#495057}.dark-mode .schedule-table-th{color:#d1d5db}.drag-handle{color:#6c757d}.dark-mode .drag-handle{color:#9ca3af}.stop-name-text{color:#495057}.dark-mode .stop-name-text{color:#e5e7eb}.icon-svg{color:#6b7280}.dark-mode .icon-svg{color:#9ca3af}.bg-statuslog-light{background:#f7f9fc}.bg-statuslog-dark{background:#3a435a}.toast-container.dark-mode .toast{background-color:#3a435a!important;color:#e5e7eb!important}.toast-container.dark-mode .toast-body{color:#e5e7eb!important}.advanced-marker-circle.live-pulse{animation:marker-pulse-light 2s infinite!important}.dark-mode .advanced-marker-circle.live-pulse{animation:marker-pulse-dark 2s infinite!important}.gm-style .gm-style-iw-c .dark-mode,.gm-style .gm-style-iw-c .dark-mode p{color:#e5e7eb!important}.gm-style .dark-mode .s{color:#f9fafb!important}.dark-mode .gm-style .gm-style-iw-a{background-color:transparent!important}.dark-mode .gm-style .gm-style-iw-c{background-color:#1f2937!important;box-shadow:0 2px 7px 1px rgba(0,0,0,.5)!important}.dark-mode .gm-style .gm-style-iw-chr,.dark-mode .gm-style .gm-style-iw-d{background-color:#1f2937!important}.dark-mode .gm-style .gm-style-iw-t::after{background:#1f2937!important;box-shadow:-2px 2px 2px 0 rgba(0,0,0,.3)!important}.dark-mode .gm-style .gm-ui-hover-effect span{background-color:#e5e7eb!important}.dark-mode .gm-style .gm-style-iw-tc::after{background:#1f2937!important}.dark-mode .gm-style .gm-style-iw-tc{background:0 0!important}.dark-mode .modal-content,.dark-mode .modal-header{background-color:#1f2937!important;color:#e5e7eb!important}.dark-mode .modal-header{border-bottom-color:#374151!important;color:#f9fafb!important}.dark-mode .modal-body h4,.dark-mode .modal-body h5,.dark-mode .modal-body h6,.dark-mode .modal-title{color:#f9fafb!important}.dark-mode .modal-body{background-color:#1f2937!important;color:#e5e7eb!important}.dark-mode .modal-footer{background-color:#1f2937!important;border-top-color:#374151!important}.dark-mode .modal-body label,.dark-mode .modal-body p{color:#d1d5db!important}.dark-mode .modal-body .form-control,.dark-mode .modal-body .form-select{background-color:#374151!important;border-color:#4b5563!important;color:#e5e7eb!important}.dark-mode .modal-body .form-control:focus,.dark-mode .modal-body .form-select:focus{background-color:#374151!important;border-color:#6b7280!important;color:#e5e7eb!important}.dark-mode .btn-close{filter:invert(1) grayscale(100%) brightness(200%)}.dark-mode .nav-tabs{border-bottom-color:#374151!important}.dark-mode .nav-tabs .nav-link{color:#9ca3af!important}.dark-mode .nav-tabs .nav-link.active{background-color:#1f2937!important;border-color:#374151 #374151 #1f2937!important;color:#60a5fa!important}.dark-mode .nav-tabs .nav-link:hover{border-color:#4b5563 #4b5563 #374151!important;color:#60a5fa!important}.dark-mode .tab-content{background-color:#1f2937!important;color:#e5e7eb!important}.dark-mode .form-check-input{background-color:#374151!important;border-color:#4b5563!important}.dark-mode .form-check-input:checked{background-color:#3b82f6!important;border-color:#3b82f6!important}.dark-mode .form-check-label{color:#d1d5db!important}.dark-mode .mn-sub{background-color:#3a435a!important;border-color:#4a5568!important}.dark-mode .inner-nav ul li .mn-sub li a{color:#d1d5db!important;opacity:.9!important}.dark-mode .inner-nav ul li .mn-sub li a:hover{background-color:#4a5568!important;color:#fff!important;opacity:1!important}.dark-mode .dropdown-divider{border-top-color:#4a5568!important}@media only screen and (max-width:991px){.dark-mode.mobile-on .desktop-nav ul{background:#1f2937!important}.dark-mode.mobile-on .desktop-nav ul li a{color:#d1d5db!important;border-bottom-color:rgba(255,255,255,.1)!important}.dark-mode.mobile-on .desktop-nav ul li:last-child a{border-bottom:none!important}.dark-mode.mobile-on .desktop-nav ul li a.active,.dark-mode.mobile-on .desktop-nav ul li a:hover{background:#374151!important;color:#fff!important}.dark-mode.mobile-on .desktop-nav ul li ul{border-bottom-color:rgba(255,255,255,.15)!important}}.dark-mode #editModeBarExit{background:var(--color-dark-1)}.dark-mode .edit-bar-content{color:#fff}#editModeBar,.dialog-overlay{position:fixed;left:0;z-index:9999}#editModeBar{display:none;bottom:0;right:0;background:linear-gradient(135deg,#fffff 0%,#fffff 100%);padding:16px 20px;box-shadow:0-4px 20px rgba(0,0,0,.15);border-top:2px solid rgba(255,255,255,.3);backdrop-filter:blur(100px)}#editModeBar>div{display:flex;align-items:center;justify-content:space-between;max-width:100%}#editModeBar .edit-bar-content{flex:1;min-width:0;margin-right:12px}#editModeBar .edit-bar-label{font-size:13px;opacity:.9;margin-bottom:4px;font-weight:500}#editModeBar .edit-bar-label i{font-size:14px;margin-right:4px}#editModeBarText{font-size:16px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#editModeBar .edit-bar-actions{display:flex;gap:8px;flex-shrink:0}#editModeBarExit{background:#007bff;color:#fff;border:0;padding:8px 20px;border-radius:8px;font-weight:700;font-size:14px;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.15);transition:all .2s}.dialog-overlay{top:0;width:100%;height:100%;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center}.dialog-box{background:#fff;border-radius:12px;padding:24px;max-width:400px;width:90%;box-shadow:0 4px 20px rgba(0,0,0,.15)}.dialog-message{margin:0 0 24px;font-size:16px;color:#333;text-align:center}.dialog-input{width:100%;padding:10px;border:1px solid #ddd;border-radius:6px;font-size:15px;margin-bottom:24px}.dialog-buttons{display:flex;gap:12px;justify-content:center}.dialog-btn-cancel,.dialog-btn-confirm,.dialog-btn-ok{padding:10px 24px;border:0;border-radius:6px;cursor:pointer;font-size:15px}.dialog-btn-cancel{background:#f0f0f0;color:#333}.dialog-btn-confirm,.dialog-btn-ok{background:#007bff;color:#fff}.dialog-overlay.dark-mode .dialog-box{background:#1f2937}.dialog-overlay.dark-mode .dialog-message{color:#e5e7eb}.dialog-overlay.dark-mode .dialog-input{background:#374151;border-color:#4b5563;color:#e5e7eb}.dialog-overlay.dark-mode .dialog-input:focus{background:#374151;border-color:#6b7280;outline:0}.dialog-overlay.dark-mode .dialog-btn-cancel{background:#374151;color:#e5e7eb}.dialog-overlay.dark-mode .dialog-btn-cancel:hover{background:#4b5563}.dialog-overlay.dark-mode .dialog-btn-confirm:hover,.dialog-overlay.dark-mode .dialog-btn-ok:hover{background:#0056b3}@media only screen and (max-width:991px){#theme-switch-li{position:absolute;bottom:25px;right:10px;z-index:10000}}.waypoint-item{display:flex;align-items:center;padding:10px 0;border-bottom:1px solid #f0f2f5}.dark-mode .geofence-item,.dark-mode .route-item,.dark-mode .schedule-item,.dark-mode .stop-item,.dark-mode .waypoint-item{display:flex;align-items:center;padding:10px 0;border-bottom:1px solid #3a435a}.waypoint-badge{display:inline-flex;align-items:center;justify-content:center;width:3px;height:34px;min-width:3px;border-radius:2px;background:#047d95;margin-right:8px}.waypoint-content{flex:1;min-width:0}.waypoint-title{font-size:16px;font-weight:500;margin-bottom:1px;line-height:1.3}.waypoint-subtitle{font-size:14px;line-height:1.3}.waypoint-input{width:100%;font-size:16px;font-weight:500;margin-bottom:1px;padding:0}.waypoint-actions{display:flex;gap:3px;margin-left:6px}.waypoint-btn{width:24px;height:24px;padding:0;display:flex;align-items:center;justify-content:center;border-radius:5px}.waypoint-btn-delete{font-size:14px;color:#dc3545}.geofence-item{display:flex;align-items:center;padding:10px 0;border-bottom:1px solid #f0f2f5}.geofence-badge{display:inline-flex;align-items:center;justify-content:center;width:3px;height:34px;min-width:3px;border-radius:2px;background:#12b2e9;margin-right:8px}.geofence-content{flex:1;min-width:0}.geofence-title{font-size:16px;font-weight:500;margin-bottom:1px;line-height:1.3}.geofence-subtitle{font-size:14px;line-height:1.3}.geofence-input{width:100%;font-size:16px;font-weight:500;margin-bottom:1px;padding:0}.geofence-actions{display:flex;gap:3px;margin-left:6px}.geofence-btn{width:24px;height:24px;padding:0;display:flex;align-items:center;justify-content:center;border-radius:5px}.geofence-btn-delete{font-size:14px;color:#dc3545}.route-item{display:flex;align-items:center;padding:10px 0;border-bottom:1px solid #f0f2f5}.route-badge{display:inline-flex;align-items:center;justify-content:center;width:3px;height:34px;min-width:3px;border-radius:2px;background:#2e8b57;margin-right:8px}.route-content{flex:1;min-width:0}.route-title{font-size:16px;font-weight:500;margin-bottom:1px;line-height:1.3}.route-subtitle{font-size:14px;line-height:1.3}.route-input{width:100%;font-size:16px;font-weight:500;margin-bottom:1px;padding:0}.route-actions{display:flex;gap:3px;margin-left:6px}.route-btn{width:24px;height:24px;padding:0;display:flex;align-items:center;justify-content:center;border-radius:5px}.route-btn-delete{font-size:14px;color:#dc3545}.stop-item{display:flex;align-items:center;padding:10px 0;border-bottom:1px solid #f0f2f5}.stop-badge{display:inline-flex;align-items:center;justify-content:center;width:3px;height:34px;min-width:3px;border-radius:2px;background:#9333ea;margin-right:8px}.stop-content{flex:1;min-width:0}.stop-title{font-size:16px;font-weight:500;margin-bottom:1px;line-height:1.3}.stop-subtitle{font-size:14px;line-height:1.3}.stop-input{width:100%;font-size:16px;font-weight:500;margin-bottom:1px;padding:0}.stop-actions{display:flex;gap:3px;margin-left:6px}.stop-btn{width:24px;height:24px;padding:0;display:flex;align-items:center;justify-content:center;border-radius:5px}.stop-btn-delete{font-size:14px;color:#dc3545}.schedule-item{display:flex;align-items:center;padding:10px 0;border-bottom:1px solid #f0f2f5}.schedule-badge{display:inline-flex;align-items:center;justify-content:center;width:3px;height:34px;min-width:3px;border-radius:2px;background:#007bff;margin-right:8px}.schedule-content{flex:1;min-width:0}.schedule-title{font-size:16px;font-weight:500;margin-bottom:1px;line-height:1.3}.schedule-subtitle{font-size:14px;line-height:1.3}.schedule-actions{display:flex;gap:3px;margin-left:6px}.schedule-btn{padding:5px 10px;font-size:13px;font-weight:500;letter-spacing:.005em;border-radius:10px;color:var(--color-primary-1);background:var(--color-primary-light-1)}.dark-mode .schedule-btn{background:#3a435a;color:#fff}.schedule-breadcrumb{display:flex;flex-direction:column;gap:4px}.schedule-breadcrumb-label{font-size:12px;color:#6b7280;line-height:1.2}.schedule-breadcrumb-title{font-size:18px;font-weight:600;line-height:1.3;margin:1px 0}.schedule-breadcrumb-subtitle{font-size:12px;color:#6b7280;line-height:1.2}.dark-mode .schedule-breadcrumb-label,.dark-mode .schedule-breadcrumb-subtitle{color:#9ca3af}body{opacity:0}.btn,.map-control-btn,.page,.page-section,body,main,nav{transition:background-color .3s ease,color .3s ease}img[data-light][data-dark]{transition:opacity .2s ease}.dropdown-divider,.inner-nav .mn-sub,.inner-nav .mn-sub .mn-sub,.mn-has-multi a,.mn-sub,.mn-sub *,.mn-sub>li:first-child>a,.mn-sub>li:last-child>a,.transparent .mn-sub,.transparent .mn-sub>li:first-child>a,.transparent .mn-sub>li:last-child>a{border-radius:0!important;border-top-left-radius:0!important;border-top-right-radius:0!important;border-bottom-left-radius:0!important;border-bottom-right-radius:0!important}li:has(a) a:not(:has(#logoutButton)):not([data-bs-toggle=modal]){pointer-events:none!important}li:has(a){cursor:pointer!important}@media (max-width:767px){#filterModal .modal-dialog,#mobileSectionModal .modal-dialog{margin:0;position:fixed;top:0;right:0;bottom:0;width:100%;max-width:100%;height:100vh;transform:translateX(100%);transition:transform .3s ease-out}#filterModal.show .modal-dialog,#mobileSectionModal.show .modal-dialog{transform:translateX(0)}#filterModal.modal.fade .modal-dialog,#mobileSectionModal.modal.fade .modal-dialog{transition:transform .3s ease-out}#filterModal .modal-content,#mobileSectionModal .modal-content{height:100%;border:0;border-radius:0}}#history-controls{background:rgba(255,255,255,.95)!important}.dark-mode #history-controls{background:rgba(63,73,94,.95)!important}#history-alerts-sidebar{border-right:1px solid rgba(0,0,0,.1)}.dark-mode #history-alerts-sidebar{background:#1f2937!important;border-right:1px solid rgba(255,255,255,.1)}.history-alert-card{background:#fff;border-radius:6px;padding:8px;margin-bottom:6px;border-left:3px solid;box-shadow:0 1px 2px rgba(0,0,0,.08);cursor:pointer;transition:transform .2s,box-shadow .2s}.history-alert-card:hover{transform:translateX(4px);box-shadow:0 2px 6px rgba(0,0,0,.15)}.dark-mode .history-alert-card{background:rgba(63,73,99,.9)}#timelineSlider{height:6px!important;background:#cad0d7!important;border-radius:3px!important;outline:0!important;-webkit-appearance:none!important;appearance:none!important}.dark-mode #timelineSlider{background:#4e5a76!important}#timelineSlider::-webkit-slider-runnable-track{height:6px!important;background:#cad0d7!important;border-radius:3px!important;border:0!important}.dark-mode #timelineSlider::-webkit-slider-runnable-track{background:#4e5a76!important}#timelineSlider::-moz-range-track{height:6px!important;background:#cad0d7!important;border-radius:3px!important;border:0!important}.dark-mode #timelineSlider::-moz-range-track{background:#4e5a76!important}#timelineSlider::-webkit-slider-thumb{-webkit-appearance:none!important;appearance:none!important;width:16px!important;height:16px!important;border-radius:50%!important;background:#335cd6!important;cursor:pointer!important;box-shadow:0 2px 4px rgba(0,0,0,.2)!important;margin-top:-5px!important;border:0!important}.dark-mode #timelineSlider::-webkit-slider-thumb{background:#1f2937!important}#timelineSlider::-moz-range-thumb{width:16px!important;height:16px!important;border-radius:50%!important;background:#335cd6!important;cursor:pointer!important;border:0!important;box-shadow:0 2px 4px rgba(0,0,0,.2)!important}.dark-mode #timelineSlider::-moz-range-thumb{background:#5d86fe!important}#timelineSlider::-moz-range-progress{height:6px!important;background:#335cd6!important;border-radius:3px!important}.dark-mode #timelineSlider::-moz-range-progress{background:#5d86fe!important}