@keyframes floatOrb{0%{transform:translate(0)scale(1)}50%{transform:translate(80px,60px)scale(1.1)}to{transform:translate(-40px,-40px)scale(.95)}}#planRouteModal .vpn-circuits-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}#planRouteModal .vpn-circuits-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}#planRouteModal .target-fields-grid .form-group>input[type=text],#planRouteModal .target-fields-grid .target-agency-controls input[type=text]{box-sizing:border-box;height:38px}@media (width<=900px){#planRouteModal .arrival-clock-popover{width:min(176px,100vw - 24px)}}@media (width<=720px){#planRouteModal .airport-fields-grid,#planRouteModal .target-fields-grid,#planRouteModal .route-segment-between .segment-controls{max-width:100%}#planRouteModal .route-segment-between .segment-controls,#planRouteModal .segment-controls,#planRouteModal .route-segment-between .segment-controls-grid,#planRouteModal .segment-controls-grid{grid-template-columns:1fr;align-items:stretch}}.sidebar-toggle-btn,.sidebar-reveal-btn{flex-shrink:0;display:none}.search-bar--compact input,.search-bar--compact input::placeholder{font-size:13px}#routeInsertPointFormHost .target-fields-grid .form-group>input[type=text],#routeInsertPointFormHost .target-fields-grid .target-agency-controls input[type=text]{box-sizing:border-box;height:38px}#routeInsertPointFormHost .vpn-circuits-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}#routeInsertPointFormHost .vpn-circuits-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}@media (width<=900px){.vpn-station-map-split{flex-direction:column!important}.vpn-station-map-split>div:first-child{flex:none!important;width:100%!important;height:50vh!important;min-height:300px!important}.vpn-station-map-split .vpn-station-pick-map{height:100%!important;min-height:0!important}.vpn-station-selected-sidebar{border-top:1px solid var(--border-color);max-height:40vh;border-left:0!important;width:100%!important;min-width:0!important}}#planRouteModal .modal-container,#planRouteModal .modal-header,#planRouteModal .modal-plan-toolbar,#planRouteModal .modal-body,#planRouteModal .modal-footer,#planRouteModal .modal-header h3,#planRouteModal label,#planRouteModal input,#planRouteModal textarea,#planRouteModal select,#planRouteModal .form-group,#planRouteModal .dest-title{-webkit-user-select:text;user-select:text}body.dark-mode .close-modal:hover,body.dark-mode .menu-item:hover{background-color:var(--border-color)}body.dark-mode .search-bar,body.dark-mode .stat-card,body.dark-mode .map-container{background-color:var(--card-bg);border-color:var(--border-color)}body.dark-mode .user-info .user-name,body.dark-mode .breadcrumb h2{color:var(--text-dark)}body.dark-mode .card,body.dark-mode .route-list-panel{background-color:var(--card-bg);border-color:var(--border-color)}body.dark-mode .user-profile,body.dark-mode .profile-dropdown{background-color:var(--card-bg);border-color:var(--border-color)}@media (width<=900px){.summary-kpi-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=560px){#planRouteModal{width:100vw;padding:24px 12px 16px;left:0}#planRouteModal .modal-container{max-width:100%}.geocode-alert-overlay,.delete-confirm-overlay{width:100vw;padding:16px;left:0}.geocode-alert-modal,.delete-confirm-modal{max-width:100%}.summary-kpi-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=480px){.check-new-location-compare-inner{justify-content:space-between;width:100%}}@media (width<=768px){.check-new-location-view{padding:12px 12px 16px}.check-new-location-day-tabs{flex-wrap:nowrap}.check-new-location-layout,.check-new-location-coords-panel{grid-template-columns:1fr}.check-new-location-map{height:200px}.coords-pair{grid-template-columns:1fr 1fr;gap:8px}.check-new-location-action-row .btn{flex:100%}.check-new-location-meta{white-space:normal}}@media (width<=768px){.route-planning-view{padding:0 12px 16px}.route-planning-toolbar{flex-direction:column;align-items:stretch}.route-planning-search{flex:auto}.route-planning-meta{margin-left:0}.route-planning-day-head{flex-direction:column}.route-planning-day-actions{justify-content:space-between;width:100%;margin-left:0}.route-planning-row{grid-template-rows:auto auto;grid-template-columns:24px 1fr}.route-planning-order{grid-column:2;width:24px;height:24px;font-size:11px}.route-planning-body{grid-column:1/-1}}@media (width<=640px){.settings-vpn-grid{grid-template-columns:1fr}.settings-vpn-side+.settings-vpn-side{border-left:none;border-top:1px solid var(--border-color);margin-top:16px;margin-left:0;padding-top:16px;padding-left:0}}@media (width<=900px){.settings-map-provider-picker{grid-template-columns:1fr}}.modal-date-tabs .tab.tab-date.active .tab-date-sub,body.dark-mode .modal-date-tabs .tab.tab-date.active .tab-date-sub{color:var(--primary-orange)}@media (width<=900px){.modal-plan-top-row{flex-wrap:wrap;gap:6px}.modal-toolbar-item-date{flex:100%;max-width:none}.modal-plan-add-actions{flex-wrap:nowrap;flex:100%}}@media (width<=640px){.modal-plan-top-row{flex-direction:column;align-items:stretch}.modal-toolbar-item,.modal-toolbar-item-date{flex:100%;max-width:none}.modal-plan-add-actions{flex-wrap:wrap;flex:100%}.modal-plan-add-actions .btn,.modal-plan-add-actions .modal-plan-add-btn{flex:calc(50% - 3px)}}@keyframes dangerPulse{0%{box-shadow:0 0 #ef444466}70%{box-shadow:0 0 0 10px #ef444400}to{box-shadow:0 0 #ef444400}}@keyframes successIconScale{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@media (width<=1023px){.app-container{--sidebar-offset:0px}.sidebar-toggle-btn{display:flex}.app-container:not(.sidebar-open) .sidebar-reveal-btn{display:inline-flex}.app-container.sidebar-open .sidebar-reveal-btn{display:none}.sidebar{height:100dvh;max-height:100dvh;box-shadow:none;position:fixed;top:0;left:0;transform:translate(-100%)}.app-container:not(.sidebar-open) .sidebar{transform:translate(-100%)}.app-container.sidebar-open .sidebar{transform:translate(0);box-shadow:8px 0 32px #0f172a2e}}@media (width>=1024px){.sidebar-toggle-btn{display:flex}.app-container:not(.sidebar-collapsed) .sidebar-reveal-btn{display:none}.app-container:not(.sidebar-collapsed){--sidebar-offset:var(--sidebar-width)}.app-container.sidebar-collapsed .sidebar{pointer-events:none;height:100dvh;position:fixed;top:0;left:0;transform:translate(-100%)}.app-container.sidebar-collapsed .sidebar-backdrop{display:none!important}}@media (width<=1200px){.dashboard-layout{grid-template-columns:1fr;height:auto;min-height:480px}.dashboard-layout>.map-container{min-height:360px}.dashboard-layout>.route-list-panel{max-height:420px}.stats-grid>.stat-card-kpi{flex:calc(50% - 8px);min-width:140px}.stats-grid>.stat-card-kpi.border-blue{flex:100%;min-width:100%}}@media (width<=1023px){.main-content{--main-content-pad-x:16px;padding:16px 16px 20px}.topbar{margin-bottom:16px}.breadcrumb h2{word-break:break-word;font-size:18px;line-height:1.3}.search-bar,.search-bar--compact{width:100%;max-width:100%}.dashboard-controls{flex-wrap:wrap;gap:10px;padding:12px 14px}.dashboard-controls .spacer{display:none}.date-tabs{-webkit-overflow-scrolling:touch;flex:100%;margin-left:0;overflow-x:auto}.map-legend-row{flex-wrap:wrap}.map-card-header{flex-wrap:wrap;gap:10px}.map-card-header-actions{flex-wrap:wrap}}@media (width<=768px){.main-content{--main-content-pad-x:12px;padding:12px 12px 16px}.topbar-actions{justify-content:flex-end;gap:8px;width:100%}.topbar-start{flex:100%}.user-profile .user-info{display:none}.breadcrumb span{font-size:12px}.breadcrumb h2{font-size:16px}.stats-grid{--stat-kpi-min:100%;--stat-kpi-time-min:100%;--stat-circuits-min:100%}.stats-grid>.stat-card-kpi,.stats-grid>.stat-card-kpi.border-blue,.stats-grid>.stat-card-circuits{flex:100%;width:100%;min-width:0}.stats-grid>.stat-card-kpi .stat-value{white-space:normal}.stats-grid>.stat-card-kpi .stat-label{white-space:normal;padding-left:44px}.dashboard-layout>.map-container{min-height:280px}.route-list-panel .card-header h3{font-size:15px}.check-new-location-controls{grid-template-columns:1fr 1fr;align-items:stretch;gap:10px;display:grid}.check-new-location-day-tabs-wrap{grid-column:span 2}.check-new-location-search{grid-column:span 2;width:100%;max-width:none}.check-new-location-export-btn{grid-column:span 2;justify-content:center;width:100%}.check-new-location-meta{white-space:normal}}@media (width<=1023px){html,body{height:auto;min-height:100dvh;overflow:hidden auto}body.sidebar-scroll-lock{width:100%;position:fixed;overflow:hidden}.app-container{height:auto;min-height:100dvh;min-height:-webkit-fill-available;overflow:visible}.main-content{flex:auto;min-height:auto;overflow:hidden visible}.fullscreen-dashboard-wrapper:not([hidden]){height:auto;display:block;overflow:visible}.dashboard-layout{height:auto;min-height:0}.dashboard-layout>.map-container{min-height:300px}.dashboard-layout>.map-container .map-view-shell,.dashboard-layout>.map-container .map-view,.dashboard-layout>.map-container #map{height:320px;min-height:280px}.route-list-panel{max-height:none;overflow:visible}.route-list-panel .route-cards{flex:none;min-height:0;max-height:none;overflow:visible}.route-planning-view:not([hidden]),.check-new-location-view:not([hidden]),.summary-report-view:not([hidden]),.today-route-view:not([hidden]),.settings-view:not([hidden]){flex-direction:column;flex:none;min-height:auto;display:flex;overflow:visible}.route-planning-toolbar,.summary-toolbar{flex-wrap:wrap;gap:10px}.route-planning-meta{white-space:normal;width:100%;margin-left:0}.route-planning-split-layout,.route-planning-details-panel,.summary-report-container,.today-route-split-layout,.today-route-details-panel{-webkit-overflow-scrolling:touch;flex:none;min-height:auto;max-height:none;overflow:visible}.check-new-location-layout{flex-direction:column;flex:none;gap:16px;min-height:auto;display:flex;overflow:visible}.check-new-location-list-panel,.check-new-location-detail-panel{min-height:auto;max-height:none;overflow:visible}.check-new-location-list{flex:none;height:220px;max-height:35vh;padding-right:4px;overflow-y:auto}.check-new-location-detail-panel,.check-new-location-detail,.settings-layout{overflow:visible}#planRouteModal{-webkit-overflow-scrolling:touch;align-items:flex-start;width:100vw;padding:16px 12px 24px;left:0;overflow-y:auto}#planRouteModal .modal-container{max-width:100%;max-height:none;margin-bottom:24px}#planRouteModal .modal-body{max-height:none;overflow:visible}#routeInsertPointModal{-webkit-overflow-scrolling:touch;align-items:flex-start;width:100vw;padding:16px 12px 24px;left:0}#routeInsertPointModal .route-insert-point-modal{max-width:100%;max-height:none}#routeInsertPointModal .route-insert-point-body{max-height:none;overflow:visible}.geocode-alert-overlay,.delete-confirm-overlay{-webkit-overflow-scrolling:touch;padding:16px 12px;overflow-y:auto;width:100vw!important;left:0!important}.geocode-alert-modal,.delete-confirm-modal{max-width:100%}.modal-overlay:not(#planRouteModal) .modal-container{-webkit-overflow-scrolling:touch;max-height:calc(100dvh - 32px);overflow-y:auto}}@media (width<=480px){.icon-btn{width:36px;height:36px}.sidebar{width:min(var(--sidebar-width), 88vw)}.menu-item{padding:10px 16px}.menu-title{padding:0 16px}.logo-text span{display:none}}@keyframes loginBgDrift{0%{transform:translate(-1.2%,-.8%)scale(1.03)}to{transform:translate(1.2%,.8%)scale(1.05)}}@keyframes loginPinPulse{0%,to{opacity:.9;transform:scale(1)}50%{opacity:1;transform:scale(1.45)}}@keyframes loginRingFloat{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-14px)scale(1.08)}}@keyframes loginRouteFlow{0%{stroke-dashoffset:0}to{stroke-dashoffset:-120px}}@media (prefers-reduced-motion:reduce){.sidebar,.sidebar-backdrop{transition:none}}@media (width<=560px){.login-brand-logo h1{font-size:28px}}@keyframes todayRouteSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (width<=992px){.today-route-split-layout{flex-direction:column;overflow:visible}.today-route-days-sidebar{white-space:nowrap;border-bottom:1px solid var(--border-color);flex-direction:row;width:100%;padding-bottom:12px;overflow-x:auto}.today-route-day-card{flex-shrink:0;min-width:160px}.today-route-day-card:hover{transform:none}.today-route-day-card.active{transform:translateY(-2px)}.today-route-details-panel{width:100%;box-shadow:none;padding:16px}}@keyframes emojiPickerIn{0%{opacity:0;transform:translateY(-8px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=900px){.settings-layout{grid-template-columns:1fr}.settings-profile-card{grid-column:auto}.settings-info-grid{grid-template-columns:1fr}}@media (width<=768px){.settings-view:not([hidden]){padding:0 12px 16px}.settings-option-row{flex-direction:column;align-items:flex-start}.settings-inspection-round-picker{grid-template-columns:1fr}.settings-inspection-round-actions{flex-direction:column;align-items:stretch}.settings-inspection-round-save-btn{width:100%;margin-left:0}}@media (width<=992px){.route-planning-split-layout{flex-direction:column;overflow:visible}.route-planning-days-sidebar{white-space:nowrap;border-bottom:1px solid var(--border-color);flex-direction:row;width:100%;padding-bottom:12px;overflow-x:auto}.route-planning-day-card{flex-shrink:0;min-width:160px}.route-planning-day-card:hover{transform:none}.route-planning-day-card.active{transform:translateY(-2px)}.day-card-arrow{display:none}.route-planning-details-panel{width:100%;box-shadow:none;padding:16px}}@media (width<=768px){.wifi-station-map-view .wifi-toolbar{flex-direction:column;gap:16px}.wifi-station-map-view .wifi-toolbar-controls{flex-direction:column;gap:8px}}@media (width>=1200px){.wifi-coordinators-container{grid-template-columns:repeat(4,1fr)}}@media (width<=768px){.wifi-toolbar{flex-direction:column;align-items:stretch;gap:16px}.wifi-toolbar-controls{flex-direction:column;align-items:stretch}.wifi-search-bar{width:100%}.wifi-map-search-btn{justify-content:center;width:100%}}.menu-title-vpn-text,.menu-title-wifi-text{color:#1a365d!important;text-underline-offset:4px!important;letter-spacing:.5px!important;border-bottom:none!important;margin-bottom:8px!important;padding-bottom:4px!important;font-size:14.5px!important;font-weight:700!important;-webkit-text-decoration:underline #1a365d66!important;text-decoration:underline #1a365d66!important;display:block!important}body.dark-mode .menu-title-vpn-text,body.dark-mode .menu-title-wifi-text{color:#38bdf8!important;text-underline-offset:4px!important;border-bottom:none!important;-webkit-text-decoration:underline #38bdf866!important;text-decoration:underline #38bdf866!important}.menu-group.menu-group-vpn,.menu-group.menu-group-wifi{background:0 0!important;border:none!important;border-bottom:1px solid #13252c14!important;border-radius:0!important}body.dark-mode .menu-group.menu-group-vpn,body.dark-mode .menu-group.menu-group-wifi{background:0 0!important;border-bottom:1px solid #ffffff0f!important}@media (width<=768px){#fullscreen-dashboard-wrapper .map-card-header-main,#fullscreen-dashboard-wrapper .map-legend-row,#fullscreen-dashboard-wrapper .map-legend{flex-wrap:wrap}#fullscreen-dashboard-wrapper .map-card-header .dashboard-map-search{flex-basis:100%;width:100%!important}}:root{--apple-blue:#06c;--apple-focus:#0071e3;--apple-sky:#2997ff;--apple-ink:#1d1d1f;--apple-muted:#6e6e73;--apple-paper:#fff;--apple-canvas:#f5f5f7;--apple-pearl:#fafafc;--apple-tile:#272729;--apple-line:#e0e0e0;--apple-soft-line:#f0f0f0;--apple-font:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Inter", "Sarabun", system-ui, sans-serif;--apple-ease:cubic-bezier(.22, 1, .36, 1);--apple-fast:.16s;--apple-enter:.36s;--bg-color:var(--apple-canvas);--sidebar-bg:var(--apple-canvas);--card-bg:var(--apple-paper);--text-dark:var(--apple-ink);--text-primary:var(--apple-ink);--text-secondary:var(--apple-muted);--text-gray:var(--apple-muted);--text-light:var(--apple-muted);--primary-orange:var(--apple-blue);--primary-orange-light:#eaf3ff;--primary-orange-hover:var(--apple-blue);--status-blue:var(--apple-blue);--border-color:var(--apple-line);--font-family:var(--apple-font);--radius-md:8px;--radius-lg:18px;--radius-xl:18px;--shadow-sm:none;--shadow-md:none;--shadow-lg:none;--sidebar-width:264px}html{background:var(--apple-canvas)}#apple-ui #apple-app{color:var(--apple-ink);font:400 17px/1.47 var(--apple-font);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;background:var(--apple-canvas)!important}#apple-ui #apple-app *,#apple-ui #apple-app :before,#apple-ui #apple-app :after{box-sizing:border-box}#apple-ui #apple-app :is(.gemini-aurora-bg,.glow-orb,.login-bg-pattern){display:none!important}#apple-ui #apple-app :is(h1,h2,h3,h4,h5,h6){font-family:var(--apple-font);letter-spacing:-.025em;line-height:1.35;text-shadow:none!important;font-weight:600!important}#apple-ui #apple-app :is(button,input,select,textarea){font-family:var(--apple-font)}#apple-ui #apple-app :is(button,.btn,[role=button],.menu-item){transition:transform var(--apple-fast) var(--apple-ease), background-color var(--apple-fast) ease, color var(--apple-fast) ease!important;box-shadow:none!important}#apple-ui #apple-app :is(button,.btn,[role=button]:not(.leaflet-marker-icon),.menu-item):active:not(:disabled){transform:scale(.95)!important}#apple-ui #apple-app :is(button,a,[role=button],input,select,textarea):focus-visible{outline-offset:3px;outline:2px solid var(--apple-focus)!important;box-shadow:none!important}#apple-ui #apple-app :is(button,.btn):disabled{opacity:.45;cursor:not-allowed;transform:none!important}#apple-ui #apple-app :is(.btn,.login-submit,.reg-submit){min-height:44px;padding:11px 22px;font-size:14px;line-height:1.47;background-image:none!important;border-radius:9999px!important;font-weight:400!important}#apple-ui #apple-app :is(.btn-primary,.btn-calculate-route,.login-submit,.reg-submit){color:#fff!important;background:var(--apple-blue)!important;border:1px solid var(--apple-blue)!important}#apple-ui #apple-app :is(.btn-outline,.btn-secondary,.btn-light-blue,.btn-search-loc,.btn-add-destination,.modal-plan-add-btn){color:var(--apple-blue)!important;background:var(--apple-paper)!important;border:1px solid var(--apple-line)!important;border-radius:9999px!important}#apple-ui #apple-app :is(.btn-danger,.btn-vpn-remove-row){background:var(--apple-paper)!important;color:#b42318!important;border:1px solid var(--apple-line)!important}#apple-ui #apple-app :is(.icon-btn,.modal-close,.map-capture-btn,.login-toggle-password){min-width:44px;min-height:44px;box-shadow:none!important;border-radius:50%!important}#apple-ui #apple-app .sidebar{padding-top:0;background:var(--apple-canvas)!important;border-right:1px solid var(--apple-line)!important;box-shadow:none!important;transition:transform .3s var(--apple-ease)!important}#apple-ui #apple-app .sidebar-header{padding:28px 24px 24px;border-bottom:0!important}#apple-ui #apple-app .sidebar-header .logo-text{text-align:left}#apple-ui #apple-app .sidebar-header .logo-text h1{text-align:left;color:var(--apple-ink);-webkit-text-fill-color:currentColor;background:0 0;font-size:25px}#apple-ui #apple-app .brand-caption{color:var(--apple-muted);margin:6px 0 0;font-size:12px;line-height:1.5}#apple-ui #apple-app .menu-group{margin:0 0 24px;padding:0 12px}#apple-ui #apple-app .menu-title{letter-spacing:.025em;margin:0 0 8px;padding:0 12px;font-size:11px;font-weight:600;color:var(--apple-muted)!important;box-shadow:none!important;background:0 0!important;border:0!important}#apple-ui #apple-app .menu-item{gap:12px;min-height:44px;margin:3px 0;padding:10px 12px;font-size:13px;font-weight:400;color:var(--apple-ink)!important;background:0 0!important;border:0!important;border-radius:8px!important}#apple-ui #apple-app .menu-item i{font-size:19px;color:var(--apple-muted)!important}#apple-ui #apple-app .menu-item.active{font-weight:600;background:var(--apple-paper)!important;color:var(--apple-blue)!important}#apple-ui #apple-app .menu-item.active i{color:var(--apple-blue)!important}#apple-ui #apple-app .menu-item:before,#apple-ui #apple-app .menu-item:after{display:none!important}#apple-ui #apple-app .sidebar-footer{border-top:1px solid var(--apple-line);padding:12px}#apple-ui #apple-app .sidebar-logout-btn{width:100%}#apple-ui #apple-app .main-content{--main-content-pad-x:24px;background:var(--apple-canvas)!important}#apple-ui #apple-app .topbar{min-height:64px;padding-top:12px;padding-bottom:12px;color:#fff!important;box-shadow:none!important;background:#000!important;border:0!important}#apple-ui #apple-app .topbar :is(h2,.breadcrumb,.breadcrumb span,.user-name,.icon-btn){color:#fff!important}#apple-ui #apple-app .topbar .breadcrumb h2{font-weight:600;font-size:21px!important}#apple-ui #apple-app .topbar .icon-btn{background:var(--apple-ink)!important}#apple-ui #apple-app .avatar{border-radius:50%;background:var(--apple-tile)!important;color:#fff!important}#apple-ui #apple-app .user-profile{background:0 0!important;border:0!important}#apple-ui #apple-app .profile-dropdown{border:1px solid var(--apple-line);border-radius:11px;background:var(--apple-paper)!important;box-shadow:none!important}#apple-ui #apple-app .profile-dropdown-item{min-height:44px;color:var(--apple-ink)!important}#apple-ui #apple-app :is(.card,.stat-card,.wifi-stat-card,.route-card,.destination-block,.settings-card,.login-card,.reg-card,.today-route-details-panel,.today-route-days-sidebar){-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--apple-paper)!important;border:1px solid var(--apple-line)!important;box-shadow:none!important;border-radius:18px!important}#apple-ui #apple-app :is(.card,.stat-card,.wifi-stat-card):hover{box-shadow:none!important;transform:none!important}#apple-ui #apple-app :is(.card-header,.map-card-header,.card-head){padding:20px 24px;background:var(--apple-paper)!important;border-bottom:1px solid var(--apple-soft-line)!important}#apple-ui #apple-app :is(.card-header,.map-card-header,.card-head) h3{color:var(--apple-ink)!important;font-size:17px!important}#apple-ui #apple-app :is(.dashboard-controls,.summary-toolbar,.wifi-toolbar,.route-planning-toolbar){flex-wrap:wrap;gap:12px;padding-top:20px;padding-bottom:20px;box-shadow:none!important;background:0 0!important;border:0!important}#apple-ui #apple-app :is(.dashboard-controls-inline-field,.fiscal-year-field){box-shadow:none!important;background:0 0!important;border-color:#0000!important}#apple-ui #apple-app #fullscreen-dashboard-wrapper .stats-grid,#apple-ui #apple-app .wifi-stats-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:24px;display:grid;box-shadow:none!important;background:0 0!important;border:0!important;padding:0!important}#apple-ui #apple-app #fullscreen-dashboard-wrapper .stats-grid>.stat-card,#apple-ui #apple-app .wifi-stat-card{min-height:132px;background:var(--apple-paper)!important;border:1px solid var(--apple-line)!important;box-shadow:none!important;padding:22px 18px!important}#apple-ui #apple-app .stat-card-head{flex-wrap:wrap;align-items:center;gap:12px;display:flex}#apple-ui #apple-app :is(.stat-value,.wifi-stat-value){letter-spacing:-.025em;white-space:normal;line-height:1.35;color:var(--apple-ink)!important;-webkit-text-fill-color:currentColor!important;font-size:clamp(21px,2vw,30px)!important;font-weight:600!important}#apple-ui #apple-app :is(.stat-label,.wifi-stat-label){margin-top:8px;color:var(--apple-muted)!important;white-space:normal!important;font-size:13px!important}#apple-ui #apple-app :is(.stat-icon,.wifi-stat-icon){width:32px;height:32px;font-size:18px;background:var(--apple-canvas)!important;color:var(--apple-muted)!important;border-radius:8px!important}#apple-ui #apple-app .stat-badge{border:0;font-size:11px;color:var(--apple-blue)!important;background:var(--apple-canvas)!important}#apple-ui #apple-app .stat-circuits-detail{color:var(--apple-muted);line-height:1.47;font-size:12px!important}#apple-ui #apple-app #fullscreen-dashboard-wrapper .dashboard-layout>:is(.map-container,.route-list-panel){background:var(--apple-paper)!important;border-color:var(--apple-line)!important}#apple-ui #apple-app :is(.route-planning-hero,.today-route-hero,.settings-hero){background:var(--apple-tile)!important;box-shadow:none!important;color:#fff!important;border:0!important;border-radius:0!important;padding:32px!important}#apple-ui #apple-app :is(.route-planning-hero,.today-route-hero,.settings-hero) :is(h1,h2,h3,p){color:#fff!important}#apple-ui #apple-app :is(.route-planning-hero,.today-route-hero,.settings-hero) :is(i,a){color:var(--apple-sky)!important}#apple-ui #apple-app :is(.date-tabs,.tab-group,.nav-tabs,.modal-date-tabs){gap:4px;max-width:100%;overflow-x:auto;box-shadow:none!important;background:#ebebed!important;border:0!important;border-radius:9999px!important;padding:4px!important}#apple-ui #apple-app :is(.date-tabs,.tab-group,.nav-tabs,.modal-date-tabs) :is(.tab,.tab-item,.nav-link){flex-shrink:0;min-height:44px;padding:10px 16px;font-size:14px;color:var(--apple-muted)!important;box-shadow:none!important;background:0 0!important;border:1px solid #0000!important;border-radius:9999px!important}#apple-ui #apple-app :is(.date-tabs,.tab-group,.nav-tabs,.modal-date-tabs) .active{font-weight:600;background:var(--apple-paper)!important;color:var(--apple-blue)!important;border-color:var(--apple-line)!important}#apple-ui #apple-app :where(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),select,textarea){min-height:44px;transition:border-color var(--apple-fast) ease;border-radius:8px;padding:10px 12px;font-size:14px;line-height:1.47;background:var(--apple-paper)!important;color:var(--apple-ink)!important;box-shadow:none!important;border:1px solid #d2d2d7!important}#apple-ui #apple-app :is(input,select,textarea):focus{border-color:var(--apple-focus)!important}#apple-ui #apple-app :is(input,textarea)::placeholder{color:var(--apple-muted);opacity:1}#apple-ui #apple-app :is(.search-bar,.dashboard-map-search,.wifi-search-bar,.login-input-wrap,.reg-input){min-height:48px;background:var(--apple-paper)!important;box-shadow:none!important;border:1px solid #d2d2d7!important;border-radius:11px!important}#apple-ui #apple-app :is(.search-bar,.dashboard-map-search,.wifi-search-bar){border-radius:9999px!important}#apple-ui #apple-app :is(.search-bar,.dashboard-map-search,.wifi-search-bar,.login-input-wrap,.reg-input) :is(input,select){min-width:0;box-shadow:none!important;background:0 0!important;border:0!important}#apple-ui #apple-app :is(.login-input-wrap,.reg-input):focus-within{outline:2px solid var(--apple-focus);outline-offset:2px}#apple-ui #apple-app :is(.login-field,.reg-field,.form-group) label{color:var(--apple-ink);font-size:14px;font-weight:400;line-height:1.47}#apple-ui #apple-app input:is([type=checkbox],[type=radio]){accent-color:var(--apple-blue)}#apple-ui #apple-app table{border-collapse:separate;border-spacing:0;width:100%;font-size:14px}#apple-ui #apple-app thead th{border-bottom:1px solid var(--apple-line);letter-spacing:0;padding:16px;font-size:12px;font-weight:600;background:var(--apple-pearl)!important;color:var(--apple-muted)!important}#apple-ui #apple-app tbody td{color:var(--apple-ink);border-bottom:1px solid var(--apple-soft-line);padding:16px;line-height:1.47}#apple-ui #apple-app tbody tr{background:var(--apple-paper)}#apple-ui #apple-app :is(.table-container,.table-wrapper){border:1px solid var(--apple-line);border-radius:18px;overflow-x:auto;box-shadow:none!important}#apple-ui #apple-app :is(.modal,.modal-backdrop,.route-modal-backdrop){-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0006!important}#apple-ui #apple-app :is(.modal-content,.modal-dialog,.export-modal-card){max-height:92dvh;background:var(--apple-paper)!important;border:1px solid var(--apple-line)!important;box-shadow:none!important;border-radius:18px!important}#apple-ui #apple-app .modal-header{border-bottom:1px solid var(--apple-soft-line);padding:20px 24px;background:var(--apple-paper)!important}#apple-ui #apple-app .modal-header h3{color:var(--apple-ink)!important;font-size:21px!important}#apple-ui #apple-app .modal-footer{border-top:1px solid var(--apple-line);border-radius:0 0 18px 18px;padding:16px 24px;background:var(--apple-canvas)!important}#apple-ui #apple-app .modal-body{overflow-y:auto}#apple-ui #apple-app :is(.modal-plan-toolbar,.destination-block){background:var(--apple-pearl)!important;border-color:var(--apple-line)!important;box-shadow:none!important}#apple-ui #apple-app :is(.leaflet-control,.leaflet-popup-content-wrapper){border:1px solid var(--apple-line);box-shadow:none!important}#apple-ui #apple-app .leaflet-bar a{min-width:44px;min-height:44px;line-height:44px}#apple-ui #apple-app .auth-nav{color:#fff;background:#000;justify-content:space-between;align-items:center;height:52px;padding:0 max(24px,50vw - 640px);font-size:12px;display:flex}#apple-ui #apple-app .auth-nav a{color:#fff;letter-spacing:-.02em;font-size:17px;font-weight:600;text-decoration:none}#apple-ui #apple-app .login-shell{min-height:calc(100dvh - 52px);padding:64px 40px}#apple-ui #apple-app .login-center{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;gap:80px;max-width:1040px;margin:0;display:grid}#apple-ui #apple-app .login-brand-inner{text-align:left}#apple-ui #apple-app .login-brand-logo{align-items:flex-start}#apple-ui #apple-app .login-brand-logo h1{margin:16px 0;font-size:48px;line-height:1.25;color:var(--apple-ink)!important;-webkit-text-fill-color:currentColor!important;background:0 0!important}#apple-ui #apple-app .login-brand-logo p{color:var(--apple-muted);margin:16px 0 0;font-size:17px;line-height:1.6}#apple-ui #apple-app .auth-eyebrow{color:var(--apple-muted);letter-spacing:.12em;font-size:12px;font-weight:600;display:block}#apple-ui #apple-app .auth-route-symbol{background:var(--apple-tile);color:#fff;border-radius:18px;place-items:center;width:64px;height:64px;margin-bottom:32px;font-size:30px;display:grid}#apple-ui #apple-app .auth-features{color:var(--apple-muted);flex-wrap:wrap;gap:20px;margin-top:32px;font-size:12px;display:flex}#apple-ui #apple-app .auth-features span{align-items:center;gap:6px;display:flex}#apple-ui #apple-app .auth-features i{color:var(--apple-blue);font-size:16px}#apple-ui #apple-app .login-card{border-radius:18px;padding:40px 32px}#apple-ui #apple-app .login-card-head{text-align:left;margin-bottom:28px}#apple-ui #apple-app .login-card-title{color:var(--apple-ink);font-size:28px}#apple-ui #apple-app .login-card-subtitle{color:var(--apple-muted);margin-top:8px;font-size:14px;line-height:1.6}#apple-ui #apple-app .login-field{margin-bottom:20px}#apple-ui #apple-app .login-input-wrap input{min-height:52px;padding-left:40px;font-size:16px}#apple-ui #apple-app .login-input-wrap input[type=password]{padding-right:48px}#apple-ui #apple-app .login-submit{min-height:48px;margin-top:12px;font-size:17px}#apple-ui #apple-app .auth-form-note{text-align:center;color:var(--apple-muted);margin:20px 0 0;font-size:12px}#apple-ui #apple-app.reg-page .login-center{max-width:760px;display:block}#apple-ui #apple-app .reg-card{overflow:hidden}#apple-ui #apple-app .reg-card-header{color:#fff;padding:32px;background:var(--apple-tile)!important}#apple-ui #apple-app .reg-card-header :is(h2,p,i){color:#fff!important}#apple-ui #apple-app .reg-card-header h2{font-size:28px}#apple-ui #apple-app .reg-card-body{padding:32px}#apple-ui #apple-app .reg-section-title{border-bottom:1px solid var(--apple-line);padding-bottom:12px;font-weight:600;color:var(--apple-ink)!important;background:0 0!important}@keyframes apple-reveal{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}#apple-ui #apple-app .login-center,#apple-ui #apple-app .main-content>div:not([hidden]),#apple-ui #apple-app .modal-content{animation:apple-reveal var(--apple-enter) var(--apple-ease) both}@media (width<=1200px){#apple-ui #apple-app #fullscreen-dashboard-wrapper .stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))}#apple-ui #apple-app .login-center{gap:40px}#apple-ui #apple-app .login-brand-logo h1{font-size:40px}}@media (width<=833px){#apple-ui #apple-app .login-shell{padding:40px 24px}#apple-ui #apple-app .login-center{flex-direction:column;gap:32px;max-width:480px;display:flex}#apple-ui #apple-app .login-brand-inner{text-align:center}#apple-ui #apple-app .login-brand-logo{align-items:center}#apple-ui #apple-app .login-brand-logo h1{margin:12px 0;font-size:34px}#apple-ui #apple-app .auth-route-symbol{border-radius:11px;width:48px;height:48px;margin-bottom:20px;font-size:24px}#apple-ui #apple-app .auth-features{justify-content:center;margin-top:20px}#apple-ui #apple-app .topbar .breadcrumb h2{font-size:17px!important}#apple-ui #apple-app .card-header{padding:16px}#apple-ui #apple-app .wifi-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){#apple-ui #apple-app #fullscreen-dashboard-wrapper .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}#apple-ui #apple-app #fullscreen-dashboard-wrapper .stats-grid>.stat-card{min-height:112px;padding:16px!important}#apple-ui #apple-app .stat-value{font-size:21px!important}#apple-ui #apple-app .login-shell{padding:32px 20px}#apple-ui #apple-app .login-card{padding:28px 24px}#apple-ui #apple-app .auth-nav{padding:0 24px}#apple-ui #apple-app .auth-nav span{font-size:11px}#apple-ui #apple-app .login-brand-logo p{margin-top:10px;font-size:14px}#apple-ui #apple-app :is(.target-fields-grid,.airport-fields-grid,.vpn-check-row){grid-template-columns:minmax(0,1fr)!important}#apple-ui #apple-app :is(.modal-plan-toolbar-row,.dest-timing-controls,.target-agency-controls){flex-wrap:wrap}#apple-ui #apple-app :is(.reg-card-body,.reg-card-header){padding:24px}#apple-ui #apple-app :is(.reg-input,.login-input-wrap) :is(input,select){font-size:16px}}@media (width<=419px){#apple-ui #apple-app .login-brand-logo h1{font-size:28px}#apple-ui #apple-app .auth-features{gap:12px}}@media (prefers-reduced-motion:reduce){#apple-ui #apple-app *,#apple-ui #apple-app :before,#apple-ui #apple-app :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}#apple-ui #apple-app :is(button,.btn,[role=button]:not(.leaflet-marker-icon),.menu-item):active:not(:disabled){transform:none!important}}#apple-ui #apple-app .login-input-wrap input{padding-left:40px!important;padding-right:48px!important}#apple-ui #apple-app .reg-input :is(input,select){padding-left:42px!important}@media (width<=833px){#apple-ui #apple-app .auth-route-symbol{margin-left:auto;margin-right:auto}}#apple-ui #apple-app #fullscreen-dashboard-wrapper .stats-grid>.stat-card{grid-column:auto!important;width:auto!important;min-width:0!important}#apple-ui #apple-app .stat-card-head-circuits{flex-wrap:wrap!important}#apple-ui #apple-app .stat-circuits-info{flex-basis:100%;min-width:0;margin:0}#apple-ui #apple-app .map-card-header{gap:16px;flex-wrap:wrap!important;align-items:center!important;display:flex!important}#apple-ui #apple-app .map-card-header-main{flex:320px;gap:12px;min-width:0;flex-direction:column!important;align-items:flex-start!important;display:flex!important}#apple-ui #apple-app .map-card-header-main .map-card-title{white-space:normal!important}#apple-ui #apple-app .map-legend-row{gap:12px;width:100%;flex-wrap:wrap!important;display:flex!important}#apple-ui #apple-app .map-card-header .dashboard-map-search{position:relative;border:1px solid var(--apple-line)!important;background:var(--apple-paper)!important;flex:180px!important;width:min(100%,240px)!important;height:44px!important;padding:0 14px!important}#apple-ui #apple-app .map-card-header .dashboard-map-search i{color:var(--apple-muted)!important;background:0 0!important;width:auto!important;height:auto!important;font-size:18px!important;position:static!important;transform:none!important}#apple-ui #apple-app .map-card-header .dashboard-map-search input{opacity:1!important;border:0!important;width:100%!important;min-width:0!important;padding:0 0 0 8px!important}#apple-ui #apple-app .map-card-header-actions{flex-wrap:wrap;flex-shrink:0;gap:8px;display:flex;position:static!important}#apple-ui #apple-app :is(.map-card-title,.wifi-toolbar-title,.reg-section-title) i{color:var(--apple-blue)!important}#apple-ui #apple-app :is(.route-cards,.route-list-panel .card-header){background:var(--apple-paper)!important}#apple-ui #apple-app .modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0006!important}#apple-ui #apple-app .modal-container{border:1px solid var(--apple-line);max-height:92dvh;background:var(--apple-paper)!important;box-shadow:none!important;border-radius:18px!important}#apple-ui #apple-app .modal-overlay.active .modal-container{animation:apple-reveal var(--apple-enter) var(--apple-ease) both}#apple-ui #apple-app .modal-container :is(.form-group,.target-agency-controls,.vpn-check-row){min-width:0}#apple-ui #apple-app .modal-container .dest-timing-controls{flex-wrap:wrap}@media (width<=640px){#apple-ui #apple-app .map-card-header-main{flex-basis:100%}#apple-ui #apple-app .map-card-header .dashboard-map-search{flex-basis:100%!important;width:100%!important}#apple-ui #apple-app .modal-container{width:calc(100% - 24px)!important;max-width:calc(100% - 24px)!important}#apple-ui #apple-app .modal-container .form-row{flex-wrap:wrap}}@media (prefers-reduced-motion:reduce){#apple-ui #apple-app .modal-overlay.active .modal-container{animation:none!important}}#apple-ui #apple-app :is(.route-planning-days-sidebar,.route-planning-details-panel,.route-planning-day-card,.today-route-day-card,.today-route-card,.wifi-contact-card,.check-new-location-list-panel,.check-new-location-detail-panel,.summary-kpi-card,.summary-table-card,.coords-card,.settings-section){color:var(--apple-ink);background:var(--apple-paper)!important;border:1px solid var(--apple-line)!important;box-shadow:none!important;border-radius:18px!important}#apple-ui #apple-app :is(.route-planning-strip,.route-planning-meta-grid,.route-planning-vpn-summary,.today-route-strip,.today-route-meta-grid,.check-new-location-coords-panel,.check-new-location-compare,.summary-kpi-scope,.summary-kpi-grid,.summary-table-head,.summary-detail-panel){color:var(--apple-ink);background:var(--apple-canvas)!important;border-color:var(--apple-line)!important;box-shadow:none!important}#apple-ui #apple-app :is(.route-planning-search,.today-route-search){min-height:48px;background:var(--apple-paper)!important;border:1px solid var(--apple-line)!important;box-shadow:none!important;border-radius:9999px!important;padding:0 16px!important}#apple-ui #apple-app :is(.route-planning-search,.today-route-search) input{box-shadow:none!important;background:0 0!important;border:0!important;padding:10px 8px!important}#apple-ui #apple-app :is(.summary-export-btn,.wifi-export-btn,.btn-vpn-add-row){color:var(--apple-blue)!important;background:var(--apple-paper)!important;border:1px solid var(--apple-line)!important}#apple-ui #apple-app :is(.plan-date-fiscal-label,.modal-toolbar-label,.summary-toolbar-filter label,.wifi-toolbar-filter label){font-size:12px;font-weight:400;color:var(--apple-muted)!important}#apple-ui #apple-app :is(.plan-date-fiscal-label,.modal-toolbar-label,.summary-toolbar-filter label,.wifi-toolbar-filter label) i{color:var(--apple-muted)!important}#apple-ui #apple-app .wifi-stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))}#apple-ui #apple-app .main-content>div:not([hidden]){margin-top:24px}#apple-ui #apple-app .main-content>#fullscreen-dashboard-wrapper{margin-top:0}@media (width<=640px){#apple-ui #apple-app .wifi-stats-grid{grid-template-columns:1fr}}#apple-ui #apple-app .reg-card-header:before,#apple-ui #apple-app .reg-card-header:after{display:none}#apple-ui #apple-app .reg-person-row{border-radius:11px;background:var(--apple-canvas)!important;border:1px solid var(--apple-line)!important}#apple-ui #apple-app .reg-person-row-title{color:var(--apple-ink)}#apple-ui #apple-app :is(.arrival-time-trigger,.btn-reg-add-person){border-radius:9999px;min-height:44px;color:var(--apple-blue)!important;background:var(--apple-paper)!important;border:1px solid var(--apple-line)!important}#apple-ui #apple-app .destination-block h4{flex-wrap:wrap;gap:12px;display:flex;color:var(--apple-ink)!important}#apple-ui #apple-app .dest-title{flex-shrink:0;color:var(--apple-ink)!important}@media (width<=640px){#apple-ui #apple-app .reg-row-2{grid-template-columns:minmax(0,1fr)}#apple-ui #apple-app .destination-block h4{flex-direction:column;align-items:flex-start}#apple-ui #apple-app .dest-title{width:100%}#apple-ui #apple-app .dest-timing-controls{justify-content:flex-start;width:100%;margin-left:0!important}#apple-ui #apple-app .modal-plan-add-btn{padding:8px 10px;font-size:12px}}:root{--bg-color:#f5f5f7;--sidebar-bg:#f5f5f7;--card-bg:#fff;--primary-orange:#06c;--primary-orange-light:#0066cc14;--primary-orange-hover:#0055b3;--status-green:#34c759;--status-green-light:#f2fbf4;--status-red:#ff3b30;--status-red-light:#fff2f1;--status-blue:#06c;--status-blue-light:#0066cc14;--route-planned:var(--primary-orange);--route-extra:#ff3b30;--text-dark:#1d1d1f;--text-primary:#1d1d1f;--text-secondary:#7a7a7a;--text-gray:#7a7a7a;--text-light:#86868b;--border-color:#e0e0e0;--font-family:-apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "Inter", "Sarabun", system-ui, sans-serif;--shadow-sm:0 1px 3px #0000000a;--shadow-md:0 4px 16px #0000000a;--shadow-lg:3px 5px 30px #00000038;--radius-md:11px;--radius-lg:18px;--radius-xl:18px;--sidebar-width:260px;--sidebar-offset:var(--sidebar-width);--route-list-panel-width:300px;--gemini-gradient:#06c;--gemini-glow-shadow:none}.sidebar-header .logo-text{text-align:center;width:100%}.sidebar-header .logo-text h1{letter-spacing:-.01em;white-space:normal;word-break:break-word;text-align:center;font-size:17px;font-weight:800;line-height:1.35}.gemini-aurora-bg{z-index:-1;pointer-events:none;background-color:var(--bg-color);transition:background-color .5s;position:fixed;inset:0;overflow:hidden}.gemini-aurora-bg:after{content:"";-webkit-backdrop-filter:blur(100px);backdrop-filter:blur(100px);background:radial-gradient(circle at 50% 50%, transparent 60%, var(--bg-color) 100%);z-index:2;position:absolute;inset:0}.glow-orb{filter:blur(80px);opacity:.08;mix-blend-mode:multiply;z-index:1;border-radius:50%;animation:25s ease-in-out infinite alternate floatOrb;position:absolute}body.dark-mode .glow-orb{opacity:.16;mix-blend-mode:screen}.orb-1{background:radial-gradient(circle,#b3d5fc 0%,#b3d5fc00 70%);width:500px;height:500px;animation-duration:20s;top:-10%;left:-10%}.orb-2{background:radial-gradient(circle,#ebdbe5 0%,#ebdbe500 70%);width:600px;height:600px;animation-duration:28s;bottom:-20%;right:-10%}.orb-3{background:radial-gradient(circle,#d0eefb 0%,#d0eefb00 70%);width:400px;height:400px;animation-duration:24s;top:40%;left:40%}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{font-family:var(--font-family);background-color:var(--bg-color);color:var(--text-dark);font-size:14px;line-height:1.5;overflow-x:hidden}.destination-block.drag-over{opacity:.8;border:2px dashed var(--primary-orange)!important}.destination-block.is-dragging{opacity:.55}#planRouteModal .destination-block{border:1px solid var(--border-color);border-radius:8px;margin-bottom:16px;padding:16px;transition:all .25s;position:relative}#planRouteModal .destination-block.target-block{margin-top:16px;background-color:#fffaf5!important;border-color:#fed7aa #fed7aa #fed7aa #fb923c!important;border-left-style:solid!important;border-left-width:3px!important}#planRouteModal .destination-block.target-block h4{color:#c2410c!important}#planRouteModal .destination-block.airport-block{background-color:#f5fafe!important;border-color:#bae6fd #bae6fd #bae6fd #60a5fa!important;border-left-style:solid!important;border-left-width:3px!important}#planRouteModal .destination-block.airport-block h4{color:#0369a1!important}#planRouteModal .destination-block.vehicle-block{background-color:#f5fdfb!important;border-color:#99f6e4 #99f6e4 #99f6e4 #2dd4bf!important;border-left-style:solid!important;border-left-width:3px!important}#planRouteModal .destination-block.vehicle-block h4{color:#0f766e!important}#planRouteModal .destination-block.rest-stop-block{margin-top:16px;background-color:#fdfaff!important;border-color:#e9d5ff #e9d5ff #e9d5ff #c084fc!important;border-left-style:solid!important;border-left-width:3px!important}#planRouteModal .destination-block.rest-stop-block h4{color:#6b21a8!important}#planRouteModal .airport-fields-grid{grid-template-columns:minmax(0,1fr) minmax(108px,132px) minmax(108px,132px);align-items:end;gap:12px;display:grid}#planRouteModal .destination-block.airport-block .airport-fields-grid,#planRouteModal .destination-block.rest-stop-block .airport-fields-grid,#planRouteModal .destination-block.vehicle-block .airport-fields-grid{grid-template-columns:minmax(0,min(320px,48%)) minmax(108px,1fr) minmax(108px,1fr)}#planRouteModal .airport-name-controls{align-items:stretch;gap:8px;display:flex}#planRouteModal .airport-name-controls input[type=text]{flex:auto;width:100%;min-width:0}#planRouteModal .airport-name-controls .btn-search-loc,#planRouteModal .target-agency-controls .btn-search-loc{width:40px;min-width:40px;height:38px;color:var(--primary-orange);cursor:pointer;background:linear-gradient(#fffaf5 0%,#ffedd5 100%);border:1.5px solid #fed7aa;border-radius:8px;flex:none;justify-content:center;align-items:center;gap:5px;padding:0;font-family:inherit;font-size:12px;font-weight:600;line-height:1;transition:background .2s,border-color .2s,box-shadow .2s,transform .2s,color .2s;display:inline-flex;box-shadow:0 1px 3px #2e6cb624}#planRouteModal .btn-search-loc:hover{border-color:var(--primary-orange);background:linear-gradient(#ffedd5 0%,#fed7aa 100%);transform:translateY(-1px);box-shadow:0 3px 8px #2e6cb638}#planRouteModal .btn-search-loc:active{transform:translateY(0);box-shadow:0 1px 2px #2e6cb629}#planRouteModal .btn-search-loc:focus-visible{box-shadow:0 0 0 3px var(--primary-orange-light);outline:none}#planRouteModal .btn-search-loc.is-loading,#planRouteModal .btn-search-loc.is-success{width:auto;min-width:40px;padding:0 10px}#planRouteModal .btn-search-loc.is-loading{color:#0369a1;cursor:wait;background:linear-gradient(#f0f9ff 0%,#e0f2fe 100%);border-color:#bae6fd}#planRouteModal .btn-search-loc.is-success{color:var(--status-green);background:linear-gradient(#f0fdf4 0%,#dcfce7 100%);border-color:#86efac}#planRouteModal .search-loc-icon{flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex;position:relative}#planRouteModal .search-loc-pin{font-size:20px;line-height:1}#planRouteModal .search-loc-glass{background:var(--card-bg);border-radius:50%;padding:2px;font-size:10px;line-height:1;position:absolute;bottom:-1px;right:-5px;box-shadow:0 0 0 1px #2e6cb647}body.dark-mode #planRouteModal .btn-search-loc{color:#ffb366;background:linear-gradient(#2e6cb62e 0%,#2e6cb61a 100%);border-color:#2e6cb673;box-shadow:0 1px 4px #00000040}body.dark-mode #planRouteModal .btn-search-loc:hover{border-color:var(--primary-orange);background:linear-gradient(#2e6cb647 0%,#2e6cb62e 100%)}body.dark-mode #planRouteModal .search-loc-glass{background:var(--card-bg);box-shadow:0 0 0 1px #2e6cb666}body.dark-mode #planRouteModal .btn-search-loc.is-loading{color:#7dd3fc;background:linear-gradient(#38bdf829 0%,#38bdf814 100%);border-color:#38bdf873}body.dark-mode #planRouteModal .btn-search-loc.is-success{color:#6ee7b7;background:linear-gradient(#34d39929 0%,#34d39914 100%);border-color:#34d39973}#planRouteModal .vpn-checks-section{background:#ffffffa6;border:1px dashed #ffc9a3;border-radius:8px;margin-bottom:10px;padding:8px 10px}#planRouteModal .vpn-checks-list{flex-direction:column;gap:6px;display:flex}#planRouteModal .vpn-check-row{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr) 64px 28px;align-items:end;gap:6px;display:grid}#planRouteModal .vpn-check-row .form-group{min-width:0;margin:0}#planRouteModal .vpn-check-row label{color:var(--text-gray);white-space:nowrap;margin:0 0 2px;font-size:10px;font-weight:600;line-height:1.2;display:block}#planRouteModal .vpn-select,#planRouteModal .vpn-circuits-input{border:1px solid var(--border-color);background:var(--card-bg);width:100%;height:28px;color:var(--text-dark);box-sizing:border-box;border-radius:6px;padding:0 8px;font-size:12px;line-height:1.2}#planRouteModal .vpn-select{cursor:pointer;padding-right:22px}#planRouteModal .vpn-circuits-input{text-align:center;-moz-appearance:textfield}#planRouteModal .vpn-circuits-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}#planRouteModal .vpn-circuits-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}#planRouteModal .vpn-check-row-action{justify-content:center;align-items:flex-end;height:100%;padding-bottom:0;display:flex}#planRouteModal .btn-vpn-add-row,#planRouteModal .btn-vpn-remove-row{background:var(--card-bg);width:28px;height:28px;color:var(--primary-orange);cursor:pointer;box-shadow:var(--shadow-sm);border:1px solid #ffddb8;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:15px;transition:border-color .15s,background .15s,transform .1s;display:inline-flex}#planRouteModal .btn-vpn-add-row:hover,#planRouteModal .btn-vpn-remove-row:hover{border-color:var(--primary-orange);background:var(--primary-orange-light);transform:translateY(-1px)}#planRouteModal .btn-vpn-remove-row{color:var(--status-red);border-color:#f5c4c4}#planRouteModal .btn-vpn-remove-row:hover{background:var(--status-red-light);border-color:var(--status-red)}#planRouteModal .vpn-check-row-spacer{flex-shrink:0;width:28px;height:28px;display:block}#planRouteModal .target-fields-grid{grid-template-columns:minmax(52px,.32fr) minmax(76px,.68fr) minmax(120px,1fr) minmax(120px,1fr);align-items:end;gap:12px;margin-bottom:8px;display:grid}#planRouteModal .target-fields-grid .form-group{min-width:0}#planRouteModal .target-fields-grid .form-group>input[type=text],#planRouteModal .target-fields-grid .target-agency-controls input[type=text]{box-sizing:border-box;height:38px}#planRouteModal .target-agency-controls{align-items:stretch;gap:8px;display:flex}#planRouteModal .target-agency-controls input[type=text]{flex:auto;width:100%;min-width:0}#planRouteModal .dest-timing-controls{color:var(--text-dark);flex-wrap:wrap;align-items:center;gap:12px;font-size:13px;font-weight:400;display:flex}#planRouteModal .dest-timing-item{align-items:center;gap:4px;display:inline-flex}#planRouteModal .dest-timing-item select.timing-select{border:1px solid var(--border-color);background:var(--card-bg);cursor:pointer;border-radius:999px;padding:4px 10px;font-family:inherit;font-size:13px;font-weight:500;transition:border-color .2s,box-shadow .2s}#planRouteModal .dest-timing-item select.timing-select:focus{border-color:var(--primary-orange);outline:none;box-shadow:0 0 0 2px #2e6cb626}#planRouteModal .airport-travel-duration-control,#routeInsertPointFormHost .airport-travel-duration-control{align-items:center;gap:4px;display:inline-flex}#planRouteModal .airport-travel-duration-control select.timing-select,#routeInsertPointFormHost .airport-travel-duration-control select.timing-select{min-width:58px;padding-left:8px;padding-right:8px}#planRouteModal .airport-travel-unit,#routeInsertPointFormHost .airport-travel-unit{color:var(--text-gray);white-space:nowrap;font-size:12px}#planRouteModal .route-segment-between{flex-direction:row;justify-content:center;align-items:center;gap:10px;width:100%;max-width:520px;margin:2px auto 8px;padding:0;display:flex}#planRouteModal .route-segment-between-connector{color:#0e6b7a;flex-direction:column;flex-shrink:0;justify-content:center;align-self:stretch;align-items:center;gap:1px;width:18px;margin:0;display:flex}#planRouteModal .route-segment-between-line{background:linear-gradient(#0e6b7a40 0%,#0e6b7abf 100%);border-radius:999px;width:2px;height:10px;display:block}#planRouteModal .route-segment-between-connector i{font-size:14px;line-height:1}#planRouteModal .route-segment-between .segment-controls{background:#80deea;border:1px solid #0e6b7a47;border-radius:6px;flex:1;grid-template-columns:auto minmax(0,1fr);align-items:end;gap:6px 8px;min-width:0;max-width:420px;margin:0;padding:6px 10px;display:grid;box-shadow:0 1px 2px #0e6b7a1f}#planRouteModal .route-segment-between .route-insert-between{flex-shrink:0;align-self:center;margin:0}#planRouteModal .route-segment-between .segment-controls-title{color:#0a4f5c}#planRouteModal .route-segment-between .segment-controls-grid{grid-template-columns:minmax(88px,1fr) minmax(96px,.85fr);gap:6px}#planRouteModal .route-segment-between .segment-control-field{color:#0a4f5c;gap:2px;font-size:10px}#planRouteModal .route-segment-between .segment-control-field input,#planRouteModal .route-segment-between .segment-control-field select{height:28px;color:var(--text-dark);background:#fff;border-color:#0e6b7a59;padding:0 7px;font-size:12px}#planRouteModal .route-segment-between .segment-control-field input:focus,#planRouteModal .route-segment-between .segment-control-field select:focus{border-color:#0e6b7a;box-shadow:0 0 0 2px #0e6b7a38}#planRouteModal .route-segment-between .segment-controls-hint{color:#0a4f5c;opacity:.92;grid-column:1/-1;font-size:10px;line-height:1.3}#planRouteModal .segment-controls{background:#ffffff9e;border:1px dashed #4a90e257;border-radius:8px;grid-template-columns:minmax(128px,.8fr) minmax(0,1.4fr) minmax(160px,.8fr);align-items:end;gap:10px;margin:-2px 0 12px;padding:10px 12px;display:grid}#planRouteModal .segment-controls[hidden]{display:none!important}#planRouteModal .segment-controls-title{color:var(--status-blue);white-space:nowrap;align-items:center;gap:6px;font-size:12px;font-weight:700;display:inline-flex}#planRouteModal .segment-controls-grid{grid-template-columns:minmax(0,1fr) minmax(112px,.72fr);gap:8px;display:grid}#planRouteModal .segment-control-field{color:var(--text-gray);flex-direction:column;gap:3px;margin:0;font-size:10px;font-weight:700;display:flex}#planRouteModal .segment-control-field input,#planRouteModal .segment-control-field select{border:1px solid var(--border-color);background:var(--card-bg);width:100%;height:32px;color:var(--text-dark);font:inherit;border-radius:7px;padding:0 9px;font-size:12px}#planRouteModal .segment-control-field input:focus,#planRouteModal .segment-control-field select:focus{border-color:var(--status-blue);outline:none;box-shadow:0 0 0 2px #4a90e229}#planRouteModal .segment-controls-hint{color:var(--text-gray);font-size:11px;line-height:1.35}#planRouteModal .dest-timing-controls,#planRouteModal .dest-timing-arrival,#planRouteModal .destination-block>h4{overflow:visible}#planRouteModal .dest-timing-arrival{gap:6px;position:relative}#planRouteModal .dest-timing-arrival>i{color:var(--status-green)}#planRouteModal .arrival-time-picker{z-index:1;align-items:center;display:inline-flex;position:relative}#planRouteModal .arrival-time-picker.is-open{z-index:10070}#planRouteModal .arrival-clock-popover{z-index:10071;border-radius:var(--radius-md);background:var(--card-bg);border:1px solid var(--border-color);width:176px;box-shadow:var(--shadow-lg);pointer-events:auto;padding:12px;position:fixed}#planRouteModal .arrival-clock-popover[hidden]{pointer-events:none;display:none!important}#planRouteModal .arrival-clock-popover-digital:not([hidden]){flex-direction:column;gap:8px;display:flex}#planRouteModal .clock-format-hint{color:var(--text-gray);text-align:center;font-size:11px;font-weight:500;line-height:1.35;display:block}@media (width<=900px){#planRouteModal .arrival-clock-popover{width:min(176px,100vw - 24px)}}#planRouteModal .arrival-time-trigger{color:#2a8f6a;background:linear-gradient(135deg, var(--status-green-light) 0%, #f0faf6 100%);box-shadow:var(--shadow-sm);cursor:pointer;border:1px solid #3eb48947;border-radius:999px;align-items:center;gap:6px;padding:5px 12px 5px 10px;font-family:inherit;font-size:13px;font-weight:700;transition:border-color .2s,box-shadow .2s;display:inline-flex}#planRouteModal .arrival-time-trigger:after{content:"";border-left:4px solid #0000;border-right:4px solid #0000;border-top:5px solid var(--status-green);opacity:.8;width:0;height:0}#planRouteModal .arrival-time-picker.is-filled .arrival-time-trigger,#planRouteModal .arrival-time-picker.is-open .arrival-time-trigger{border-color:var(--status-green);box-shadow:0 0 0 3px #3eb48924}#planRouteModal .arrival-time-trigger:disabled{color:var(--text-gray);background:var(--bg-color);border-color:var(--border-color);box-shadow:none;cursor:default}#planRouteModal .arrival-time-trigger:disabled:after{display:none}#planRouteModal .arrival-time-picker.arrival-auto .arrival-time-trigger:disabled{opacity:1;cursor:default;justify-content:center;min-width:4.5rem}#planRouteModal .arrival-time-picker.arrival-auto.is-filled .arrival-time-trigger:disabled{color:#2a8f6a;background:linear-gradient(135deg, var(--status-green-light) 0%, #f0faf6 100%);border-color:#3eb48973;box-shadow:0 0 0 2px #3eb4891a}#planRouteModal .arrival-time-picker.arrival-auto:not(.is-filled) .arrival-time-trigger:disabled{color:var(--text-gray);font-weight:600}#planRouteModal .clock-digital-label{color:var(--text-gray);text-align:center;font-size:12px;font-weight:600;display:block}#planRouteModal .clock-digital-input{border:1px solid var(--border-color);width:100%;color:var(--status-green);text-align:center;letter-spacing:.06em;background:var(--bg-color);cursor:pointer;box-sizing:border-box;border-radius:10px;margin:0;padding:10px 12px;font-family:inherit;font-size:22px;font-weight:700;display:block}#planRouteModal .clock-digital-input:focus{border-color:var(--status-green);background:var(--card-bg);outline:none;box-shadow:0 0 0 3px #3eb48926}#planRouteModal .clock-dial,#planRouteModal .clock-face-ring,#planRouteModal .clock-hands,#planRouteModal .clock-hand,#planRouteModal .clock-center-cap,#planRouteModal .clock-label{display:none!important}#planRouteModal .clock-actions{z-index:2;justify-content:space-between;gap:8px;display:flex;position:relative}#planRouteModal .clock-clear-btn,#planRouteModal .clock-confirm-btn{cursor:pointer;border:1px solid var(--border-color);background:var(--bg-color);color:var(--text-gray);pointer-events:auto;z-index:3;border-radius:999px;flex:1;padding:6px 8px;font-family:inherit;font-size:12px;font-weight:600;position:relative}#planRouteModal .clock-confirm-btn{background:var(--status-green);border-color:var(--status-green);color:#fff}#planRouteModal .clock-confirm-btn:hover{filter:brightness(1.05)}body.dark-mode #planRouteModal .arrival-clock-popover{background:var(--card-bg);border-color:var(--border-color)}body.dark-mode #planRouteModal .arrival-time-trigger{color:#6fd4a8;background:linear-gradient(135deg,#3eb4892e 0%,#3eb48914 100%)}body.dark-mode #planRouteModal .clock-digital-input{background:var(--bg-color);border-color:var(--border-color);color:#6fd4a8}body.dark-mode #planRouteModal .clock-digital-input:focus{background:var(--card-bg)}body.dark-mode #planRouteModal .dest-timing-item select.timing-select{background:var(--card-bg);border-color:var(--border-color);color:var(--text-dark)}body.dark-mode #planRouteModal .route-segment-between .segment-controls{background:#5ec9d6;border-color:#0e6b7a73}body.dark-mode #planRouteModal .route-segment-between .segment-controls-title,body.dark-mode #planRouteModal .route-segment-between .segment-control-field,body.dark-mode #planRouteModal .route-segment-between .segment-controls-hint{color:#042f36}body.dark-mode #planRouteModal .route-segment-between .segment-control-field input,body.dark-mode #planRouteModal .route-segment-between .segment-control-field select{background:var(--card-bg);color:var(--text-dark);border-color:#0e6b7a66}body.dark-mode #planRouteModal .segment-controls{background:#11182757;border-color:#60a5fa52}body.dark-mode #planRouteModal .segment-control-field input,body.dark-mode #planRouteModal .segment-control-field select{background:var(--card-bg);border-color:var(--border-color);color:var(--text-dark)}#planRouteModal .dest-extra-plan-item label{color:var(--text-orange);cursor:pointer;margin-bottom:0;font-size:13px;font-weight:400}@media (width<=720px){#planRouteModal .airport-fields-grid,#planRouteModal .target-fields-grid,#planRouteModal .route-segment-between .segment-controls{max-width:100%}#planRouteModal .route-segment-between .segment-controls,#planRouteModal .segment-controls,#planRouteModal .route-segment-between .segment-controls-grid,#planRouteModal .segment-controls-grid{grid-template-columns:1fr;align-items:stretch}}.drag-handle{cursor:grab;color:#94a3b8;touch-action:none;flex-shrink:0;margin-right:8px;font-size:18px}.drag-handle:active{cursor:grabbing}.drag-handle[draggable=true]{-webkit-user-drag:element}.text-orange{color:#f97316!important}.text-green{color:var(--status-green)!important}.text-red{color:var(--status-red)!important}.text-blue{color:var(--status-blue)!important}.text-gray{color:var(--text-gray)!important}.bg-orange-light{background-color:#ffedd5!important}.bg-green-light{background-color:var(--status-green-light)!important}.bg-red-light{background-color:var(--status-red-light)!important}.bg-blue-light{background-color:var(--status-blue-light)!important}.bg-orange{color:#fff!important;background-color:#f97316!important}.bg-green{background-color:var(--status-green)!important;color:#fff!important}.bg-red{background-color:var(--status-red)!important;color:#fff!important}.bg-blue{background-color:var(--status-blue)!important;color:#fff!important}.bg-purple{color:#fff!important;background-color:#a855f7!important}.border-green{border:1px solid var(--status-green)!important}.border-red{border:1px solid var(--status-red)!important}.border-blue{border:1px solid var(--status-blue)!important}.border-purple{border:1px solid #a855f7!important}.border-left-green{border-left:4px solid var(--status-green)!important}.border-left-red{border-left:4px solid var(--status-red)!important}.border-left-blue{border-left:4px solid var(--status-blue)!important}.border-left-orange{border-left:4px solid #f97316!important}.border-left-purple{border-left:4px solid #a855f7!important}.app-container{height:100dvh;display:flex;position:relative;overflow:hidden}.app-container.sidebar-collapsed{--sidebar-offset:0px}.sidebar{width:var(--sidebar-width);z-index:1100;background:linear-gradient(#edf4fa 0%,#e1eaf4 100%);border-right:1px solid #13252c14;flex-direction:column;flex-shrink:0;padding:24px 0;transition:transform .28s cubic-bezier(.4,0,.2,1),box-shadow .28s,background .3s;display:flex;position:relative;overflow:hidden auto;box-shadow:4px 0 24px #13252c0a}body.dark-mode .sidebar{background:linear-gradient(#0f1225 0%,#0a0d1a 100%);box-shadow:4px 0 24px #0006}.sidebar-backdrop{z-index:1090;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);opacity:0;pointer-events:none;background:#0f172a73;transition:opacity .25s;position:fixed;inset:0}.sidebar-backdrop:not([hidden]){opacity:1;pointer-events:auto}.sidebar-toggle-btn,.sidebar-reveal-btn{flex-shrink:0;display:none}.app-container.sidebar-collapsed .sidebar-reveal-btn{display:inline-flex}.topbar-start{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.topbar-start .breadcrumb{min-width:0}body.sidebar-scroll-lock{overflow:hidden}.sidebar-header{justify-content:center;align-items:center;gap:12px;padding:0 20px 24px;display:flex}.logo-text h1{color:#13252c;font-size:18px;font-weight:700}.logo-text span{color:#13252c99;font-size:12px}body.dark-mode .logo-text h1{color:#fff!important}body.dark-mode .logo-text span{color:#ffffff80!important}.menu-group{background:0 0;border:none;border-bottom:1px solid #13252c14;border-radius:0;margin:0 10px 8px;padding:8px 4px 4px}.menu-group:last-of-type{border-bottom:none}body.dark-mode .menu-group{background:0 0;border-bottom-color:#ffffff0a!important}.menu-title{color:#13252c73;text-transform:uppercase;letter-spacing:1px;margin-bottom:6px;padding:0 16px;font-size:11px;font-weight:600}.menu-item{color:#13252cb3;border-radius:10px;align-items:center;gap:10px;margin:2px 8px;padding:10px 16px;font-size:13.5px;font-weight:500;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.menu-item i{color:#13252c80;font-size:19px;transition:color .2s,transform .2s}body.dark-mode .menu-item i{color:#ffffff73!important}.sidebar-collapse-item{cursor:pointer;text-align:left;background:0 0;border:none;width:calc(100% - 16px);font-family:inherit}.sidebar-collapse-icon{color:#13252c80;flex-shrink:0;width:20px;height:20px;transition:color .2s,transform .2s}.menu-item:hover .sidebar-collapse-icon{color:#13252c;transform:scale(1.05)}body.dark-mode .sidebar-collapse-icon{color:#ffffff73}body.dark-mode .menu-item:hover .sidebar-collapse-icon{color:#fffc}.menu-item:hover{color:#13252c;background-color:#ffffffa6}body.dark-mode .menu-item:hover{color:#fff!important;background-color:#ffffff0f!important}.menu-item:hover i{color:#13252c;transform:scale(1.05)}body.dark-mode .menu-item:hover i{color:#fffc!important}.menu-item.active{font-weight:600;color:#fff!important;background:linear-gradient(135deg,#38bdf8 0%,#0284c7 100%)!important;box-shadow:0 4px 16px #0ea5e94d!important}.menu-item.active i{color:#fff!important}.badge{color:#0ea5e9;letter-spacing:.2px;background-color:#0ea5e926;border-radius:12px;margin-left:auto;padding:2px 8px;font-size:11px;font-weight:700}.menu-item.active .badge{color:#fff;background-color:#fff3}body.dark-mode .badge{color:#38bdf8!important;background-color:#38bdf826!important}.main-content{--main-content-pad-x:32px;-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;min-width:0;padding:24px 32px;display:flex;overflow:hidden auto}.topbar{margin-bottom:24px;margin-left:calc(var(--main-content-pad-x) * -1);margin-right:calc(var(--main-content-pad-x) * -1);padding-left:var(--main-content-pad-x);padding-right:var(--main-content-pad-x);box-sizing:border-box;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px 16px;display:flex}.breadcrumb span{color:var(--text-gray);font-size:13px}.breadcrumb h2{margin-top:4px;font-size:24px;font-weight:700}.search-bar{background-color:var(--card-bg);-webkit-backdrop-filter:blur(8px);border-radius:var(--radius-md);width:320px;box-shadow:var(--shadow-sm);border:1px solid var(--border-color);align-items:center;padding:8px 16px;transition:all .25s;display:flex}.search-bar:focus-within{border-color:var(--status-blue);transform:translateY(-1px);box-shadow:0 0 0 3px #1a73e82e}.search-bar--compact{box-sizing:border-box;width:200px;max-width:200px;padding:6px 10px}.search-bar--compact i{margin-right:6px;font-size:15px}.search-bar--compact input,.search-bar--compact input::placeholder{font-size:13px}.search-bar i{color:var(--text-light);margin-right:8px}.search-bar input{width:100%;color:var(--text-dark);border:none;outline:none;font-family:inherit}.topbar-actions{align-items:center;gap:16px;display:flex}.status-indicator{background-color:var(--status-green-light);color:var(--status-green);border-radius:20px;align-items:center;gap:8px;padding:6px 12px;font-size:13px;font-weight:600;display:flex}.dot{border-radius:50%;width:8px;height:8px;display:inline-block}.dot.green{background-color:var(--status-green)}.dot.blue{background-color:var(--status-blue)}.dot.white{background-color:#fff}.icon-btn{border:1px solid var(--border-color);cursor:pointer;width:40px;height:40px;color:var(--text-gray);box-shadow:var(--shadow-sm);background:#fff;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex}.icon-btn:hover{background:var(--bg-color);color:var(--primary-orange)}.user-profile{box-shadow:var(--shadow-sm);border:1px solid var(--border-color);cursor:pointer;background:#fff;border-radius:30px;align-items:center;gap:10px;padding:7px 14px 7px 7px;display:flex}.avatar{background-color:var(--primary-orange);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:14px;font-weight:700;display:flex}.user-info{flex-direction:column;display:flex}.user-name{font-size:15px;font-weight:600}.user-role{color:var(--text-gray);font-size:11px}.dashboard-controls{border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-color);background-color:#fff;align-items:center;gap:16px;margin-bottom:24px;padding:12px 20px;display:flex}.date-tabs{background-color:var(--bg-color);border-radius:8px;margin-left:16px;padding:4px;display:flex}.tab{color:var(--text-gray);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:6px 16px;font-family:inherit;font-weight:500;transition:all .2s}.tab.active{color:var(--text-dark);box-shadow:var(--shadow-sm);background-color:#fff}.tab.tab-all{letter-spacing:.02em;font-weight:600}.tab.tab-all.active{background-color:var(--primary-orange);color:#fff;border-color:var(--primary-orange)}.route-day-divider{color:var(--primary-orange);align-items:center;gap:10px;margin:10px 0 6px;font-size:12px;font-weight:600;display:flex}.route-day-divider:before,.route-day-divider:after{content:"";background:var(--border-color);flex:1;height:1px}.tab.outline{border:1px solid var(--border-color);background-color:#fff;margin-left:8px}.spacer{flex:1}.btn{border-radius:var(--radius-md);cursor:pointer;border:1px solid #0000;align-items:center;gap:8px;padding:10px 20px;font-family:inherit;font-size:13px;font-weight:600;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex}.btn-outline{background:var(--card-bg);-webkit-backdrop-filter:blur(8px);border:1px solid var(--border-color);color:var(--text-dark)}.btn-outline:hover{background:#0000000a;border-color:#9b51e04d;transform:translateY(-1px)}body.dark-mode .btn-outline:hover{background:#ffffff0d}.btn-primary{background:var(--gemini-gradient);color:#fff;box-shadow:0 4px 14px #9b51e040}.btn-primary:hover{filter:brightness(1.05);transform:translateY(-2px);box-shadow:0 6px 20px #9b51e059}.btn-light-purple{color:#4338ca;background-color:#e0e7ff;border:1px solid #c7d2fe}.btn-light-purple:hover{background-color:#c7d2fe}.btn-light-orange{color:#ea580c;background-color:#ffedd5;border:1px solid #fed7aa}.btn-light-orange:hover{background-color:#fed7aa}.btn-light-blue{color:#0369a1;background-color:#e0f2fe;border:1px solid #bae6fd}.btn-light-blue:hover{background-color:#bae6fd}.stats-grid{--stat-kpi-min:158px;--stat-kpi-time-min:192px;--stat-circuits-min:280px;-webkit-backdrop-filter:blur(8px);background:#ffffff73;border:1px solid #edf2f799;border-radius:20px;flex-wrap:wrap;align-items:stretch;gap:14px;margin-bottom:16px;padding:16px;display:flex;box-shadow:inset 0 1px 2px #fff9,0 4px 20px #00000004}body.dark-mode .stats-grid{background:#1a202c59!important;border-color:#4a55684d!important;box-shadow:inset 0 1px 1px #ffffff0d,0 4px 20px #00000026!important}.stats-grid>.stat-card-kpi{flex:1 1 var(--stat-kpi-min);min-width:var(--stat-kpi-min);box-sizing:border-box;width:auto;max-width:none;padding:10px 12px}.stats-grid>.stat-card-kpi.border-blue{flex:1.2 1 var(--stat-kpi-time-min);min-width:var(--stat-kpi-time-min)}.stats-grid>.stat-card-kpi .stat-card-head{gap:10px;min-height:36px}.stats-grid>.stat-card-kpi .stat-icon{flex:0 0 34px;width:34px;height:34px;font-size:17px}.stats-grid>.stat-card-kpi .stat-value{letter-spacing:-.02em;white-space:nowrap;font-size:16px;line-height:1.2}.stats-grid>.stat-card-kpi .stat-label{white-space:nowrap;padding-left:44px;font-size:12px;line-height:1.35}.stat-card.stat-card-airport{border-left:4px solid #3b82f6}.stat-card.stat-card-airport .stat-icon{background-color:var(--status-blue-light);color:#0284c7}.stat-card.stat-card-airport .stat-value{color:#0284c7}.stat-card{background:var(--card-bg);border:1px solid #edf2f7e6;border-radius:16px;flex-direction:column;align-items:stretch;gap:6px;padding:14px 18px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden;box-shadow:0 4px 12px #00000004}body.dark-mode .stat-card{background-color:#2d3748b3!important;border-color:#4a556880!important;box-shadow:0 4px 12px #0000001f!important}.stat-card:hover{transform:translateY(-4px)scale(1.02)}.stats-grid>.stat-card:first-child{border-left:4px solid var(--primary-orange)!important;background:linear-gradient(135deg, #2e6cb60f 0%, var(--card-bg) 60%)!important}body.dark-mode .stats-grid>.stat-card:first-child{background:linear-gradient(135deg,#2e6cb61f 0%,#2d3748b3 85%)!important}.stats-grid>.stat-card:first-child:hover{border-color:#2e6cb666!important;box-shadow:0 8px 24px #2e6cb61f!important}.stats-grid>.stat-card:first-child .stat-value{-webkit-text-fill-color:transparent;background-image:linear-gradient(135deg,#2e6cb6,#5e9be0);-webkit-background-clip:text;color:var(--primary-orange)!important}.stats-grid>.stat-card-circuits{background:linear-gradient(135deg, #7c3aed0d 0%, var(--card-bg) 60%)!important;border-left:4px solid #7c3aed!important}body.dark-mode .stats-grid>.stat-card-circuits{background:linear-gradient(135deg,#7c3aed1f 0%,#2d3748b3 85%)!important}.stats-grid>.stat-card-circuits:hover{border-color:#7c3aed66!important;box-shadow:0 8px 24px #7c3aed1f!important}.stats-grid>.stat-card-circuits .stat-value{-webkit-text-fill-color:transparent;background-image:linear-gradient(135deg,#7c3aed,#9d66ff);-webkit-background-clip:text;color:#7c3aed!important}.stats-grid>.stat-card.border-green{border:1px solid #edf2f7e6!important;border-left:4px solid var(--status-green)!important;background:linear-gradient(135deg, #3eb4890f 0%, var(--card-bg) 60%)!important}body.dark-mode .stats-grid>.stat-card.border-green{background:linear-gradient(135deg,#3eb4891f 0%,#2d3748b3 85%)!important;border-color:#4a556880!important}.stats-grid>.stat-card.border-green:hover{border-color:#3eb48966!important;box-shadow:0 8px 24px #3eb4891f!important}.stats-grid>.stat-card.border-green .stat-value{-webkit-text-fill-color:transparent;background-image:linear-gradient(135deg,#3f8f6b,#5cd0a5);-webkit-background-clip:text;color:var(--status-green)!important}.stats-grid>.stat-card.border-blue{border:1px solid #edf2f7e6!important;border-left:4px solid var(--status-blue)!important;background:linear-gradient(135deg, #4a90e20f 0%, var(--card-bg) 60%)!important}body.dark-mode .stats-grid>.stat-card.border-blue{background:linear-gradient(135deg,#4a90e21f 0%,#2d3748b3 85%)!important;border-color:#4a556880!important}.stats-grid>.stat-card.border-blue:hover{border-color:#4a90e266!important;box-shadow:0 8px 24px #4a90e21f!important}.stats-grid>.stat-card.border-blue .stat-value{-webkit-text-fill-color:transparent;background-image:linear-gradient(135deg,#4a90e2,#73a9eb);-webkit-background-clip:text;color:var(--status-blue)!important}.stats-grid>.stat-card.border-red{border:1px solid #edf2f7e6!important;border-left:4px solid var(--status-red)!important;background:linear-gradient(135deg, #ff6b6b0f 0%, var(--card-bg) 60%)!important}body.dark-mode .stats-grid>.stat-card.border-red{background:linear-gradient(135deg,#ff6b6b1f 0%,#2d3748b3 85%)!important;border-color:#4a556880!important}.stats-grid>.stat-card.border-red:hover{border-color:#ff6b6b66!important;box-shadow:0 8px 24px #ff6b6b1f!important}.stats-grid>.stat-card.border-red .stat-value{-webkit-text-fill-color:transparent;background-image:linear-gradient(135deg,#ff6b6b,#ff8e8e);-webkit-background-clip:text;color:var(--status-red)!important}.stats-grid>.stat-card-airport{background:linear-gradient(135deg, #0284c70f 0%, var(--card-bg) 60%)!important;border:1px solid #edf2f7e6!important;border-left:4px solid #0284c7!important}body.dark-mode .stats-grid>.stat-card-airport{background:linear-gradient(135deg,#0284c71f 0%,#2d3748b3 85%)!important;border-color:#4a556880!important}.stats-grid>.stat-card-airport:hover{border-color:#0284c766!important;box-shadow:0 8px 24px #0284c71f!important}.stats-grid>.stat-card-airport .stat-value{-webkit-text-fill-color:transparent;background-image:linear-gradient(135deg,#0284c7,#38bdf8);-webkit-background-clip:text;color:#0284c7!important}.stat-card-head{align-items:center;gap:12px;min-height:36px;display:flex}.stat-icon{border-radius:8px;flex:0 0 36px;justify-content:center;align-items:center;width:36px;height:36px;margin-bottom:0;font-size:18px;display:flex}.stat-badge{z-index:1;border-radius:12px;align-items:center;gap:2px;padding:2px 6px;font-size:10px;font-weight:600;display:flex;position:absolute;top:6px;right:6px}.stat-value{font-variant-numeric:tabular-nums;white-space:nowrap;flex:auto;min-width:0;margin-bottom:0;font-size:18px;font-weight:700;line-height:1}.stat-label{color:var(--text-gray);min-width:0;margin-bottom:0;padding-left:48px;font-size:12px;font-weight:500;line-height:1.3}.stat-card-circuits{flex:2 1 var(--stat-circuits-min,280px);min-width:var(--stat-circuits-min,280px);border-left:3px solid #7c3aed}.stat-card-head-circuits{flex-wrap:nowrap;align-items:flex-start}.stat-card-circuits .stat-value{flex:none;align-self:flex-start;padding-top:1px}.stat-circuits-info{flex-direction:column;flex:auto;gap:4px;min-width:0;display:flex}.stat-circuits-title{color:var(--text-gray);padding-left:0;font-size:12px;font-weight:500;line-height:1.2}.stat-circuits-detail{color:var(--text-dark);word-break:break-word;margin:0;padding:0;font-size:10px;font-weight:500;line-height:1.45}.stat-circuits-line+.stat-circuits-line{margin-top:2px}.stat-circuits-empty{color:var(--text-light)}.bg-purple-light{background-color:#ede9fe}.text-purple{color:#7c3aed}.dashboard-layout{grid-template-columns:minmax(0, 1fr) var(--route-list-panel-width);gap:20px;height:600px;display:grid}.dashboard-layout>.map-container,.dashboard-layout>.route-list-panel{min-width:0;min-height:0}.route-list-panel .card-header{flex-shrink:0;padding:16px 14px}.route-list-panel .route-cards{min-height:0;padding:12px}.wifi-station-map-container:fullscreen{background:var(--bg-color)!important;border-radius:0!important;flex-direction:column!important;width:100vw!important;height:100vh!important;padding:24px!important;display:flex!important;overflow:hidden!important}.wifi-station-map-container:fullscreen .map-view-shell{flex:1!important;height:auto!important;min-height:0!important}.wifi-station-map-container:fullscreen #wifiStationMap{flex:1!important;height:100%!important;min-height:0!important}.fullscreen-dashboard-wrapper:fullscreen{background:var(--bg-color);flex-direction:column;width:100vw;height:100vh;padding:24px;display:flex;overflow:hidden}.fullscreen-dashboard-wrapper:fullscreen .stats-grid{display:flex!important}:is(.fullscreen-dashboard-wrapper:fullscreen .dashboard-controls .btn-outline,.fullscreen-dashboard-wrapper:fullscreen .dashboard-controls .btn-primary){display:none!important}.fullscreen-dashboard-wrapper:fullscreen .dashboard-layout{grid-template-columns:minmax(0, 1fr) var(--route-list-panel-width);flex:1;height:auto;min-height:0}:is(.fullscreen-dashboard-wrapper:fullscreen .map-container,.fullscreen-dashboard-wrapper:fullscreen .route-list-panel){height:100%;min-height:0}.fullscreen-dashboard-wrapper:fullscreen .route-list-panel .route-cards{overscroll-behavior:contain;overflow-y:auto}.card{background:var(--card-bg);-webkit-backdrop-filter:blur(16px);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--border-color);flex-direction:column;transition:transform .25s cubic-bezier(.4,0,.2,1),box-shadow .25s,border-color .3s;display:flex;overflow:hidden}body.dark-mode .card{border-color:#ffffff0d}.card:hover{box-shadow:var(--shadow-lg);border-color:#9b51e033}.card-header{border-bottom:1px solid var(--border-color);background:#00000003;padding:20px}body.dark-mode .card-header{background:#ffffff03}.flex-between{justify-content:space-between;align-items:center;display:flex}.card-header h3{align-items:center;gap:8px;margin-bottom:4px;font-size:18px;font-weight:700;display:flex}.sub-text{color:var(--text-light);font-size:12px}.map-card-header{justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex}.map-card-header-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.map-capture-btn{border-radius:6px;min-width:36px;padding:6px 10px;font-size:18px;line-height:1}.map-capture-btn.is-capturing{opacity:.65;pointer-events:none}.map-container.is-map-exporting .map-card-header-actions,.map-container.is-map-exporting .dashboard-map-search{visibility:hidden;pointer-events:none}.map-card-header-main{flex-wrap:wrap;flex:1;align-items:center;gap:20px;min-width:0;display:flex}.map-card-title{white-space:nowrap;margin:0}.map-legend-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.map-legend{color:var(--text-gray);gap:16px;margin-top:12px;font-size:12px;font-weight:500;display:flex}.map-legend--inline{margin-top:0;padding-top:0}.map-legend--stacked{flex-direction:column;align-items:flex-start;gap:4px}.map-legend>span{align-items:center;gap:6px;display:inline-flex}.legend-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px;display:inline-block;box-shadow:0 0 0 1px #fff9}.legend-dot-planned{background:var(--route-planned)}.legend-dot-extra{background:var(--route-extra)}.map-view{background-color:#e5e5e5;flex:1;width:100%}.footer-stat .label{color:var(--text-gray);margin-bottom:4px;font-size:12px}.footer-stat .value{font-size:18px;font-weight:700}.filter-tab.active{background-color:var(--bg-color);color:var(--primary-orange);border-color:var(--primary-orange-light)}.route-cards{flex-direction:column;flex:1;gap:12px;padding:16px;display:flex;overflow-y:auto}.route-card{border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;background:#fff;padding:10px 12px;transition:transform .2s,box-shadow .2s}.route-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.route-card.route-type-target{background:#fffaf5!important;border-left:3px solid #fb923c!important}.route-card.route-type-target .id-badge{color:#c2410c!important;background-color:#fed7aa!important}.route-card.route-type-airport{background:#f5fafe!important;border-left:3px solid #60a5fa!important}.route-card.route-type-airport .id-badge{color:#0369a1!important;background-color:#bae6fd!important}.route-card.route-type-vehicle{background:#f5fdfb!important;border-left:3px solid #2dd4bf!important}.route-card.route-type-vehicle .id-badge{color:#0f766e!important;background-color:#ccfbf1!important}.route-card.route-type-reststop{background:#fdfaff!important;border-left:3px solid #c084fc!important}.route-card.route-type-reststop .id-badge{color:#6d28d9!important;background-color:#f3e8ff!important}.route-card.route-type-extra{background:#fff5f5!important;border-left:3px solid #f87171!important}.route-card.route-type-extra .id-badge{color:#b91c1c!important;background-color:#ffe4e6!important}body.dark-mode .route-card.route-type-target{background:color-mix(in srgb, #fb923c 10%, var(--card-bg))!important;border-left-color:#fb923c!important}body.dark-mode .route-card.route-type-airport{background:color-mix(in srgb, #60a5fa 10%, var(--card-bg))!important;border-left-color:#60a5fa!important}body.dark-mode .route-card.route-type-vehicle{background:color-mix(in srgb, #2dd4bf 10%, var(--card-bg))!important;border-left-color:#2dd4bf!important}body.dark-mode .route-card.route-type-reststop{background:color-mix(in srgb, #c084fc 10%, var(--card-bg))!important;border-left-color:#c084fc!important}body.dark-mode .route-card.route-type-extra{background:color-mix(in srgb, #f87171 10%, var(--card-bg))!important;border-left-color:#f87171!important}.route-list-gap{margin:2px 0 6px}.route-list-gap-main{flex-direction:row;justify-content:center;align-items:center;gap:10px;width:100%;display:flex}.route-list-gap-main .travel-time-indicator{flex:1;min-width:0;margin-bottom:0!important}.route-list-gap--tail{justify-content:center;display:flex}.route-list-gap--tail .route-insert-between{margin:0}.route-list-gap-main .route-insert-between{flex-shrink:0;margin:0}.google-routes-referrer-banner{z-index:50;pointer-events:auto;position:absolute;top:10px;left:10px;right:10px}.google-routes-referrer-banner__inner{color:var(--text-dark);box-shadow:var(--shadow-md);background:#fff7ed;border:1px solid #fdba74;border-radius:10px;padding:12px 14px;font-size:12px;line-height:1.45}.google-routes-referrer-banner__inner strong{color:#c2410c;margin-bottom:6px;font-size:13px;display:block}.google-routes-referrer-banner__inner p{margin:0 0 8px}.google-routes-referrer-banner__inner code{background:#ffffffb3;border-radius:4px;padding:1px 4px;font-size:11px}.google-routes-referrer-banner__dismiss{color:#c2410c;cursor:pointer;background:#fff;border:1px solid #fdba74;border-radius:6px;padding:4px 10px;font-family:inherit;font-size:12px}.map-container{position:relative}.map-view-shell{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.map-view-shell .map-view{flex:1;min-height:0}.google-map-layer-controls{z-index:450;pointer-events:auto;flex-direction:column;align-items:flex-end;gap:8px;display:flex;position:absolute;top:16px;right:16px}.map-controls-toggle{background:var(--card-bg);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-color);height:38px;color:var(--text-dark);cursor:pointer;box-shadow:var(--shadow-md);z-index:451;border-radius:19px;outline:none;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-family:inherit;font-size:12px;font-weight:700;transition:all .3s cubic-bezier(.34,1.56,.64,1);display:flex}.map-controls-toggle i{font-size:16px;transition:transform .3s}.map-controls-toggle:hover{border-color:var(--status-blue);color:var(--status-blue);background:#4285f414;transform:translateY(-1px)}body.dark-mode .map-controls-toggle:hover{color:#fff;background:#ffffff14;border-color:#fff}.google-map-layer-controls-content{opacity:0;visibility:hidden;transform-origin:100% 0;pointer-events:none;flex-direction:column;gap:8px;transition:all .3s cubic-bezier(.34,1.56,.64,1);display:flex;transform:translateY(-10px)scale(.95)}.google-map-layer-controls.is-expanded .google-map-layer-controls-content{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)scale(1)}.google-map-layer-controls.is-expanded .map-controls-toggle{background:var(--gemini-gradient);color:#fff;box-shadow:var(--gemini-glow-shadow);border-color:#0000}.google-map-layer-controls.is-expanded .map-controls-toggle i{transform:rotate(90deg)}.google-map-layer-controls__types{border:1px solid var(--border-color);box-shadow:var(--shadow-md);background:#fffffff5;border-radius:10px;flex-direction:column;gap:4px;padding:4px;display:flex}.google-map-layer-btn{min-width:118px;color:var(--text-dark);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:flex-start;align-items:center;gap:6px;padding:7px 12px;font-family:inherit;font-size:12px;font-weight:600;line-height:1.2;transition:background-color .15s,color .15s;display:inline-flex}.google-map-layer-btn i{color:var(--text-gray);font-size:16px}.google-map-layer-btn:hover{background:color-mix(in srgb, var(--primary-orange-light) 55%, #fff)}.google-map-layer-btn.is-active{background:var(--primary-orange-light);color:var(--primary-orange-hover)}.google-map-layer-btn.is-active i{color:var(--primary-orange)}.google-map-layer-btn--traffic{border:1px solid var(--border-color);box-shadow:var(--shadow-md);background:#fffffff5;border-radius:10px}.google-map-layer-btn--traffic.is-active{border-color:color-mix(in srgb, #4a90e2 45%, var(--border-color));color:#2563eb;background:#deebfa}.google-map-layer-btn--traffic.is-active i{color:#2563eb}body.dark-mode .google-map-layer-controls__types,body.dark-mode .google-map-layer-btn--traffic{background:#1e293bf0;border-color:#94a3b859}body.dark-mode .google-map-layer-btn{color:#e2e8f0}body.dark-mode .google-map-layer-btn.is-active{background:color-mix(in srgb, var(--primary-orange) 28%, #1e293b);color:#fdba74}.map-container.is-map-exporting .google-map-layer-controls{display:none!important}.route-insert-kind-popover{z-index:11040}#routeInsertPointModal{z-index:1100;left:var(--sidebar-offset);width:calc(100vw - var(--sidebar-offset));box-sizing:border-box;justify-content:center;align-items:center;padding:40px 24px;overflow-y:auto}#routeInsertPointModal .route-insert-point-modal{width:100%;max-width:min(680px, calc(100vw - var(--sidebar-offset) - 48px));flex-direction:column;max-height:calc(100vh - 80px);margin:0 auto;display:flex;transform:none}#routeInsertPointModal.modal-overlay.active .route-insert-point-modal{transform:none}#routeInsertPointModal .route-insert-point-body{max-height:calc(100vh - 220px);overflow-y:auto}.route-insert-point-hint{color:var(--text-gray);margin:0 0 14px;font-size:13px}.route-insert-point-type-badge{color:var(--primary-orange);border-radius:var(--radius-md);background:#f9731614;border:1px solid #f9731640;margin:0 0 14px;padding:8px 12px;font-size:13px;font-weight:600}#routeInsertPointFormHost .destination-block.route-insert-draft{border:1px solid var(--border-color);border-radius:var(--radius-md);margin:0;padding:12px 14px}#routeInsertPointFormHost .destination-block.route-insert-draft.target-block{background:#fff7ed!important;border-color:#fed7aa!important;border-left-style:solid!important;border-left-width:4px!important}#routeInsertPointFormHost .destination-block.route-insert-draft.target-block h4{color:#c2410c!important}#routeInsertPointFormHost .destination-block.route-insert-draft.airport-block{background:#f0f9ff!important;border-color:#bae6fd!important;border-left-style:solid!important;border-left-width:4px!important}#routeInsertPointFormHost .destination-block.route-insert-draft.airport-block h4{color:#0369a1!important}#routeInsertPointFormHost .destination-block.route-insert-draft.vehicle-block{background:#f0fdfa!important;border-color:#99f6e4!important;border-left-style:solid!important;border-left-width:4px!important}#routeInsertPointFormHost .destination-block.route-insert-draft.vehicle-block h4{color:#0f766e!important}#routeInsertPointFormHost .destination-block.route-insert-draft.rest-stop-block{background:#faf5ff!important;border-color:#e9d5ff!important;border-left-style:solid!important;border-left-width:4px!important}#routeInsertPointFormHost .destination-block.route-insert-draft.rest-stop-block h4{color:#6b21a8!important}body.dark-mode #routeInsertPointFormHost .destination-block.route-insert-draft.target-block{background:#f9731626!important;border-left-color:#f97316!important}body.dark-mode #routeInsertPointFormHost .destination-block.route-insert-draft.target-block h4{color:#fdba74!important}body.dark-mode #routeInsertPointFormHost .destination-block.route-insert-draft.airport-block{background:#3b82f626!important;border-left-color:#3b82f6!important}body.dark-mode #routeInsertPointFormHost .destination-block.route-insert-draft.airport-block h4{color:#93c5fd!important}body.dark-mode #routeInsertPointFormHost .destination-block.route-insert-draft.vehicle-block{background:#14b8a626!important;border-left-color:#14b8a6!important}body.dark-mode #routeInsertPointFormHost .destination-block.route-insert-draft.vehicle-block h4{color:#99f6e4!important}body.dark-mode #routeInsertPointFormHost .destination-block.route-insert-draft.rest-stop-block{background:#a855f726!important;border-left-color:#a855f7!important}body.dark-mode #routeInsertPointFormHost .destination-block.route-insert-draft.rest-stop-block h4{color:#e9d5ff!important}#routeInsertPointFormHost .destination-block.route-insert-draft h4{flex-wrap:nowrap;align-items:flex-start;gap:8px;margin-bottom:12px}#routeInsertPointFormHost .destination-block.route-insert-draft h4>div:first-child{flex-wrap:nowrap;flex:auto;align-items:center;gap:10px;min-width:0;display:flex}#routeInsertPointFormHost .destination-block.route-insert-draft h4>div:first-child>div:first-child{flex:0 auto;min-width:0;max-width:34%}#routeInsertPointFormHost .destination-block.route-insert-draft .dest-title{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}#routeInsertPointFormHost .destination-block.route-insert-draft .dest-timing-controls{flex-wrap:nowrap;flex:none;gap:10px 14px;margin-left:auto;padding-left:14px}#routeInsertPointFormHost .destination-block.route-insert-draft .dest-arrival-label{white-space:nowrap}#routeInsertPointFormHost .dest-extra-plan-item{white-space:nowrap;flex:none;align-items:center;gap:6px;display:inline-flex}#routeInsertPointFormHost .dest-extra-plan-item label{color:var(--text-orange);cursor:pointer;white-space:nowrap;margin:0;font-size:12px;font-weight:500}#routeInsertPointFormHost .route-insert-arrival-locked{color:var(--text-gray);background:var(--bg-color);border:1px dashed var(--border-color);white-space:nowrap;cursor:default;-webkit-user-select:none;user-select:none;border-radius:999px;flex:none;align-items:center;gap:5px;padding:4px 10px;font-size:11px;font-weight:600;display:inline-flex}#routeInsertPointFormHost .route-insert-arrival-locked i{opacity:.75;font-size:13px}#routeInsertPointFormHost .dest-timing-arrival{display:none!important}#routeInsertPointFormHost .airport-fields-grid{grid-template-columns:minmax(0,1fr) minmax(108px,132px) minmax(108px,132px);align-items:end;gap:12px;display:grid}#routeInsertPointFormHost .destination-block.airport-block .airport-fields-grid,#routeInsertPointFormHost .destination-block.rest-stop-block .airport-fields-grid,#routeInsertPointFormHost .destination-block.vehicle-block .airport-fields-grid{grid-template-columns:minmax(0,min(320px,48%)) minmax(108px,1fr) minmax(108px,1fr)}#routeInsertPointFormHost .airport-fields-grid .form-group{min-width:0}#routeInsertPointFormHost .airport-fields-grid .form-group>input[type=text]{box-sizing:border-box;height:38px}#routeInsertPointFormHost .target-fields-grid{grid-template-columns:minmax(52px,.32fr) minmax(76px,.68fr) minmax(120px,1fr) minmax(120px,1fr);align-items:end;gap:12px;margin-bottom:8px;display:grid}#routeInsertPointFormHost .target-fields-grid .form-group{min-width:0}#routeInsertPointFormHost .target-fields-grid .form-group>input[type=text],#routeInsertPointFormHost .target-fields-grid .target-agency-controls input[type=text]{box-sizing:border-box;height:38px}#routeInsertPointFormHost .route-insert-contact-row{border-top:1px solid var(--border-color);grid-template-columns:1fr 1fr 1fr;gap:12px;width:100%;margin-top:12px;padding-top:12px;display:grid}#routeInsertPointFormHost .contact-field{flex-direction:column;gap:6px;min-width:0;display:flex}#routeInsertPointFormHost .contact-field label{color:var(--text-gray);font-size:13px;font-weight:600}#routeInsertPointFormHost .contact-field input{box-sizing:border-box;border:1px solid var(--border-color);border-radius:8px;width:100%;padding:10px 12px;font-family:inherit;font-size:14px;transition:border-color .2s,box-shadow .2s}#routeInsertPointFormHost .contact-field input:focus{border-color:var(--primary-orange);outline:none;box-shadow:0 0 0 3px #2e6cb61f}#routeInsertPointFormHost .airport-name-controls,#routeInsertPointFormHost .target-agency-controls{align-items:stretch;gap:8px;display:flex}#routeInsertPointFormHost .airport-name-controls input[type=text],#routeInsertPointFormHost .target-agency-controls input[type=text]{flex:auto;width:100%;min-width:0}#routeInsertPointFormHost .airport-name-controls .btn-search-loc,#routeInsertPointFormHost .target-agency-controls .btn-search-loc{width:40px;min-width:40px;height:38px;color:var(--primary-orange);cursor:pointer;background:linear-gradient(#fffaf5 0%,#ffedd5 100%);border:1.5px solid #fed7aa;border-radius:8px;flex:none;justify-content:center;align-items:center;gap:5px;padding:0;font-family:inherit;font-size:12px;font-weight:600;line-height:1;transition:background .2s,border-color .2s,box-shadow .2s,transform .2s,color .2s;display:inline-flex;box-shadow:0 1px 3px #2e6cb624}#routeInsertPointFormHost .btn-search-loc:hover{border-color:var(--primary-orange);background:linear-gradient(#ffedd5 0%,#fed7aa 100%);transform:translateY(-1px);box-shadow:0 3px 8px #2e6cb638}#routeInsertPointFormHost .btn-search-loc:active{transform:translateY(0);box-shadow:0 1px 2px #2e6cb629}#routeInsertPointFormHost .btn-search-loc:focus-visible{box-shadow:0 0 0 3px var(--primary-orange-light);outline:none}#routeInsertPointFormHost .btn-search-loc.is-loading,#routeInsertPointFormHost .btn-search-loc.is-success{width:auto;min-width:40px;padding:0 10px}#routeInsertPointFormHost .btn-search-loc.is-loading{color:#0369a1;cursor:wait;background:linear-gradient(#f0f9ff 0%,#e0f2fe 100%);border-color:#bae6fd}#routeInsertPointFormHost .btn-search-loc.is-success{color:var(--status-green);background:linear-gradient(#f0fdf4 0%,#dcfce7 100%);border-color:#86efac}#routeInsertPointFormHost .search-loc-icon{flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex;position:relative}#routeInsertPointFormHost .search-loc-pin{font-size:20px;line-height:1}#routeInsertPointFormHost .search-loc-glass{background:var(--card-bg);border-radius:50%;padding:2px;font-size:10px;line-height:1;position:absolute;bottom:-1px;right:-5px;box-shadow:0 0 0 1px #2e6cb647}#routeInsertPointFormHost .vpn-checks-section{background:#ffffffa6;border:1px dashed #ffc9a3;border-radius:8px;margin-bottom:10px;padding:8px 10px}#routeInsertPointFormHost .vpn-checks-list{flex-direction:column;gap:6px;display:flex}#routeInsertPointFormHost .vpn-check-row{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr) 64px 28px;align-items:end;gap:6px;display:grid}#routeInsertPointFormHost .vpn-check-row .form-group{min-width:0;margin:0}#routeInsertPointFormHost .vpn-check-row label{color:var(--text-gray);white-space:nowrap;margin:0 0 2px;font-size:10px;font-weight:600;line-height:1.2;display:block}#routeInsertPointFormHost .vpn-select,#routeInsertPointFormHost .vpn-circuits-input{border:1px solid var(--border-color);background:var(--card-bg);width:100%;height:28px;color:var(--text-dark);box-sizing:border-box;border-radius:6px;padding:0 8px;font-size:12px;line-height:1.2}#routeInsertPointFormHost .vpn-select{cursor:pointer;padding-right:22px}#routeInsertPointFormHost .vpn-circuits-input{text-align:center;-moz-appearance:textfield}#routeInsertPointFormHost .vpn-circuits-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}#routeInsertPointFormHost .vpn-circuits-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}#routeInsertPointFormHost .vpn-check-row-action{justify-content:center;align-items:flex-end;display:flex}#routeInsertPointFormHost .btn-vpn-add-row,#routeInsertPointFormHost .btn-vpn-remove-row{background:var(--card-bg);width:28px;height:28px;color:var(--primary-orange);cursor:pointer;box-shadow:var(--shadow-sm);border:1px solid #ffddb8;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:15px;transition:border-color .15s,background .15s,transform .1s;display:inline-flex}#routeInsertPointFormHost .btn-vpn-add-row:hover,#routeInsertPointFormHost .btn-vpn-remove-row:hover{border-color:var(--primary-orange);background:var(--primary-orange-light);transform:translateY(-1px)}#routeInsertPointFormHost .btn-vpn-remove-row{color:var(--status-red);border-color:#f5c4c4}#routeInsertPointFormHost .btn-vpn-remove-row:hover{background:var(--status-red-light);border-color:var(--status-red)}body.dark-mode #routeInsertPointFormHost .vpn-checks-section{background:#ffffff0a;border-color:#2e6cb659}#routeInsertPointFormHost .dest-timing-controls{flex-wrap:nowrap;align-items:center;gap:10px 14px;font-size:12px;display:flex}#routeInsertPointFormHost .dest-timing-item{white-space:nowrap;align-items:center;gap:4px;display:inline-flex}#routeInsertPointFormHost .dest-timing-arrival{gap:6px;position:relative}#routeInsertPointFormHost .dest-timing-arrival>i{color:var(--status-green)}#routeInsertPointFormHost .dest-timing-item select.timing-select{border:1px solid var(--border-color);background:var(--card-bg);cursor:pointer;border-radius:999px;padding:4px 10px;font-family:inherit;font-size:13px;font-weight:500}#routeInsertPointFormHost .arrival-time-picker{z-index:1;align-items:center;display:inline-flex;position:relative}#routeInsertPointFormHost .arrival-time-picker.is-open{z-index:1200}#routeInsertPointFormHost .arrival-time-trigger{color:#2a8f6a;background:linear-gradient(135deg, var(--status-green-light) 0%, #f0faf6 100%);box-shadow:var(--shadow-sm);cursor:pointer;border:1px solid #3eb48947;border-radius:999px;align-items:center;gap:6px;padding:5px 12px 5px 10px;font-family:inherit;font-size:13px;font-weight:700;transition:border-color .2s,box-shadow .2s;display:inline-flex}#routeInsertPointFormHost .arrival-time-trigger:after{content:"";border-left:4px solid #0000;border-right:4px solid #0000;border-top:5px solid var(--status-green);opacity:.8;width:0;height:0}#routeInsertPointFormHost .arrival-time-picker.is-filled .arrival-time-trigger,#routeInsertPointFormHost .arrival-time-picker.is-open .arrival-time-trigger{border-color:var(--status-green);box-shadow:0 0 0 3px #3eb48924}#routeInsertPointFormHost .arrival-time-trigger:hover:not(:disabled){border-color:var(--status-green);box-shadow:0 2px 8px #3eb4892e}#routeInsertPointFormHost .arrival-clock-popover{z-index:1201;border-radius:var(--radius-md);background:var(--card-bg);border:1px solid var(--border-color);width:176px;box-shadow:var(--shadow-lg);padding:12px;position:fixed}#routeInsertPointFormHost .arrival-clock-popover[hidden]{display:none!important}#routeInsertPointFormHost .arrival-clock-popover-digital:not([hidden]){flex-direction:column;gap:8px;display:flex}#routeInsertPointFormHost .clock-format-hint{color:var(--text-gray);text-align:center;font-size:11px;font-weight:500;display:block}#routeInsertPointFormHost .clock-digital-label{color:var(--text-gray);text-align:center;font-size:12px;font-weight:600}#routeInsertPointFormHost .clock-digital-input{border:1px solid var(--border-color);width:100%;color:var(--status-green);text-align:center;letter-spacing:.06em;background:var(--bg-color);box-sizing:border-box;border-radius:10px;padding:10px 12px;font-family:inherit;font-size:22px;font-weight:700}#routeInsertPointFormHost .clock-digital-input:focus{border-color:var(--status-green);background:var(--card-bg);outline:none;box-shadow:0 0 0 3px #3eb48926}#routeInsertPointFormHost .clock-actions{gap:8px;display:flex}#routeInsertPointFormHost .clock-clear-btn,#routeInsertPointFormHost .clock-confirm-btn{cursor:pointer;border:1px solid var(--border-color);background:var(--bg-color);color:var(--text-gray);border-radius:999px;flex:1;padding:6px 8px;font-family:inherit;font-size:12px;font-weight:600}#routeInsertPointFormHost .clock-confirm-btn{background:var(--status-green);border-color:var(--status-green);color:#fff}#routeInsertPointFormHost .clock-confirm-btn:hover{filter:brightness(1.05)}body.dark-mode #routeInsertPointFormHost .btn-search-loc{color:#ffb366;background:linear-gradient(#2e6cb62e 0%,#2e6cb61a 100%);border-color:#2e6cb673}body.dark-mode #routeInsertPointFormHost .arrival-time-trigger{color:#6fd4a8;background:linear-gradient(135deg,#3eb4892e 0%,#3eb48914 100%)}body.dark-mode #routeInsertPointFormHost .clock-digital-input{background:var(--bg-color);border-color:var(--border-color);color:#6fd4a8}#routeInsertPointFormHost .form-grid .form-group input,#routeInsertPointFormHost .form-grid .form-group textarea{box-sizing:border-box;width:100%}.route-insert-between{justify-content:center;margin:2px 0 4px;display:flex}.btn-route-insert{color:var(--primary-orange);background:var(--primary-orange-light);border:1px dashed var(--primary-orange);cursor:pointer;border-radius:999px;align-items:center;gap:4px;padding:2px 12px;font-family:inherit;font-size:11px;font-weight:600;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.btn-route-insert:hover{background:var(--primary-orange);color:#fff;border-color:var(--primary-orange)}#destinationsContainer>.route-insert-between{margin:4px 0 10px}.route-planning-list .route-insert-between{justify-content:flex-start;margin:0 0 0 70px}.route-header{justify-content:space-between;align-items:flex-start;margin-bottom:0;display:flex}.route-id{flex:1;gap:12px;min-width:0;display:flex}.route-id>div:not(.id-badge){flex:1;min-width:0}.id-badge{border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;font-size:16px;font-weight:700;display:flex}.rest-stop-icon-pair{vertical-align:middle;align-items:center;gap:4px;display:inline-flex}.rest-stop-icon-pair i{line-height:1}.id-badge .rest-stop-icon-pair{gap:2px;font-size:11px}.stat-icon.rest-stop-icon-pair{box-sizing:border-box;flex-direction:column;justify-content:center;align-items:center;gap:0;padding:3px 2px;display:flex;overflow:hidden}.stat-icon.rest-stop-icon-pair i{flex-shrink:0;font-size:13px;line-height:1}.stat-icon.rest-stop-icon-pair i:last-child{margin-top:1px;font-size:11px}.summary-kpi-icon .rest-stop-icon-pair{flex-direction:column;justify-content:center;align-items:center;gap:0;line-height:1;display:flex}.summary-kpi-icon:has(.rest-stop-icon-pair){box-sizing:border-box;padding:3px 2px;overflow:hidden}.summary-kpi-icon .rest-stop-icon-pair i{flex-shrink:0;font-size:13px;line-height:1}.summary-kpi-icon .rest-stop-icon-pair i:last-child{margin-top:1px;font-size:11px}.summary-detail-type .rest-stop-icon-pair{vertical-align:middle;flex-direction:column;justify-content:center;align-items:center;gap:0;max-height:22px;line-height:1;display:inline-flex;overflow:hidden}.summary-detail-type .rest-stop-icon-pair i{font-size:10px;line-height:1}.summary-detail-type .rest-stop-icon-pair i:last-child{margin-top:1px;font-size:9px}.rest-stop-marker-icons{flex-direction:column;justify-content:center;align-items:center;gap:1px;font-size:10px;line-height:1;display:flex}.rest-stop-marker-icons i:last-child{font-size:8px}.route-id h4{color:var(--text-dark);margin-bottom:2px;font-size:14px;font-weight:700}.route-extra-tag{background:var(--status-red-light);color:var(--status-red);border-radius:20px;align-items:center;padding:4px 10px;font-size:11px;font-weight:700;display:inline-flex}.route-card-title-row{min-width:0;color:var(--text-dark);flex-direction:column;align-items:flex-start;gap:3px;margin-bottom:4px;font-size:14px;font-weight:700;line-height:1.35;display:flex}.route-card-title-text{width:100%;line-height:1.4}.route-timing-badges{flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;font-weight:500;line-height:1.3;display:inline-flex}.route-timing-inspect{color:var(--status-blue)}.route-timing-arrival{color:var(--status-green)}.route-extra-tag{color:var(--status-red);font-size:12px;font-weight:600}.route-id p{color:var(--text-gray);font-size:11px}.route-details{justify-content:space-between;margin-bottom:12px;display:flex}.detail-item{flex-direction:column;display:flex}.detail-item.center{text-align:center}.detail-item.right{text-align:right}.detail-item .label{color:var(--text-light);margin-bottom:2px;font-size:11px}.detail-item .value{color:var(--text-dark);font-size:13px;font-weight:600}.progress{border-radius:3px;height:100%}.alert-message{border-radius:6px;margin-top:12px;padding:8px 12px;font-size:11px;font-weight:500}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-color)}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}.modal-overlay{-webkit-backdrop-filter:blur(8px);z-index:1000;opacity:0;pointer-events:none;background-color:#0f172a66;justify-content:center;align-items:center;width:100vw;height:100vh;transition:opacity .3s;display:flex;position:fixed;top:0;left:0}.modal-overlay.active{opacity:1;pointer-events:all}.modal-container{background-color:var(--card-bg);border-radius:var(--radius-lg);width:90%;max-width:650px;box-shadow:var(--shadow-lg);transition:transform .3s;overflow:hidden;transform:translateY(20px)}.modal-overlay.active .modal-container{transform:translateY(0)}.wifi-coord-modal{max-width:560px}.wifi-coord-subtitle{color:var(--text-gray);margin:2px 0 0;font-size:13px}.wifi-coord-body{padding:18px 20px}.wifi-coord-hint{color:var(--text-gray);align-items:center;gap:6px;margin:0 0 12px;font-size:12.5px;display:flex}.wifi-coord-map{border:1px solid var(--border-color);background:var(--bg-color);border-radius:12px;width:100%;height:340px;overflow:hidden}.wifi-coord-map-fallback{text-align:center;height:100%;color:var(--text-gray);justify-content:center;align-items:center;padding:20px;font-size:13px;display:flex}.wifi-coord-fields{grid-template-columns:1fr 1fr;gap:12px;margin-top:14px;display:grid}.wifi-coord-footer{justify-content:flex-end;align-items:center;gap:10px;display:flex}.wifi-coord-status{color:var(--text-gray);margin-right:auto;font-size:12.5px}.wifi-coord-status.is-error{color:var(--status-red,#ef4444)}.wifi-coord-status.is-success{color:var(--status-green,#16a34a);font-weight:600}#vpnStationMapModal{z-index:1300;left:var(--sidebar-offset);width:calc(100vw - var(--sidebar-offset))}.vpn-station-map-modal{max-width:min(1180px, calc(100vw - var(--sidebar-offset) - 48px));width:95%}.vpn-station-map-subtitle{color:var(--text-gray);margin:2px 0 0;font-size:13px}.vpn-station-pick-map{width:100%;height:60vh;min-height:360px}@media (width<=900px){.vpn-station-map-split{flex-direction:column!important}.vpn-station-map-split>div:first-child{flex:none!important;width:100%!important;height:50vh!important;min-height:300px!important}.vpn-station-map-split .vpn-station-pick-map{height:100%!important;min-height:0!important}.vpn-station-selected-sidebar{border-top:1px solid var(--border-color);max-height:40vh;border-left:0!important;width:100%!important;min-width:0!important}}.vpn-station-map-modal:fullscreen{background-color:var(--card-bg)!important;border-radius:0!important;flex-direction:column!important;width:100vw!important;max-width:100%!important;height:100vh!important;max-height:100vh!important;margin:0!important;display:flex!important}.vpn-station-map-modal:fullscreen .modal-body{flex:auto!important;height:calc(100vh - 72px)!important;max-height:none!important}.vpn-station-map-modal:fullscreen .vpn-station-map-split{flex:auto!important;height:100%!important}.vpn-station-map-modal:fullscreen .vpn-station-pick-map{flex:auto!important;height:100%!important;min-height:0!important}.vpn-station-map-modal:fullscreen .vpn-station-selected-sidebar{height:100%!important}.vpn-station-map-modal:-webkit-full-screen{background-color:var(--card-bg)!important;border-radius:0!important;flex-direction:column!important;width:100vw!important;max-width:100%!important;height:100vh!important;max-height:100vh!important;margin:0!important;display:flex!important}.vpn-station-map-modal:-webkit-full-screen .modal-body{flex:auto!important;height:calc(100vh - 72px)!important;max-height:none!important}.vpn-station-map-modal:-webkit-full-screen .vpn-station-map-split{flex:auto!important;height:100%!important}.vpn-station-map-modal:-webkit-full-screen .vpn-station-pick-map{flex:auto!important;height:100%!important;min-height:0!important}.vpn-station-map-modal:-webkit-full-screen .vpn-station-selected-sidebar{height:100%!important}.vpn-pick-filters{border-bottom:1px solid var(--border-color);background:var(--bg-color);flex-wrap:wrap;gap:10px;padding:12px 16px;display:flex}.vpn-pick-filter{flex-direction:column;flex:120px;gap:3px;min-width:120px;display:flex}.vpn-pick-filter label{color:var(--text-gray);font-size:11px;font-weight:600}.vpn-pick-filter select{border:1px solid var(--border-color);background:var(--card-bg);height:34px;color:var(--text-dark);border-radius:8px;padding:0 8px;font-family:inherit;font-size:12.5px}.vpn-pick-filter input{border:1px solid var(--border-color);background:var(--card-bg);height:34px;color:var(--text-dark);border-radius:8px;outline:none;padding:0 10px;font-family:inherit;font-size:12.5px}.vpn-pick-route-context{border-bottom:1px solid var(--border-color);background:var(--card-bg);max-height:240px;padding:10px 12px;overflow-y:auto}.vpn-pick-route-context:empty{display:none}#planRouteModal{left:var(--sidebar-offset);width:calc(100vw - var(--sidebar-offset));box-sizing:border-box;justify-content:center;align-items:flex-start;padding:40px 24px 24px;overflow-y:auto}#planRouteModal .modal-container{width:100%;max-width:min(1240px, calc(100vw - var(--sidebar-offset) - 48px));flex-direction:column;align-self:center;max-height:calc(100vh - 64px);margin:0 auto;display:flex;overflow:visible;transform:none}#planRouteModal .destination-block{overflow:visible}#planRouteModal.modal-overlay.active .modal-container{transform:none}#planRouteModal .modal-body{flex:auto;min-height:0;max-height:none;overflow-y:auto}#planRouteModal .modal-container,#planRouteModal .modal-header,#planRouteModal .modal-plan-toolbar,#planRouteModal .modal-body,#planRouteModal .modal-footer,#planRouteModal .modal-header h3,#planRouteModal label,#planRouteModal input,#planRouteModal textarea,#planRouteModal select,#planRouteModal .form-group,#planRouteModal .dest-title{-webkit-user-select:text;user-select:text}#planRouteModal button,#planRouteModal .tab,#planRouteModal .drag-handle{-webkit-user-select:none;user-select:none}.modal-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal-header h3{color:var(--text-dark);margin:0;font-size:18px}.modal-body{max-height:70vh;padding:24px;overflow-y:auto}.form-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-group{flex-direction:column;gap:8px;display:flex}.form-group.span-2{grid-column:span 2}.form-group label{color:var(--text-gray);font-size:13px;font-weight:600}.form-group input,.form-group textarea{border:1px solid var(--border-color);border-radius:6px;padding:10px 14px;font-family:inherit;font-size:14px;transition:border-color .2s}.form-group input:focus,.form-group textarea:focus{border-color:var(--primary-orange);outline:none}.modal-footer{border-top:1px solid var(--border-color);background-color:var(--bg-color);justify-content:flex-end;gap:12px;padding:16px 24px;display:flex}body.dark-mode .btn-outline{background-color:var(--card-bg);color:var(--text-dark);border-color:var(--border-color)}body.dark-mode .search-bar input,body.dark-mode .form-group input,body.dark-mode .form-group textarea,body.dark-mode .form-group select{color:#f7fafc;background-color:#1a202c;border-color:#4a5568}body.dark-mode .modal-container{background-color:var(--card-bg);color:var(--text-dark)}body.dark-mode .modal-header{background-color:var(--sidebar-bg);border-bottom-color:var(--border-color);color:var(--text-dark)}body.dark-mode .modal-header h3{color:var(--text-dark)}body.dark-mode .close-modal{background-color:var(--card-bg);color:var(--text-gray);border-color:var(--border-color)}body.dark-mode .close-modal:hover,body.dark-mode .menu-item:hover{background-color:var(--border-color)}body.dark-mode .icon-btn{background-color:var(--card-bg);border-color:var(--border-color);color:var(--text-gray)}body.dark-mode .search-bar,body.dark-mode .stat-card,body.dark-mode .map-container{background-color:var(--card-bg);border-color:var(--border-color)}body.dark-mode .card-header{border-bottom-color:var(--border-color)}body.dark-mode .date-tabs .tab{background-color:var(--card-bg);color:var(--text-gray);border-color:var(--border-color)}body.dark-mode .date-tabs .tab.outline{border-style:dashed}body.dark-mode .destination-block{background-color:var(--card-bg)!important}body.dark-mode .destination-block.airport-block{background-color:#3b82f626!important;border-color:#3b82f64d #3b82f64d #3b82f64d #3b82f6!important}body.dark-mode .destination-block.airport-block h4{color:#93c5fd!important}body.dark-mode .destination-block.vehicle-block{background-color:#14b8a626!important;border-color:#14b8a64d #14b8a64d #14b8a64d #14b8a6!important}body.dark-mode .destination-block.vehicle-block h4{color:#99f6e4!important}body.dark-mode #planRouteModal .destination-block.target-block{background-color:#f9731626!important;border-color:#f973164d #f973164d #f973164d #f97316!important}body.dark-mode #planRouteModal .destination-block.target-block h4{color:#fdba74!important}body.dark-mode #planRouteModal .destination-block.rest-stop-block{background-color:#a855f726!important;border-color:#a855f74d #a855f74d #a855f74d #a855f7!important}body.dark-mode #planRouteModal .destination-block.rest-stop-block h4{color:#e9d5ff!important}body.dark-mode .form-group label{color:var(--text-gray)}body.dark-mode .user-info .user-name,body.dark-mode .breadcrumb h2{color:var(--text-dark)}body.dark-mode .dashboard-controls{background-color:var(--card-bg);border-color:var(--border-color)}body.dark-mode .date-tabs{background-color:var(--bg-color)}body.dark-mode .tab.active{background-color:var(--card-bg)!important;color:var(--text-dark)!important}body.dark-mode .card,body.dark-mode .route-list-panel{background-color:var(--card-bg);border-color:var(--border-color)}body.dark-mode .sub-text{color:var(--text-gray)}body.dark-mode .btn-primary{color:#fff}body.dark-mode .btn-outline:hover{background-color:var(--border-color);color:var(--text-dark);border-color:var(--text-gray)}body.dark-mode .route-planning-edit-btn,body.dark-mode .route-planning-edit-btn i{color:#fff!important}.user-profile{position:relative}.profile-dropdown{background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-md);z-index:1000;flex-direction:column;width:150px;display:none;position:absolute;top:120%;right:0;overflow:hidden}.profile-dropdown.active{display:flex}.profile-dropdown-item{color:var(--text-dark);align-items:center;gap:8px;padding:10px 16px;font-size:14px;text-decoration:none;transition:background-color .2s;display:flex}.profile-dropdown-item:hover{background-color:#0000000d}body.dark-mode .profile-dropdown-item:hover{background-color:#ffffff0d}body.dark-mode .user-profile,body.dark-mode .profile-dropdown{background-color:var(--card-bg);border-color:var(--border-color)}.summary-report-view:not([hidden]){flex-direction:column;flex:1;min-height:0;margin-top:0;padding:12px 24px 24px;display:flex;overflow:hidden}.summary-report-view .summary-toolbar{flex-shrink:0}.summary-report-container{flex:1;min-height:0;padding-bottom:4px;overflow-y:auto}.summary-report-view .summary-footnote{color:var(--text-gray);flex-shrink:0;margin:12px 0 0;font-size:12px}.summary-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:20px;display:flex}.summary-toolbar-filter{flex-direction:column;gap:6px;display:flex}.summary-toolbar-filter label{color:var(--text-dark);align-items:center;gap:6px;font-size:13px;font-weight:600;display:flex}.summary-toolbar-filter select{border:1px solid var(--border-color);background:var(--card-bg);min-width:180px;color:var(--text-dark);border-radius:8px;padding:10px 12px;font-family:inherit}.summary-toolbar-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-left:auto;display:flex}.summary-export-btn{color:#fff;cursor:pointer;white-space:nowrap;background:#217346;border:none;border-radius:7px;align-items:center;gap:6px;padding:6px 12px;font-family:inherit;font-size:13px;font-weight:600;line-height:1.25;transition:background .2s;display:inline-flex}.summary-export-btn i{font-size:15px}.summary-export-btn:hover:not(:disabled){background:#1a5c38}.summary-export-btn:disabled{opacity:.45;cursor:not-allowed}.summary-toolbar-meta{color:var(--text-gray);font-size:12px}.summary-kpi-scope{background:var(--primary-orange-light);border-radius:var(--radius-md);color:var(--text-dark);border:1px solid #2e6cb640;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;padding:12px 14px;font-size:14px;font-weight:600;display:flex}.summary-kpi-scope i{color:var(--primary-orange);font-size:18px}.summary-kpi-scope-note{color:var(--text-gray);font-size:12px;font-weight:500}.summary-kpi-tag{color:var(--primary-orange);background:var(--primary-orange-light);vertical-align:middle;border-radius:4px;margin-left:4px;padding:1px 6px;font-size:10px;font-weight:700;display:inline-block}.summary-kpi-grid{-webkit-backdrop-filter:blur(8px);background:#ffffff73;border:1px solid #edf2f799;border-radius:20px;grid-template-columns:repeat(6,1fr);gap:14px;margin-bottom:24px;padding:16px;display:grid;box-shadow:inset 0 1px 2px #fff9,0 4px 20px #00000004}body.dark-mode .summary-kpi-grid{background:#1a202c59!important;border-color:#4a55684d!important;box-shadow:inset 0 1px 1px #ffffff0d,0 4px 20px #00000026!important}.summary-kpi-card{background:var(--card-bg);border:1px solid #edf2f7e6;border-radius:16px;flex-direction:column;align-items:flex-start;gap:4px;padding:14px 18px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden;box-shadow:0 4px 12px #00000004}body.dark-mode .summary-kpi-card{background-color:#2d3748b3!important;border-color:#4a556880!important;box-shadow:0 4px 12px #0000001f!important}.summary-kpi-card:hover{transform:translateY(-4px)scale(1.02)}.summary-kpi-value{font-size:22px;font-weight:800;line-height:1.1;font-family:var(--font-family);-webkit-background-clip:text;background-clip:text}.summary-kpi-label{color:var(--text-gray);text-transform:uppercase;letter-spacing:.5px;margin-top:2px;font-size:11px;font-weight:700}.summary-kpi-grid>.summary-kpi-card:first-child{border-left:4px solid var(--primary-orange)!important;background:linear-gradient(135deg, #2e6cb60f 0%, var(--card-bg) 60%)!important}body.dark-mode .summary-kpi-grid>.summary-kpi-card:first-child{background:linear-gradient(135deg,#2e6cb61f 0%,#2d3748b3 85%)!important}.summary-kpi-grid>.summary-kpi-card:first-child:hover{border-color:#2e6cb666!important;box-shadow:0 8px 24px #2e6cb61f!important}.summary-kpi-grid>.summary-kpi-card:first-child .summary-kpi-value{-webkit-text-fill-color:transparent;background-image:linear-gradient(135deg,#2e6cb6,#5e9be0);-webkit-background-clip:text;color:var(--primary-orange)!important}.summary-kpi-grid>.summary-kpi-card:nth-child(2){border-left:4px solid var(--primary-orange)!important;background:linear-gradient(135deg, #2e6cb60f 0%, var(--card-bg) 60%)!important}body.dark-mode .summary-kpi-grid>.summary-kpi-card:nth-child(2){background:linear-gradient(135deg,#2e6cb61f 0%,#2d3748b3 85%)!important}.summary-kpi-grid>.summary-kpi-card:nth-child(2):hover{border-color:#2e6cb666!important;box-shadow:0 8px 24px #2e6cb61f!important}.summary-kpi-grid>.summary-kpi-card:nth-child(2) .summary-kpi-value{-webkit-text-fill-color:transparent;background-image:linear-gradient(135deg,#2e6cb6,#5e9be0);-webkit-background-clip:text;color:var(--primary-orange)!important}.summary-kpi-grid>.summary-kpi-card:nth-child(3){border-left:4px solid var(--status-green)!important;background:linear-gradient(135deg, #3eb4890f 0%, var(--card-bg) 60%)!important}body.dark-mode .summary-kpi-grid>.summary-kpi-card:nth-child(3){background:linear-gradient(135deg,#3eb4891f 0%,#2d3748b3 85%)!important}.summary-kpi-grid>.summary-kpi-card:nth-child(3):hover{border-color:#3eb48966!important;box-shadow:0 8px 24px #3eb4891f!important}.summary-kpi-grid>.summary-kpi-card:nth-child(3) .summary-kpi-value{-webkit-text-fill-color:transparent;background-image:linear-gradient(135deg,#3f8f6b,#5cd0a5);-webkit-background-clip:text;color:var(--status-green)!important}.summary-kpi-grid>.summary-kpi-card:nth-child(4){border-left:4px solid var(--status-blue)!important;background:linear-gradient(135deg, #4a90e20f 0%, var(--card-bg) 60%)!important}body.dark-mode .summary-kpi-grid>.summary-kpi-card:nth-child(4){background:linear-gradient(135deg,#4a90e21f 0%,#2d3748b3 85%)!important}.summary-kpi-grid>.summary-kpi-card:nth-child(4):hover{border-color:#4a90e266!important;box-shadow:0 8px 24px #4a90e21f!important}.summary-kpi-grid>.summary-kpi-card:nth-child(4) .summary-kpi-value{-webkit-text-fill-color:transparent;background-image:linear-gradient(135deg,#4a90e2,#73a9eb);-webkit-background-clip:text;color:var(--status-blue)!important}.summary-kpi-grid>.summary-kpi-card:nth-child(5){border-left:4px solid var(--status-red)!important;background:linear-gradient(135deg, #ff6b6b0f 0%, var(--card-bg) 60%)!important}body.dark-mode .summary-kpi-grid>.summary-kpi-card:nth-child(5){background:linear-gradient(135deg,#ff6b6b1f 0%,#2d3748b3 85%)!important}.summary-kpi-grid>.summary-kpi-card:nth-child(5):hover{border-color:#ff6b6b66!important;box-shadow:0 8px 24px #ff6b6b1f!important}.summary-kpi-grid>.summary-kpi-card:nth-child(5) .summary-kpi-value{-webkit-text-fill-color:transparent;background-image:linear-gradient(135deg,#ff6b6b,#ff8e8e);-webkit-background-clip:text;color:var(--status-red)!important}.summary-kpi-grid>.summary-kpi-card:nth-child(6){background:linear-gradient(135deg, #0284c70f 0%, var(--card-bg) 60%)!important;border-left:4px solid #0284c7!important}body.dark-mode .summary-kpi-grid>.summary-kpi-card:nth-child(6){background:linear-gradient(135deg,#0284c71f 0%,#2d3748b3 85%)!important}.summary-kpi-grid>.summary-kpi-card:nth-child(6):hover{border-color:#0284c766!important;box-shadow:0 8px 24px #0284c71f!important}.summary-kpi-grid>.summary-kpi-card:nth-child(6) .summary-kpi-value{-webkit-text-fill-color:transparent;background-image:linear-gradient(135deg,#0284c7,#38bdf8);-webkit-background-clip:text;color:#0284c7!important}.summary-table-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.summary-table-head{border-bottom:1px solid var(--border-color);background:var(--sidebar-bg);justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.summary-table-head h4{color:var(--text-dark);align-items:center;gap:8px;margin:0;font-size:15px;font-weight:600;display:flex}.summary-fy-badge{color:var(--primary-orange);background:var(--primary-orange-light);border-radius:20px;padding:4px 10px;font-size:12px;font-weight:600}.summary-table-wrap{overflow-x:auto}.summary-table{border-collapse:collapse;width:100%;font-size:14px}.summary-table th{text-align:left;color:var(--text-gray);background:var(--bg-color);border-bottom:1px solid var(--border-color);white-space:nowrap;padding:12px 16px;font-weight:600}.summary-table td{border-bottom:1px solid var(--border-color);color:var(--text-dark);padding:14px 16px}.summary-table tbody tr.summary-day-row{cursor:pointer;transition:background .15s}.summary-table tbody tr.summary-day-row:hover,.summary-table tbody tr.summary-day-row.is-expanded{background:var(--primary-orange-light)}.summary-table tbody tr.summary-detail-row:hover{background:0 0}.summary-day-cell{flex-wrap:wrap;align-items:center;gap:6px 8px;display:flex}.summary-expand-icon{color:var(--text-gray);flex-shrink:0;font-size:20px;transition:transform .2s}.summary-day-row.is-expanded .summary-expand-icon{color:var(--primary-orange);transform:rotate(90deg)}.summary-day-hint{color:var(--text-light);width:100%;padding-left:28px;font-size:11px;font-weight:400}.summary-day-row.is-expanded .summary-day-hint{display:none}.summary-detail-row td{border-bottom:1px solid var(--border-color);background:var(--bg-color);padding:0!important}.summary-detail-list{flex-direction:column;gap:10px;padding:12px 16px 16px 44px;display:flex}.summary-detail-item{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;gap:12px;padding:12px;display:flex}.summary-detail-order{background:var(--primary-orange-light);width:28px;height:28px;color:var(--primary-orange);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex}.summary-detail-title{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px;display:flex}.summary-detail-type{border-radius:4px;align-items:center;gap:4px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.summary-detail-extra{color:var(--status-red);background:var(--status-red-light);border-radius:4px;padding:2px 6px;font-size:11px;font-weight:600}.summary-detail-meta{color:var(--text-gray);margin-bottom:4px;font-size:12px;line-height:1.4}.summary-detail-meta i{margin-right:4px}.summary-detail-meta-row{color:var(--text-gray);flex-wrap:wrap;gap:8px 16px;font-size:12px;display:flex}.summary-detail-meta-row span{align-items:center;gap:4px;display:inline-flex}.summary-detail-meta-row .summary-detail-coordinators-list{flex-direction:column;gap:6px;width:100%;margin-top:4px;display:flex}.summary-detail-meta-row .summary-detail-coordinators-list span{align-self:flex-start}.summary-detail-segment{color:var(--status-green);margin-top:8px;font-size:11px;font-weight:600}.summary-detail-empty{color:var(--text-gray);margin:0;padding:16px 44px;font-size:13px}.summary-table .col-num{text-align:center;white-space:nowrap}.summary-day-badge{color:var(--primary-orange);background:var(--primary-orange-light);border-radius:4px;margin-right:8px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-block}.summary-date-text{font-weight:500}.summary-num{color:var(--primary-orange);font-weight:700}.summary-table tfoot tr{background:var(--primary-orange-light);font-weight:700}.summary-table tfoot td{color:var(--primary-orange);border-bottom:none;padding:16px}.summary-empty{text-align:center;background:var(--card-bg);border:1px dashed var(--border-color);border-radius:var(--radius-lg);padding:56px 24px}.summary-empty-icon{background:var(--primary-orange-light);width:64px;height:64px;color:var(--primary-orange);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 16px;font-size:32px;display:flex}.summary-empty h4{color:var(--text-dark);margin:0 0 8px;font-size:18px}.summary-empty p{color:var(--text-gray);margin:0;font-size:14px;line-height:1.5}.summary-footnote{color:var(--text-gray);text-align:center;margin-top:16px;font-size:12px;line-height:1.5}@media (width<=900px){.summary-kpi-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=560px){#planRouteModal{width:100vw;padding:24px 12px 16px;left:0}#planRouteModal .modal-container{max-width:100%}.geocode-alert-overlay,.delete-confirm-overlay{width:100vw;padding:16px;left:0}.geocode-alert-modal,.delete-confirm-modal{max-width:100%}.summary-kpi-grid{grid-template-columns:repeat(2,1fr)}}body.dark-mode .summary-kpi-card,body.dark-mode .summary-table-card,body.dark-mode .summary-empty{background:var(--card-bg);border-color:var(--border-color)}body.dark-mode .summary-table-head{background:var(--sidebar-bg)}body.dark-mode .summary-table tbody tr.summary-day-row:hover,body.dark-mode .summary-table tbody tr.summary-day-row.is-expanded{background:#2e6cb614}body.dark-mode .summary-detail-row td{background:var(--bg-color)}body.dark-mode .summary-detail-item{background:var(--card-bg);border-color:var(--border-color)}.main-content.view-route-planning .search-bar{display:none}.main-content.view-route-planning{padding-top:0}.main-content.view-route-planning .topbar{margin-bottom:0}.main-content[data-active-route=dashboard],.main-content[data-active-route=coordinators],.main-content[data-active-route=wifi_police_station_list],.main-content[data-active-route=wifi_police_station],.main-content[data-active-route=wifi_summary],.main-content[data-active-route=wifi_coordinators]{padding-top:0}.main-content[data-active-route=dashboard] .topbar,.main-content[data-active-route=coordinators] .topbar,.main-content[data-active-route=wifi_police_station_list] .topbar,.main-content[data-active-route=wifi_police_station] .topbar,.main-content[data-active-route=wifi_summary] .topbar,.main-content[data-active-route=wifi_coordinators] .topbar{margin-bottom:0}.main-content.view-route-planning .breadcrumb h2{margin-top:2px;font-size:20px}.main-content.view-summary-report .search-bar{display:none}.main-content.view-summary-report{padding-top:0}.main-content.view-summary-report .topbar{margin-bottom:0}.main-content.view-summary-report .breadcrumb h2{margin-top:2px;font-size:20px}.main-content.view-check-new-location .search-bar{display:none}.main-content.view-check-new-location{padding-top:0}.main-content.view-check-new-location .topbar{margin-bottom:20px}.main-content.view-check-new-location .breadcrumb h2{margin-top:2px;font-size:20px}.route-planning-view[hidden],.check-new-location-view[hidden]{display:none!important}.check-new-location-view:not([hidden]){flex-direction:column;flex:1;min-height:0;margin-top:0;padding:16px 24px 24px;display:flex;overflow:hidden}.check-new-location-controls{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px}.check-new-location-day-tabs-wrap{flex-direction:column;flex:100%;gap:6px;min-width:0;display:flex}.check-new-location-day-tabs-label{color:var(--text-secondary);align-items:center;gap:6px;font-size:12px;font-weight:600;display:inline-flex}.check-new-location-day-tabs-label i{color:var(--primary-orange);font-size:15px}.check-new-location-day-tabs{-webkit-overflow-scrolling:touch;background-color:var(--bg-color);border-radius:8px;flex-wrap:wrap;gap:6px;min-width:0;margin-left:0;padding:4px;display:flex;overflow-x:auto}.check-new-location-day-tabs .tab{letter-spacing:.02em;white-space:nowrap;flex-shrink:0;padding:8px 14px;font-size:13px;font-weight:700}.check-new-location-day-tabs .tab.active{background-color:var(--card-bg);color:var(--primary-orange);box-shadow:var(--shadow-sm)}body.dark-mode .check-new-location-day-tabs{background-color:#0003}body.dark-mode .check-new-location-day-tabs .tab.active{background-color:var(--card-bg);color:var(--primary-orange)}.check-new-location-search{border:1px solid var(--border-color);background:var(--card-bg);border-radius:10px;flex:0 auto;align-items:center;gap:8px;min-width:140px;max-width:240px;height:38px;padding:0 12px;display:flex}.check-new-location-search input{color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;font-size:13px}.check-new-location-export-btn{background:var(--status-green-light);color:var(--status-green);cursor:pointer;border:1px solid #3eb48940;border-radius:10px;align-items:center;gap:6px;height:38px;padding:8px 16px;font-weight:600;transition:all .2s;display:inline-flex}.check-new-location-export-btn:hover{background:var(--status-green);color:#fff;border-color:var(--status-green);transform:translateY(-1px);box-shadow:0 4px 10px #3eb48933}body.dark-mode .check-new-location-export-btn{color:#3f8f6b;background:#3eb4891f;border-color:#3eb4894d}body.dark-mode .check-new-location-export-btn:hover{background:var(--status-green);color:#fff;border-color:var(--status-green)}.check-new-location-meta{color:var(--text-secondary);border-bottom:1px solid var(--border-color);white-space:nowrap;text-overflow:ellipsis;flex-shrink:0;padding:0 16px 10px;font-size:12px;line-height:1.4;overflow:hidden}.check-new-location-meta:empty{display:none}.check-new-location-layout{flex:1;grid-template-columns:minmax(260px,340px) 1fr;gap:16px;min-height:0;display:grid;overflow:hidden}.check-new-location-list-panel{flex-direction:column;min-height:0;display:flex;overflow:hidden}.check-new-location-list-panel .card-header{border-bottom:none;padding:14px 16px 8px}.check-new-location-list-panel .card-header h3{margin:0;font-size:15px}.check-new-location-list{flex:1;min-height:0;padding:8px;overflow-y:auto}.check-new-location-list-empty{text-align:center;color:var(--text-secondary);padding:24px 16px;font-size:13px}.check-new-location-list-item{text-align:left;border:1px solid var(--border-color);background:var(--card-bg);cursor:pointer;border-radius:10px;flex-direction:row;align-items:center;gap:10px;width:100%;margin-bottom:6px;padding:12px 14px;transition:border-color .15s,background .15s;display:flex}.check-new-location-list-order{background:var(--bg-secondary);width:26px;height:26px;color:var(--text-secondary);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex}.check-new-location-list-item.is-active .check-new-location-list-order{background:var(--primary-orange);color:#fff}.check-new-location-list-body{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.check-new-location-list-saved{color:#16a34a}.check-new-location-list-item:hover{border-color:var(--primary-orange)}.check-new-location-list-item.is-active{border-color:var(--primary-orange);background:var(--primary-orange-light)}.check-new-location-list-item{transition:all .2s;border-left:4px solid #0000!important}.check-new-location-list-item.status-completed{background-color:#f0fdfa!important;border-color:#ccfbf1 #ccfbf1 #ccfbf1 #10b981!important}.check-new-location-list-item.status-completed:hover{border-color:#10b981!important}.check-new-location-list-item.status-completed.is-active{box-shadow:0 0 0 2px #10b98126;background-color:#ccfbf1!important;border-color:#10b981!important}.check-new-location-list-item.status-completed .check-new-location-list-order{color:#fff!important;background-color:#10b981!important}.check-new-location-list-item.status-pending{background-color:#f0f9ff!important;border-color:#bae6fd #bae6fd #bae6fd #3b82f6!important}.check-new-location-list-item.status-pending:hover{border-color:#3b82f6!important}.check-new-location-list-item.status-pending.is-active{box-shadow:0 0 0 2px #3b82f626;background-color:#e0f2fe!important;border-color:#3b82f6!important}.check-new-location-list-item.status-pending .check-new-location-list-order{color:#fff!important;background-color:#3b82f6!important}.check-new-location-list-item.status-missing{background-color:#fef2f2!important;border-color:#fee2e2 #fee2e2 #fee2e2 #ef4444!important}.check-new-location-list-item.status-missing:hover{border-color:#ef4444!important}.check-new-location-list-item.status-missing.is-active{box-shadow:0 0 0 2px #ef444426;background-color:#fee2e2!important;border-color:#ef4444!important}.check-new-location-list-item.status-missing .check-new-location-list-order{color:#fff!important;background-color:#ef4444!important}body.dark-mode .check-new-location-list-item.status-completed{background-color:#10b9811f!important;border-color:#10b98140 #10b98140 #10b98140 #10b981!important}body.dark-mode .check-new-location-list-item.status-completed.is-active{background-color:#10b98138!important;border-color:#10b981!important}body.dark-mode .check-new-location-list-item.status-pending{background-color:#3b82f61f!important;border-color:#3b82f640 #3b82f640 #3b82f640 #3b82f6!important}body.dark-mode .check-new-location-list-item.status-pending.is-active{background-color:#3b82f638!important;border-color:#3b82f6!important}body.dark-mode .check-new-location-list-item.status-missing{background-color:#ef44441f!important;border-color:#ef444440 #ef444440 #ef444440 #ef4444!important}body.dark-mode .check-new-location-list-item.status-missing.is-active{background-color:#ef444438!important;border-color:#ef4444!important}.check-new-location-list-name{color:var(--text-primary);font-size:14px;font-weight:600}.check-new-location-list-sub{color:var(--text-secondary);align-items:center;gap:8px;font-size:12px;display:flex}.check-new-location-detail-panel{min-height:0;overflow:auto}.check-new-location-detail{padding:20px}.check-new-location-detail-empty{min-height:280px;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex}.check-new-location-detail-empty i{opacity:.4;font-size:48px}.check-new-location-detail-title-row{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:6px;display:flex}.check-new-location-detail-head h4{margin:0;font-size:18px}.check-new-location-saved-badge{color:#16a34a;background:#16a34a1a;border-radius:999px;align-items:center;gap:4px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.check-new-location-detail-sub-row{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:8px;margin-bottom:20px;display:flex}.check-new-location-sub{color:var(--text-secondary);flex:0 auto;margin:0;font-size:13px}.check-new-location-detail-meta{color:var(--text-secondary);flex-wrap:wrap;flex:0 auto;justify-content:flex-start;align-items:center;gap:8px;margin:0;font-size:12px;display:flex}.check-new-location-map-wrap{border:1px solid var(--border-color);background:var(--card-bg);border-radius:12px;margin-top:16px;overflow:hidden}.check-new-location-map-wrap.is-hidden{display:none}.check-new-location-map{width:100%;height:240px}.check-new-location-map-legend{color:var(--text-secondary);border-top:1px solid var(--border-color);background:var(--bg-color);flex-wrap:wrap;gap:12px 20px;padding:8px 12px;font-size:12px;display:flex}.check-new-location-map-legend span{align-items:center;gap:6px;display:inline-flex}.check-new-location-legend-dot{border:2px solid #fff;border-radius:50%;width:10px;height:10px;box-shadow:0 0 0 1px #0000001f}.check-new-location-legend-dot--old{background:#64748b}.check-new-location-legend-dot--new{background:var(--primary-orange)}.check-new-location-coords-panel{grid-template-columns:1fr 1fr;align-items:stretch;gap:16px;display:grid}.coords-card{border:1px solid var(--border-color);border-radius:14px;flex-direction:column;gap:14px;min-height:0;padding:16px;display:flex}.coords-card--old{background:var(--bg-secondary)}.coords-card--new{background:linear-gradient(160deg, #2e6cb614 0%, var(--card-bg) 55%);border-color:#2e6cb666;box-shadow:0 2px 12px #2e6cb614}.coords-card-head{align-items:flex-start;gap:12px;display:flex}.coords-card-head strong{margin-bottom:2px;font-size:14px;display:block}.coords-card-head span{color:var(--text-secondary);font-size:11px;line-height:1.4}.coords-card-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:20px;display:flex}.coords-card--old .coords-card-icon{color:var(--text-secondary);background:#64748b1f}.coords-card--new .coords-card-icon{background:var(--primary-orange-light);color:var(--primary-orange)}.coords-pair{grid-template-columns:1fr 1fr;gap:12px;display:grid}.coord-field{flex-direction:column;gap:2px;display:flex}.coord-field-label{color:var(--text-primary);letter-spacing:.02em;font-size:13px;font-weight:700}.coord-field-hint{color:var(--text-secondary);margin-bottom:6px;font-size:11px}.coord-value{border:1px solid var(--border-color);background:var(--card-bg);color:var(--text-primary);word-break:break-all;border-radius:8px;padding:10px 12px;font-family:ui-monospace,Cascadia Code,Consolas,monospace;font-size:13px}.coord-value--readonly{background:#00000008}.coord-value-input{background:var(--card-bg);width:100%;color:var(--text-primary);border:1px solid #2e6cb659;border-radius:8px;outline:none;padding:10px 12px;font-family:ui-monospace,Cascadia Code,Consolas,monospace;font-size:13px}.coord-value-input:focus{border-color:var(--primary-orange);box-shadow:0 0 0 2px #2e6cb633}.check-new-location-action-row{flex-wrap:wrap;gap:10px;margin-top:4px;display:flex}.check-new-location-action-row .btn{flex:1;justify-content:center;min-width:140px}.check-new-location-save-btn{background:var(--status-green);border:1px solid var(--status-green);color:#fff;box-shadow:0 4px 6px #3eb48940}.check-new-location-save-btn:hover{color:#fff;background:#359a75;border-color:#359a75;transform:translateY(-1px)}.check-new-location-save-btn:disabled{color:#fff;box-shadow:none;cursor:not-allowed;opacity:.85;background:#94a3b8;border-color:#94a3b8;transform:none}body.dark-mode .check-new-location-save-btn{background:var(--status-green);border-color:var(--status-green);color:#fff}body.dark-mode .check-new-location-save-btn:hover{background:#4cc99a;border-color:#4cc99a}.check-new-location-gps-hint{color:var(--text-secondary);margin:8px 0 0;font-size:12px}.check-new-location-gps-hint.is-loading{color:var(--primary-orange)}.check-new-location-gps-hint.is-error{color:#dc2626}.check-new-location-gps-hint.is-success{color:#16a34a}.check-new-location-compare{justify-content:center;width:100%;margin-top:10px;display:flex}.check-new-location-compare-inner{background:var(--primary-orange-light);border:1px solid #2e6cb640;border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px 14px;max-width:100%;padding:8px 14px;display:inline-flex}.check-new-location-compare-label{color:var(--text-secondary);white-space:nowrap;align-items:center;gap:5px;font-size:12px;font-weight:600;display:inline-flex}.check-new-location-compare-label i{color:var(--primary-orange);font-size:14px}.check-new-location-compare-value{color:var(--primary-orange);white-space:nowrap;font-size:18px;font-weight:800;line-height:1.2}.check-new-location-gps-acc{color:var(--text-secondary);white-space:nowrap;font-size:11px;font-weight:500}@media (width<=480px){.check-new-location-compare-inner{justify-content:space-between;width:100%}}@media (width<=768px){.check-new-location-view{padding:12px 12px 16px}.check-new-location-day-tabs{flex-wrap:nowrap}.check-new-location-layout,.check-new-location-coords-panel{grid-template-columns:1fr}.check-new-location-map{height:200px}.coords-pair{grid-template-columns:1fr 1fr;gap:8px}.check-new-location-action-row .btn{flex:100%}.check-new-location-meta{white-space:normal}}.route-planning-view:not([hidden]){flex-direction:column;flex:1;min-height:0;margin-top:-8px;padding:0 24px 24px;display:flex;overflow:hidden}.route-planning-hero{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;padding:6px 0 10px;display:flex}.route-planning-hero-text{align-items:flex-start;gap:14px;min-width:0;display:flex}.route-planning-icon{color:#3b82f6;background:#3b82f61f;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:19px;display:flex}.route-planning-hero h3{margin:0 0 4px;font-size:20px;font-weight:700}.route-planning-hero p{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.5}.route-planning-stats{flex-wrap:wrap;align-items:center;gap:12px;margin-top:6px;display:flex}.route-planning-stat{cursor:default;-webkit-backdrop-filter:blur(10px);background:#fffc;border:1px solid #edf2f7e6;border-radius:16px;flex-direction:column;justify-content:center;gap:4px;min-width:110px;padding:12px 18px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden;box-shadow:0 4px 12px #00000005}body.dark-mode .route-planning-stat{background:#2d374899;border-color:#4a556880;box-shadow:0 4px 12px #00000026}.route-planning-stat:hover{transform:translateY(-4px)scale(1.02)}.route-planning-stat-value{font-size:22px;font-weight:800;line-height:1.1;font-family:var(--font-family);-webkit-background-clip:text;background-clip:text}.route-planning-stat-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:11px;font-weight:700}.route-planning-stat:first-child{border-left:4px solid var(--primary-orange);background:linear-gradient(135deg,#2e6cb612 0%,#fffc 60%)}body.dark-mode .route-planning-stat:first-child{background:linear-gradient(135deg,#2e6cb626 0%,#2d374899 80%)}.route-planning-stat:first-child .route-planning-stat-value{color:var(--primary-orange);-webkit-text-fill-color:transparent;background-image:linear-gradient(135deg,#2e6cb6,#5e9be0);-webkit-background-clip:text}.route-planning-stat:first-child:hover{border-color:#2e6cb680;box-shadow:0 8px 20px #2e6cb61f}.route-planning-stat:nth-child(2){border-left:4px solid var(--status-green);background:linear-gradient(135deg,#3eb48912 0%,#fffc 60%)}body.dark-mode .route-planning-stat:nth-child(2){background:linear-gradient(135deg,#3eb48926 0%,#2d374899 80%)}.route-planning-stat:nth-child(2) .route-planning-stat-value{color:var(--status-green);-webkit-text-fill-color:transparent;background-image:linear-gradient(135deg,#3f8f6b,#5cd0a5);-webkit-background-clip:text}.route-planning-stat:nth-child(2):hover{border-color:#3eb48980;box-shadow:0 8px 20px #3eb4891f}.route-planning-stat:nth-child(3){border-left:4px solid var(--status-blue);background:linear-gradient(135deg,#4a90e212 0%,#fffc 60%)}body.dark-mode .route-planning-stat:nth-child(3){background:linear-gradient(135deg,#4a90e226 0%,#2d374899 80%)}.route-planning-stat:nth-child(3) .route-planning-stat-value{color:var(--status-blue);-webkit-text-fill-color:transparent;background-image:linear-gradient(135deg,#4a90e2,#73a9eb);-webkit-background-clip:text}.route-planning-stat:nth-child(3):hover{border-color:#4a90e280;box-shadow:0 8px 20px #4a90e21f}.route-planning-toolbar{background:var(--card-bg);border:1px solid var(--border-color);border-radius:14px;flex-wrap:wrap;align-items:flex-end;gap:12px;margin-bottom:10px;padding:10px 12px;display:flex}.route-planning-search{background:var(--bg-color);border:1px solid var(--border-color);border-radius:10px;flex:220px;align-items:center;gap:8px;padding:8px 12px;display:flex}.route-planning-search i{color:var(--text-secondary)}.route-planning-search input{font:inherit;color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;min-width:0}.route-planning-meta{color:var(--text-secondary);margin-left:auto;font-size:12px}.route-planning-split-layout{flex:1;gap:24px;min-height:0;margin-top:8px;display:flex;overflow:hidden}.route-planning-days-sidebar{flex-direction:column;flex-shrink:0;gap:12px;width:310px;padding-right:6px;display:flex;overflow-y:auto}.route-planning-day-card{background:var(--card-bg);border:1px solid var(--border-color);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:14px;outline:none;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.route-planning-day-card:hover{border-color:color-mix(in srgb, #3b82f6 50%, var(--border-color));background:color-mix(in srgb, #3b82f6 3%, var(--card-bg));transform:translate(3px)}.route-planning-day-card.active{background:linear-gradient(135deg, color-mix(in srgb, #3b82f6 10%, var(--card-bg)) 0%, var(--card-bg) 100%);border-color:#3b82f6;transform:translate(5px);box-shadow:0 4px 12px #3b82f614}.route-planning-day-card.active .day-card-badge{color:#fff;background:#3b82f6;border-color:#3b82f6}.route-planning-day-card.active .day-card-arrow{color:#3b82f6;opacity:1;transform:translate(2px)}.route-planning-details-panel{background:var(--card-bg);border:1px solid var(--border-color);min-width:0;box-shadow:var(--shadow-sm);scroll-behavior:smooth;border-radius:16px;flex-direction:column;flex:1;gap:20px;padding:24px;display:flex;overflow-y:auto}.route-planning-detail-header{border-bottom:1px solid var(--border-color);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding-bottom:16px;display:flex}.route-planning-strip{background:var(--bg-color);border:1px solid var(--border-color);border-radius:16px;flex-direction:column;gap:12px;padding:16px 20px;display:flex}.route-planning-strip-label{color:var(--text-gray);text-transform:uppercase;letter-spacing:.5px;align-items:center;gap:6px;font-size:11px;font-weight:700;display:inline-flex}.route-planning-strip-nodes{flex-wrap:wrap;align-items:center;gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.route-planning-strip-arrow{color:var(--text-gray);opacity:.5;font-size:16px;line-height:1}.route-planning-strip-node{cursor:grab;-webkit-user-select:none;user-select:none;-webkit-user-drag:element;transition:transform .2s,opacity .2s;display:inline-flex;position:relative}.route-planning-strip-node:active{cursor:grabbing}.route-planning-strip-node.is-dragging{opacity:.45}.route-planning-strip-node.drag-over-before:before{content:"";z-index:10;background-color:#3b82f6;border-radius:2px;width:4px;position:absolute;top:0;bottom:0;left:-6px;box-shadow:0 0 8px #3b82f699}.route-planning-strip-node.drag-over-after:after{content:"";z-index:10;background-color:#3b82f6;border-radius:2px;width:4px;position:absolute;top:0;bottom:0;right:-6px;box-shadow:0 0 8px #3b82f699}.route-planning-point-chip{background:var(--chip-bg,var(--card-bg));border:1px solid color-mix(in srgb, var(--chip-color,var(--border-color)) 24%, var(--border-color));max-width:100%;box-shadow:var(--shadow-sm);border-radius:12px;flex-direction:column;gap:2px;padding:8px 12px;transition:all .2s;display:inline-flex}.route-planning-point-chip:hover{border-color:color-mix(in srgb, var(--chip-color,#3b82f6) 60%, transparent);box-shadow:0 4px 8px #0000000a}.route-planning-strip-node.is-target .route-planning-point-chip{box-shadow:0 0 0 1px color-mix(in srgb, var(--chip-color,#3b82f6) 35%, transparent);border-color:var(--chip-color,#3b82f6)}.route-planning-point-chip-type{color:var(--chip-color,var(--text-gray));align-items:center;gap:5px;font-size:11px;font-weight:700;line-height:1.2;display:inline-flex}.route-planning-point-chip-type i,.route-planning-point-chip-type .rest-stop-marker-icons{font-size:13px}.route-planning-strip-drag-icon{color:var(--chip-color,#94a3b8);opacity:.55;cursor:grab;flex-shrink:0;margin-right:2px;font-size:14px;transition:opacity .2s,transform .2s;display:inline-block}.route-planning-strip-node:hover .route-planning-strip-drag-icon{opacity:1}.route-planning-strip-node:active .route-planning-strip-drag-icon{cursor:grabbing;transform:scale(1.1)}.route-planning-point-chip-name{color:var(--text-dark);word-break:break-word;font-size:12px;font-weight:600;line-height:1.35}.route-planning-edit-btn{padding:6px 10px;font-size:12px;transition:all .2s;background:var(--gemini-gradient)!important;color:#fff!important;border:none!important}.route-planning-edit-btn i{color:#fff!important}.route-planning-edit-btn:hover{filter:brightness(1.05)!important;color:#fff!important;transform:translateY(-1px)!important}.route-planning-edit-btn:hover i{color:#fff!important}.route-planning-save-status{margin-left:8px;font-size:11px;font-weight:600}.route-planning-save-status.is-saving{color:var(--text-secondary)}.route-planning-save-status.is-success{color:var(--status-green)}.route-planning-save-status.is-error{color:var(--status-red)}.route-planning-list{flex-direction:column;gap:8px;display:flex}.route-planning-next-arrow{color:var(--text-light,#94a3b8);justify-content:center;align-items:center;margin:2px 0;font-size:20px;line-height:1;display:flex}.route-planning-row{background:color-mix(in srgb, var(--chip-color,var(--border-color)) 14%, var(--card-bg));border:1px solid color-mix(in srgb, var(--chip-color,var(--border-color)) 28%, var(--border-color));border-left:5px solid var(--chip-color,#3b82f6);border-radius:16px;grid-template-columns:28px 32px 1fr;align-items:flex-start;gap:12px;padding:16px 20px;transition:box-shadow .15s,opacity .15s,border-color .2s;display:grid;position:relative}.route-planning-row.is-dragging{opacity:.55;box-shadow:var(--shadow-md)}.route-planning-row.drag-over-before:before{content:"";z-index:10;background-color:#3b82f6;border-radius:2px;height:4px;position:absolute;top:-6px;left:0;right:0;box-shadow:0 0 8px #3b82f699}.route-planning-row.drag-over-after:after{content:"";z-index:10;background-color:#3b82f6;border-radius:2px;height:4px;position:absolute;bottom:-6px;left:0;right:0;box-shadow:0 0 8px #3b82f699}.route-planning-drag{width:28px;height:28px;color:var(--text-secondary);cursor:grab;touch-action:none;border-radius:8px;justify-content:center;align-items:center;display:flex}.route-planning-drag:active{cursor:grabbing}.route-planning-body{background:0 0;border:none;border-radius:0;padding:0}.route-planning-order{background:color-mix(in srgb, var(--chip-color,var(--border-color)) 12%, var(--card-bg));border:1px solid color-mix(in srgb, var(--chip-color,var(--border-color)) 30%, var(--border-color));width:32px;height:32px;color:var(--chip-color,var(--text-secondary));border-radius:8px;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex}.route-planning-row-head{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px;display:flex}.route-planning-type{background:var(--chip-bg,var(--bg-color));color:var(--chip-color,var(--text-secondary));border-radius:999px;align-items:center;gap:5px;padding:3px 8px;font-size:11px;font-weight:700;display:inline-flex}.route-planning-name{color:var(--text-primary);font-size:14px;font-weight:700}.route-planning-extra-tag{color:#dc2626;background:#ef44441f;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.route-planning-meta{color:var(--text-secondary);align-items:center;gap:6px;margin-bottom:6px;font-size:12px;display:flex}.route-planning-vpn-summary{color:#7c3aed;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:6px;font-size:12px;display:flex}.route-planning-vpn-total{font-weight:700}.route-planning-meta-grid{color:var(--text-secondary);flex-wrap:wrap;gap:8px 14px;font-size:12px;display:flex}.route-planning-meta-grid span{align-items:flex-start;gap:4px;display:inline-flex}.route-planning-meta-grid span.route-planning-highlight{border-radius:6px;align-items:center;gap:4px;padding:2px 6px;font-weight:600;display:inline-flex;box-shadow:0 2px 4px #0000000d;color:#2d3748!important;background-color:#ffd54f!important}body.dark-mode .route-planning-meta-grid span.route-planning-highlight{box-shadow:0 2px 8px #ffd54f40;color:#1a202c!important;background-color:#ffd54f!important}.route-planning-meta-grid .route-planning-coordinators-list{flex-direction:column;gap:8px;width:100%;margin-top:6px;display:flex}.route-planning-coordinator-row{flex-wrap:wrap;align-items:center;gap:8px;width:100%;display:flex}.route-planning-coord-badge{-webkit-user-select:none;user-select:none;border-radius:6px;align-items:center;gap:6px;padding:5px 10px;font-size:11px;font-weight:600;transition:all .2s;display:inline-flex;box-shadow:0 1px 2px #00000008}.route-planning-coord-badge:hover{transform:translateY(-1px);box-shadow:0 4px 8px #0000000d}.route-planning-coord-badge i{font-size:12px;margin-top:0!important}.route-planning-coord-badge.name-badge{background:var(--primary-orange-light);color:var(--primary-orange-hover);border:1px solid #2e6cb633}.route-planning-coord-badge.name-badge i{color:var(--primary-orange)}.route-planning-coord-badge.phone-badge{background:var(--status-blue-light);color:var(--status-blue);border:1px solid #4a90e233}.route-planning-coord-badge.phone-badge i{color:var(--status-blue)}body.dark-mode .route-planning-coord-badge.name-badge{color:#ffa46b;background:#2e6cb626;border-color:#2e6cb659}body.dark-mode .route-planning-coord-badge.name-badge i{color:#ffa46b}body.dark-mode .route-planning-coord-badge.phone-badge{color:#7ab2f3;background:#4a90e226;border-color:#4a90e259}body.dark-mode .route-planning-coord-badge.phone-badge i{color:#7ab2f3}body.dark-mode .route-planning-day-head{background:linear-gradient(135deg, #3b82f61f 0%, var(--card-bg) 70%)}body.dark-mode .route-planning-day-toggle{color:var(--text-dark)}body.dark-mode .route-planning-day-title,body.dark-mode .route-planning-day-date,body.dark-mode .route-planning-day-start,body.dark-mode .route-planning-name{color:var(--text-primary)}body.dark-mode .route-planning-day-summary,body.dark-mode .route-planning-meta,body.dark-mode .route-planning-meta-grid,body.dark-mode .route-planning-vpn-summary{color:var(--text-secondary)}@media (width<=768px){.route-planning-view{padding:0 12px 16px}.route-planning-toolbar{flex-direction:column;align-items:stretch}.route-planning-search{flex:auto}.route-planning-meta{margin-left:0}.route-planning-day-head{flex-direction:column}.route-planning-day-actions{justify-content:space-between;width:100%;margin-left:0}.route-planning-row{grid-template-rows:auto auto;grid-template-columns:24px 1fr}.route-planning-order{grid-column:2;width:24px;height:24px;font-size:11px}.route-planning-body{grid-column:1/-1}}.fiscal-year-field{flex-direction:column;flex:none;gap:6px;min-width:140px;display:flex}.inspection-round-field{flex:0 0 100px;min-width:88px}.inspection-round-field .fiscal-year-select,.inspection-round-field select{min-width:88px}.route-planning-toolbar .route-toolbar-round-field{flex-direction:row;flex:none;align-items:center;gap:8px;min-width:0}.route-planning-toolbar .route-toolbar-round-field .plan-date-fiscal-label{white-space:nowrap;min-height:auto;margin:0}.route-planning-toolbar .route-toolbar-round-field select{width:auto;min-width:72px}.dashboard-controls .dashboard-controls-inline-field,.dashboard-controls .inspection-round-field,.dashboard-controls .dashboard-round-field{flex-direction:row;flex:none;align-items:center;gap:8px;min-width:0}.dashboard-controls .dashboard-controls-inline-field .plan-date-fiscal-label,.dashboard-controls .dashboard-round-field .plan-date-fiscal-label,.dashboard-controls .inspection-round-field .plan-date-fiscal-label{white-space:nowrap;margin:0}.dashboard-controls .dashboard-fiscal-field .fiscal-year-select,.dashboard-controls .dashboard-fiscal-field select{width:auto;min-width:148px}.dashboard-controls .dashboard-controls-inline-field .fiscal-year-select,.dashboard-controls .dashboard-controls-inline-field select,.dashboard-controls .dashboard-round-field .fiscal-year-select,.dashboard-controls .dashboard-round-field select,.dashboard-controls .inspection-round-field .fiscal-year-select,.dashboard-controls .inspection-round-field select{width:auto;min-width:72px}.dashboard-controls .inspection-round-field,.dashboard-controls .dashboard-round-field,.dashboard-controls .dashboard-fiscal-field{flex-shrink:0}.dashboard-controls .date-tabs{margin-left:0}.settings-inspection-round-select{flex-shrink:0;width:auto;min-width:88px}.settings-inspection-round-card{grid-column:1/-1}.settings-inspection-round-body{flex-direction:column;gap:14px;display:flex}.settings-inspection-round-active{background:var(--primary-orange-light);border:1px solid color-mix(in srgb, var(--primary-orange) 22%, transparent);border-radius:999px;align-self:flex-start;align-items:center;gap:10px;padding:8px 12px;display:inline-flex}.settings-inspection-round-active-label{color:var(--text-gray);font-size:12px;font-weight:600}.settings-inspection-round-active-badge{color:var(--primary-orange);font-size:13px;font-weight:700}.settings-inspection-round-hint{color:var(--text-gray);margin:0;font-size:13px;line-height:1.55}.settings-inspection-round-picker{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.settings-map-provider-picker{grid-template-columns:repeat(3,minmax(0,1fr))}.settings-inspection-fy-label{color:var(--text-gray);font-size:11px;font-weight:600}.settings-inspection-fy .fiscal-year-select{width:100%;height:32px}.settings-subdivider{background:var(--border-color);height:1px;margin:20px 0}.settings-card-subheader{margin-top:0}.settings-vpn-combined{grid-column:1/-1}.settings-list{flex-direction:column;display:flex}.settings-list-select{flex-shrink:0;width:110px;height:32px;font-size:13px}.settings-card.settings-vpn-combined{background:linear-gradient(180deg, color-mix(in srgb, #8b5cf6 16%, var(--card-bg)), color-mix(in srgb, #8b5cf6 7%, var(--card-bg)));border-color:color-mix(in srgb, #8b5cf6 34%, var(--border-color))}.settings-card.settings-map-provider-card[data-map-scope=wifi],.settings-card.settings-wifi-area-card{background:linear-gradient(180deg, color-mix(in srgb, #0ea5e9 16%, var(--card-bg)), color-mix(in srgb, #0ea5e9 7%, var(--card-bg)));border-color:color-mix(in srgb, #0ea5e9 34%, var(--border-color))}.settings-profile-card,.settings-card-danger{background:linear-gradient(180deg, color-mix(in srgb, var(--text-gray) 10%, var(--card-bg)), color-mix(in srgb, var(--text-gray) 4%, var(--card-bg)))}.settings-vpn-grid{grid-template-columns:1fr 1fr;display:grid}.settings-vpn-side{flex-direction:column;gap:14px;min-width:0;display:flex}.settings-vpn-side+.settings-vpn-side{border-left:1px solid var(--border-color);margin-left:24px;padding-left:24px}.settings-vpn-side-head{letter-spacing:.02em;text-transform:uppercase;color:var(--text-gray);align-items:center;gap:6px;font-size:12px;font-weight:700;display:flex}.settings-vpn-side-head i{color:#8b5cf6;font-size:15px}.settings-field{flex-direction:column;gap:6px;min-width:0;display:flex}.settings-field>label{color:var(--text-dark);font-size:12.5px;font-weight:600}.settings-field-note{color:var(--text-gray);font-size:11px;font-weight:500}.settings-vpn-side-foot{justify-content:flex-end;align-items:center;gap:10px;margin-top:auto;padding-top:4px;display:flex}.settings-vpn-side-foot .settings-inspection-round-status{margin-right:auto;font-size:12px}@media (width<=640px){.settings-vpn-grid{grid-template-columns:1fr}.settings-vpn-side+.settings-vpn-side{border-left:none;border-top:1px solid var(--border-color);margin-top:16px;margin-left:0;padding-top:16px;padding-left:0}}.settings-list-actions .settings-inspection-round-status{margin-right:auto}.settings-list-actions .settings-inspection-round-active-badge{font-size:12px}.settings-seg{background:var(--bg-color);border:1px solid var(--border-color);border-radius:9px;flex-shrink:0;gap:2px;padding:2px;display:inline-flex}.settings-seg .settings-inspection-round-option{min-width:40px;color:var(--text-gray);box-shadow:none;background:0 0;border:none;border-radius:7px;flex-direction:row;justify-content:center;align-items:center;gap:0;padding:6px 14px;font-size:13px;font-weight:600;transition:background-color .15s,color .15s}.settings-seg .settings-inspection-round-option:hover{background:color-mix(in srgb, var(--text-gray) 9%, transparent);border:none}.settings-seg .settings-inspection-round-option.is-selected{background:var(--card-bg);color:var(--text-dark);border:none;box-shadow:0 1px 3px #00000024}.settings-inspection-round-picker:not(.settings-map-provider-picker).settings-seg .settings-inspection-round-option.is-selected{background:var(--primary-orange);color:#fff;box-shadow:0 1px 4px color-mix(in srgb, var(--primary-orange) 45%, transparent)}.settings-seg .settings-inspection-round-option:disabled,.settings-seg .settings-inspection-round-option.is-disabled{opacity:.5}.settings-seg .settings-inspection-round-option i{vertical-align:-1px;margin-right:5px;font-size:15px}.settings-seg .settings-map-provider-option[data-provider=longdo].is-selected i{color:#16a34a}.settings-seg .settings-map-provider-option[data-provider=osm].is-selected i{color:#7ebc6f}@media (width<=900px){.settings-map-provider-picker{grid-template-columns:1fr}}#map.leaflet-container,.check-new-location-map.leaflet-container{z-index:0;font-family:inherit}.osm-html-marker-wrap{background:0 0!important;border:none!important;width:max-content!important;height:auto!important;overflow:visible!important}.map-route-segment-label{box-sizing:border-box;color:#2d3748;text-align:center;white-space:nowrap;pointer-events:none;background:#fffffff5;border:1px solid #2e6cb68c;border-radius:8px;min-width:108px;padding:6px 16px;font-size:11px;font-weight:700;line-height:1.45;display:none;box-shadow:0 2px 6px #0000002e}.map-route-segment-label.is-route-segment-label-visible,.map-route-segment-label.is-route-segment-label-visible.map-walking-segment-label{display:block}.map-route-segment-label.is-route-segment-label-visible.map-walking-segment-label{text-align:left;border-color:#3eb489bf;flex-wrap:nowrap;justify-content:center;align-items:center;gap:8px;min-width:140px;padding:6px 16px;display:flex}.map-route-segment-label__distance{color:#2e6cb6;white-space:nowrap}.map-walking-segment-label .map-route-segment-label__distance{color:#3f8f6b}.map-route-segment-label__duration{color:#718096;white-space:nowrap;font-size:10px;font-weight:600}.map-route-segment-label__walk-icon{color:#3f8f6b;flex-shrink:0;font-size:15px}body.dark-mode .map-route-segment-label{color:#e2e8f0;background:#1e293bf0;border-color:#94a3b859}.settings-inspection-round-option{border:2px solid var(--border-color);background:var(--bg-color);cursor:pointer;text-align:left;border-radius:14px;flex-direction:column;align-items:flex-start;gap:6px;padding:16px;font-family:inherit;transition:border-color .15s,box-shadow .15s,background-color .15s,transform .12s;display:flex}.settings-inspection-round-option:hover{border-color:color-mix(in srgb, var(--primary-orange) 35%, var(--border-color));background:color-mix(in srgb, var(--primary-orange-light) 45%, var(--bg-color))}.settings-inspection-round-option:disabled,.settings-inspection-round-option.is-disabled{opacity:.56;cursor:not-allowed;transform:none}.settings-inspection-round-option:disabled:hover,.settings-inspection-round-option.is-disabled:hover{border-color:var(--border-color);background:var(--bg-color);box-shadow:none}.settings-inspection-round-option.is-selected{border-color:var(--primary-orange);background:var(--primary-orange-light);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary-orange) 16%, transparent)}.settings-inspection-round-option-icon{background:var(--card-bg);width:36px;height:36px;color:var(--primary-orange);border-radius:10px;justify-content:center;align-items:center;font-size:18px;font-weight:700;display:flex}.settings-inspection-round-option.is-selected .settings-inspection-round-option-icon{background:var(--primary-orange);color:#fff}.settings-inspection-round-option-title{color:var(--text-dark);font-size:15px;font-weight:700}.settings-inspection-round-option-desc{color:var(--text-gray);font-size:12px;line-height:1.4}.settings-inspection-round-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:4px;display:flex}.settings-inspection-round-status{color:var(--text-gray);font-size:13px;font-weight:600}.settings-inspection-round-status.is-success{color:var(--status-green)}.settings-inspection-round-status.is-error{color:var(--status-red)}.settings-inspection-round-save-btn{min-width:120px;margin-left:auto}.settings-inspection-round-save-btn.is-dirty:not(:disabled){box-shadow:0 0 0 3px color-mix(in srgb, var(--primary-orange) 18%, transparent)}.settings-card-icon-orange{background:var(--primary-orange-light);color:var(--primary-orange)}.fiscal-year-field .plan-date-fiscal-label{min-height:auto;color:var(--primary-orange);font-size:13px;font-weight:600;line-height:1.3}.fiscal-year-select,.fiscal-year-field select{border:1px solid var(--border-color);background-color:var(--card-bg);width:100%;min-width:140px;color:var(--text-dark);box-sizing:border-box;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%232E6CB6' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:16px;border-radius:8px;height:42px;padding:10px 36px 10px 12px;font-family:inherit;font-size:14px;font-weight:600;transition:border-color .15s,box-shadow .15s}.fiscal-year-select:hover,.fiscal-year-field select:hover{border-color:color-mix(in srgb, var(--primary-orange) 40%, var(--border-color))}.fiscal-year-select:focus,.fiscal-year-field select:focus{border-color:var(--primary-orange);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary-orange) 18%, transparent);outline:none}body.dark-mode .fiscal-year-select,body.dark-mode .fiscal-year-field select{background-color:var(--card-bg);border-color:var(--border-color);color:var(--text-dark)}body.dark-mode .fiscal-year-select:hover,body.dark-mode .fiscal-year-field select:hover{border-color:color-mix(in srgb, var(--primary-orange) 45%, var(--border-color))}.plan-date-fiscal-label{color:var(--primary-orange);align-items:center;gap:6px;min-height:36px;font-size:13px;font-weight:600;line-height:1.3;display:flex}.modal-plan-toolbar{border-bottom:1px solid var(--border-color);background:var(--card-bg);padding:16px 24px 12px}.modal-plan-toolbar-row{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.modal-plan-top-row{flex-flow:row;align-items:center;gap:8px;width:100%;margin-bottom:8px}.modal-toolbar-item{flex-direction:row;flex:none;align-items:center;gap:6px;min-width:0;display:flex}.modal-toolbar-item-date{flex:0 auto;min-width:0;max-width:240px}.modal-toolbar-label-date{font-size:11px}.modal-toolbar-label{color:var(--primary-orange);white-space:nowrap;flex-shrink:0;font-size:12px;font-weight:600;line-height:1.2}.modal-toolbar-select,.modal-toolbar-date-input{box-sizing:border-box;border:1px solid var(--border-color);background-color:var(--card-bg);height:36px;color:var(--text-dark);border-radius:8px;font-family:inherit;font-size:13px;font-weight:600;transition:border-color .15s,box-shadow .15s}.modal-toolbar-select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%232E6CB6' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;background-size:14px;padding:0 28px 0 10px}.modal-toolbar-select-fy{width:84px;min-width:84px}.modal-toolbar-select-round{background-position:right 6px center;width:52px;min-width:52px;padding-right:24px}.modal-toolbar-select:hover,.modal-toolbar-date-input:hover{border-color:color-mix(in srgb, var(--primary-orange) 40%, var(--border-color))}.modal-toolbar-select:focus,.modal-toolbar-date-input:focus{border-color:var(--primary-orange);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary-orange) 18%, transparent);outline:none}.modal-toolbar-date-controls{flex:auto;align-items:center;gap:4px;min-width:0;display:flex}.modal-toolbar-date-input{cursor:pointer;flex:auto;min-width:0;padding:0 8px}.modal-toolbar-icon-btn{flex:none;justify-content:center;width:36px;height:36px;padding:0}body.dark-mode .modal-toolbar-select,body.dark-mode .modal-toolbar-date-input{background-color:var(--card-bg);border-color:var(--border-color);color:var(--text-dark)}.modal-plan-tabs-row{flex-direction:column;align-items:stretch;gap:8px}.modal-date-tabs{flex-wrap:wrap;max-width:100%;margin-left:0}.modal-plan-add-actions{flex-wrap:wrap;flex:1 1 0;align-items:stretch;gap:6px;min-width:0;display:flex}.modal-plan-add-actions .btn,.modal-plan-add-actions .modal-plan-add-btn{white-space:nowrap;flex:none;justify-content:center;gap:4px;min-width:0;height:36px;padding:0 12px;font-size:12px;font-weight:600}.modal-plan-add-actions .modal-plan-add-btn i{font-size:13px}.modal-plan-add-actions .rest-stop-icon-pair{gap:1px}.modal-plan-add-actions .rest-stop-icon-pair i{font-size:12px}.modal-date-tabs-sub{color:var(--text-gray);text-transform:uppercase;letter-spacing:.02em;font-size:12px;font-weight:600}.modal-date-tabs .tab.tab-date{flex-direction:column;justify-content:center;align-items:center;gap:3px;min-width:72px;min-height:48px;padding:6px 12px 7px;line-height:1.2;display:inline-flex}.modal-date-tabs .tab.tab-date .tab-date-sub{color:var(--text-gray);opacity:1;white-space:nowrap;font-size:11px;font-weight:600;display:block}.modal-date-tabs .tab.tab-date.active .tab-date-sub,body.dark-mode .modal-date-tabs .tab.tab-date.active .tab-date-sub{color:var(--primary-orange)}body.dark-mode .modal-plan-toolbar{background:var(--card-bg);border-color:var(--border-color)}@media (width<=900px){.modal-plan-top-row{flex-wrap:wrap;gap:6px}.modal-toolbar-item-date{flex:100%;max-width:none}.modal-plan-add-actions{flex-wrap:nowrap;flex:100%}}@media (width<=640px){.modal-plan-top-row{flex-direction:column;align-items:stretch}.modal-toolbar-item,.modal-toolbar-item-date{flex:100%;max-width:none}.modal-plan-add-actions{flex-wrap:wrap;flex:100%}.modal-plan-add-actions .btn,.modal-plan-add-actions .modal-plan-add-btn{flex:calc(50% - 3px)}}.geocode-alert-overlay,.delete-confirm-overlay{z-index:10060;left:var(--sidebar-offset);width:calc(100vw - var(--sidebar-offset));box-sizing:border-box;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#0f172a73;justify-content:center;align-items:center;padding:24px}.geocode-alert-overlay.active .geocode-alert-modal,.delete-confirm-overlay.active .delete-confirm-modal{transform:translateY(0)}.geocode-alert-modal{max-width:min(420px, calc(100vw - var(--sidebar-offset) - 48px));text-align:center;border:1px solid var(--border-color);width:100%;margin:auto;padding:28px 28px 24px}.geocode-alert-modal[data-tone=warn] .geocode-alert-icon-ring{color:var(--primary-orange);background:linear-gradient(145deg,#fff7ed 0%,#ffedd5 100%);box-shadow:0 8px 24px #2e6cb62e}.geocode-alert-modal[data-tone=error] .geocode-alert-icon-ring{color:var(--status-red);background:linear-gradient(145deg,#fef2f2 0%,#fee2e2 100%);box-shadow:0 8px 24px #ff6b6b2e}.geocode-alert-modal[data-tone=info] .geocode-alert-icon-ring{color:var(--status-blue);background:linear-gradient(145deg,#eff6ff 0%,#dbeafe 100%);box-shadow:0 8px 24px #4a90e229}.geocode-alert-icon-wrap{justify-content:center;margin-bottom:16px;display:flex}.geocode-alert-icon-ring{border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;font-size:34px;line-height:1;display:inline-flex;position:relative}.geocode-alert-icon-badge{background:var(--card-bg);width:28px;height:28px;color:inherit;border:2px solid;border-radius:50%;justify-content:center;align-items:center;font-size:14px;display:inline-flex;position:absolute;bottom:-2px;right:-2px;box-shadow:0 2px 6px #00000014}.geocode-alert-title{color:var(--text-dark);margin:0 0 8px;font-size:20px;font-weight:700;line-height:1.35}.geocode-alert-message{color:var(--text-gray);margin:0 0 16px;font-size:14px;line-height:1.55}.geocode-alert-keyword{background:var(--bg-color);border:1px dashed #fed7aa;border-radius:10px;flex-direction:column;align-items:center;gap:6px;margin-bottom:16px;padding:10px 14px;display:flex}.geocode-alert-keyword[hidden]{display:none!important}.geocode-alert-keyword-label{letter-spacing:.04em;text-transform:uppercase;color:var(--text-light);align-items:center;gap:5px;font-size:11px;font-weight:700;display:inline-flex}.geocode-alert-keyword-text{color:var(--text-dark);word-break:break-word;font-size:15px;font-weight:600}.geocode-alert-tips{text-align:left;flex-direction:column;gap:10px;margin:0 0 20px;padding:0;list-style:none;display:flex}.geocode-alert-tips[hidden]{display:none!important}.geocode-alert-tips li{color:var(--text-dark);background:#2e6cb60f;border:1px solid #2e6cb61f;border-radius:10px;align-items:flex-start;gap:10px;padding:10px 12px;font-size:13px;line-height:1.45;display:flex}.geocode-alert-tips li i{color:var(--primary-orange);flex:none;margin-top:2px;font-size:16px}.geocode-alert-btn{border-radius:10px;justify-content:center;width:100%;height:44px;font-size:15px;font-weight:600}body.dark-mode .geocode-alert-overlay{background-color:#0000009e}body.dark-mode .geocode-alert-modal[data-tone=warn] .geocode-alert-icon-ring{background:linear-gradient(145deg,#2e6cb638 0%,#2e6cb61a 100%)}body.dark-mode .geocode-alert-modal[data-tone=error] .geocode-alert-icon-ring{background:linear-gradient(145deg,#ff6b6b33 0%,#ff6b6b1a 100%)}body.dark-mode .geocode-alert-modal[data-tone=info] .geocode-alert-icon-ring{background:linear-gradient(145deg,#4a90e233 0%,#4a90e21a 100%)}body.dark-mode .geocode-alert-keyword{background:#ffffff0a;border-color:#2e6cb659}body.dark-mode .geocode-alert-tips li{background:#2e6cb61a;border-color:#2e6cb633}.delete-confirm-modal{max-width:min(420px, calc(100vw - var(--sidebar-offset) - 48px));text-align:center;border:1px solid var(--border-color);width:100%;margin:auto;padding:28px 28px 24px}.delete-confirm-modal[data-tone=orange] .delete-confirm-icon-ring{color:var(--primary-orange);background:linear-gradient(145deg,#fff7ed 0%,#ffedd5 100%);box-shadow:0 8px 24px #2e6cb62e}.delete-confirm-modal[data-tone=blue] .delete-confirm-icon-ring{color:var(--status-blue);background:linear-gradient(145deg,#eff6ff 0%,#dbeafe 100%);box-shadow:0 8px 24px #4a90e229}.delete-confirm-modal[data-tone=purple] .delete-confirm-icon-ring{color:#4338ca;background:linear-gradient(145deg,#eef2ff 0%,#e0e7ff 100%);box-shadow:0 8px 24px #4338ca24}.delete-confirm-modal[data-tone=green] .delete-confirm-icon-ring{color:var(--status-green);background:linear-gradient(145deg,#ecfdf5 0%,#d1fae5 100%);box-shadow:0 8px 24px #3eb48929}.delete-confirm-modal[data-tone=teal] .delete-confirm-icon-ring{color:#0891b2;background:linear-gradient(145deg,#ecfeff 0%,#cffafe 100%);box-shadow:0 8px 24px #0891b224}.delete-confirm-icon-wrap{justify-content:center;margin-bottom:16px;display:flex}.delete-confirm-icon-ring{border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;font-size:34px;line-height:1;display:inline-flex}.delete-confirm-title{color:var(--text-dark);margin:0 0 8px;font-size:20px;font-weight:700}.delete-confirm-message{color:var(--text-gray);margin:0 0 16px;font-size:14px;line-height:1.55}.delete-confirm-target{background:var(--bg-color);border:1px dashed var(--border-color);border-radius:10px;flex-direction:column;align-items:center;gap:6px;margin-bottom:20px;padding:10px 14px;display:flex}.delete-confirm-target[hidden]{display:none!important}.delete-confirm-target-label{letter-spacing:.04em;text-transform:uppercase;color:var(--text-light);align-items:center;gap:5px;font-size:11px;font-weight:700;display:inline-flex}.delete-confirm-target-text{color:var(--text-dark);word-break:break-word;font-size:15px;font-weight:600}.delete-confirm-actions{gap:12px;display:flex}.delete-confirm-actions .btn{border-radius:10px;flex:1;justify-content:center;height:44px;font-size:15px;font-weight:600}.delete-confirm-actions #confirmDeleteBtn{background-color:var(--status-red);border-color:var(--status-red);box-shadow:0 4px 10px #ff6b6b38}.delete-confirm-actions #confirmDeleteBtn:hover{background-color:#ef4444;border-color:#ef4444}body.dark-mode .delete-confirm-overlay{background-color:#0000009e}body.dark-mode .delete-confirm-target{border-color:var(--border-color);background:#ffffff0a}.delete-confirm-modal[data-tone=danger] .delete-confirm-danger-ring{color:var(--status-red);background:linear-gradient(145deg,#fef2f2 0%,#fee2e2 100%);animation:2s ease-in-out infinite dangerPulse;box-shadow:0 8px 24px #ef444429}.wifi-delete-confirm-details{background:var(--bg-color);border:1px dashed var(--border-color);text-align:left;border-radius:12px;flex-direction:column;gap:12px;margin-bottom:24px;padding:14px 18px;display:flex}.wifi-delete-detail-item{flex-direction:column;gap:4px;display:flex}.wifi-delete-detail-item:not(:last-child){border-bottom:1px solid #e5e7eb80;padding-bottom:10px}.wifi-delete-detail-label{letter-spacing:.04em;text-transform:uppercase;color:var(--text-light);font-size:11px;font-weight:700}.wifi-delete-detail-val{color:var(--text-dark);word-break:break-word;font-size:14px;font-weight:600;line-height:1.45}.delete-confirm-actions #wifiCoordinatorConfirmDeleteBtn{background-color:var(--status-red)!important;border-color:var(--status-red)!important;color:#fff!important;box-shadow:0 4px 12px #ef444440!important}.delete-confirm-actions #wifiCoordinatorConfirmDeleteBtn:hover{background-color:#dc2626!important;border-color:#dc2626!important;box-shadow:0 6px 16px #ef444459!important}body.dark-mode .delete-confirm-modal[data-tone=danger] .delete-confirm-danger-ring{color:#ef4444;background:linear-gradient(145deg,#ef444426 0%,#ef444440 100%);box-shadow:0 8px 24px #ef44444d}body.dark-mode .wifi-delete-confirm-details{background:#ffffff08;border-color:#ffffff14}body.dark-mode .wifi-delete-detail-item:not(:last-child){border-bottom-color:#ffffff0d}.success-alert-overlay{z-index:10060;left:var(--sidebar-offset);width:calc(100vw - var(--sidebar-offset));box-sizing:border-box;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#0f172a73;justify-content:center;align-items:center;padding:24px}.success-alert-overlay.active .success-alert-modal{opacity:1;transform:translateY(0)scale(1)}.success-alert-modal{max-width:min(320px, calc(100vw - var(--sidebar-offset) - 48px));text-align:center;border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--card-bg);width:100%;box-shadow:var(--shadow-xl);opacity:0;margin:auto;padding:24px 24px 20px;transition:transform .3s cubic-bezier(.34,1.56,.64,1),opacity .3s;transform:translateY(20px)scale(.95)}.success-alert-modal[data-tone=success] .success-alert-icon-ring{color:var(--status-green);background:linear-gradient(145deg,#f0fdf4 0%,#dcfce7 100%);border:2px solid #3eb48933;box-shadow:0 8px 24px #3eb4892e}.success-alert-icon-wrap{justify-content:center;margin-bottom:16px;display:flex}.success-alert-icon-ring{border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;font-size:32px;line-height:1;animation:.5s cubic-bezier(.175,.885,.32,1.275) both successIconScale;display:inline-flex;position:relative}.success-alert-title{color:var(--text-dark);margin:0 0 4px;font-size:18px;font-weight:700;line-height:1.35}.success-alert-message{color:var(--text-gray);margin:0;font-size:13.5px;line-height:1.5}body.dark-mode .success-alert-overlay{background-color:#0000009e}body.dark-mode .success-alert-modal[data-tone=success] .success-alert-icon-ring{background:linear-gradient(145deg,#10b98126 0%,#10b9810d 100%);border-color:#10b9814d}.route-insert-sub-kind-popover{z-index:11050}.rest-stop-kind-popover{z-index:10050;background:var(--card-bg);border:1px solid var(--border-color);box-shadow:var(--shadow-lg);border-radius:10px;flex-direction:column;gap:6px;min-width:188px;padding:8px;display:flex;position:fixed}.rest-stop-kind-popover[hidden]{display:none!important}.rest-stop-kind-option{border:1px solid var(--border-color);background:var(--card-bg);cursor:pointer;width:100%;color:var(--text-dark);text-align:left;border-radius:8px;align-items:center;gap:10px;padding:9px 12px;font-family:inherit;font-size:13px;transition:background .15s,border-color .15s;display:flex}.rest-stop-kind-option:hover{background:var(--bg-color);border-color:var(--status-blue)}.rest-stop-kind-option i{color:var(--status-blue);flex-shrink:0;font-size:18px}.rest-stop-kind-option-airport i{color:#0284c7}.rest-stop-block .dest-title i{margin-right:4px;font-size:16px}.sidebar-footer{border-top:1px solid #13252c14;margin-top:auto;padding:12px 0 0}.sidebar-logout-btn{cursor:pointer;width:calc(100% - 32px);font-family:inherit;font-size:inherit;text-align:left;color:#ef4444;background:0 0;border:none;margin:4px 16px}.sidebar-logout-btn:hover{color:#dc2626;background-color:#ef444414}body.dark-mode .sidebar-footer{border-top-color:#ffffff0f!important}body.dark-mode .sidebar-logout-btn{color:#f87171!important}body.dark-mode .sidebar-logout-btn:hover{color:#fca5a5!important;background-color:#f871711a!important}.profile-logout-item{color:var(--status-red)!important}@media (width<=1023px){.app-container{--sidebar-offset:0px}.sidebar-toggle-btn{display:flex}.app-container:not(.sidebar-open) .sidebar-reveal-btn{display:inline-flex}.app-container.sidebar-open .sidebar-reveal-btn{display:none}.sidebar{height:100dvh;max-height:100dvh;box-shadow:none;position:fixed;top:0;left:0;transform:translate(-100%)}.app-container:not(.sidebar-open) .sidebar{transform:translate(-100%)}.app-container.sidebar-open .sidebar{transform:translate(0);box-shadow:8px 0 32px #0f172a2e}}@media (width>=1024px){.sidebar-toggle-btn{display:flex}.app-container:not(.sidebar-collapsed) .sidebar-reveal-btn{display:none}.app-container:not(.sidebar-collapsed){--sidebar-offset:var(--sidebar-width)}.app-container.sidebar-collapsed .sidebar{pointer-events:none;height:100dvh;position:fixed;top:0;left:0;transform:translate(-100%)}.app-container.sidebar-collapsed .sidebar-backdrop{display:none!important}}@media (width<=1200px){.dashboard-layout{grid-template-columns:1fr;height:auto;min-height:480px}.dashboard-layout>.map-container{min-height:360px}.dashboard-layout>.route-list-panel{max-height:420px}.stats-grid>.stat-card-kpi{flex:calc(50% - 8px);min-width:140px}.stats-grid>.stat-card-kpi.border-blue{flex:100%;min-width:100%}}@media (width<=1023px){.main-content{--main-content-pad-x:16px;padding:16px 16px 20px}.topbar{margin-bottom:16px}.breadcrumb h2{word-break:break-word;font-size:18px;line-height:1.3}.search-bar,.search-bar--compact{width:100%;max-width:100%}.dashboard-controls{flex-wrap:wrap;gap:10px;padding:12px 14px}.dashboard-controls .spacer{display:none}.date-tabs{-webkit-overflow-scrolling:touch;flex:100%;margin-left:0;overflow-x:auto}.map-legend-row{flex-wrap:wrap}.map-card-header{flex-wrap:wrap;gap:10px}.map-card-header-actions{flex-wrap:wrap}}@media (width<=768px){.main-content{--main-content-pad-x:12px;padding:12px 12px 16px}.topbar-actions{justify-content:flex-end;gap:8px;width:100%}.topbar-start{flex:100%}.user-profile .user-info{display:none}.breadcrumb span{font-size:12px}.breadcrumb h2{font-size:16px}.stats-grid{--stat-kpi-min:100%;--stat-kpi-time-min:100%;--stat-circuits-min:100%}.stats-grid>.stat-card-kpi,.stats-grid>.stat-card-kpi.border-blue,.stats-grid>.stat-card-circuits{flex:100%;width:100%;min-width:0}.stats-grid>.stat-card-kpi .stat-value{white-space:normal}.stats-grid>.stat-card-kpi .stat-label{white-space:normal;padding-left:44px}.dashboard-layout>.map-container{min-height:280px}.route-list-panel .card-header h3{font-size:15px}.check-new-location-controls{grid-template-columns:1fr 1fr;align-items:stretch;gap:10px;display:grid}.check-new-location-day-tabs-wrap{grid-column:span 2}.check-new-location-search{grid-column:span 2;width:100%;max-width:none}.check-new-location-export-btn{grid-column:span 2;justify-content:center;width:100%}.check-new-location-meta{white-space:normal}}@media (width<=1023px){html,body{height:auto;min-height:100dvh;overflow:hidden auto}body.sidebar-scroll-lock{width:100%;position:fixed;overflow:hidden}.app-container{height:auto;min-height:100dvh;min-height:-webkit-fill-available;overflow:visible}.main-content{flex:auto;min-height:auto;overflow:hidden visible}.fullscreen-dashboard-wrapper:not([hidden]){height:auto;display:block;overflow:visible}.dashboard-layout{height:auto;min-height:0}.dashboard-layout>.map-container{min-height:300px}.dashboard-layout>.map-container .map-view-shell,.dashboard-layout>.map-container .map-view,.dashboard-layout>.map-container #map{height:320px;min-height:280px}.route-list-panel{max-height:none;overflow:visible}.route-list-panel .route-cards{flex:none;min-height:0;max-height:none;overflow:visible}.route-planning-view:not([hidden]),.check-new-location-view:not([hidden]),.summary-report-view:not([hidden]),.today-route-view:not([hidden]),.settings-view:not([hidden]){flex-direction:column;flex:none;min-height:auto;display:flex;overflow:visible}.route-planning-toolbar,.summary-toolbar{flex-wrap:wrap;gap:10px}.route-planning-meta{white-space:normal;width:100%;margin-left:0}.route-planning-split-layout,.route-planning-details-panel,.summary-report-container,.today-route-split-layout,.today-route-details-panel{-webkit-overflow-scrolling:touch;flex:none;min-height:auto;max-height:none;overflow:visible}.check-new-location-layout{flex-direction:column;flex:none;gap:16px;min-height:auto;display:flex;overflow:visible}.check-new-location-list-panel,.check-new-location-detail-panel{min-height:auto;max-height:none;overflow:visible}.check-new-location-list{flex:none;height:220px;max-height:35vh;padding-right:4px;overflow-y:auto}.check-new-location-detail-panel,.check-new-location-detail,.settings-layout{overflow:visible}#planRouteModal{-webkit-overflow-scrolling:touch;align-items:flex-start;width:100vw;padding:16px 12px 24px;left:0;overflow-y:auto}#planRouteModal .modal-container{max-width:100%;max-height:none;margin-bottom:24px}#planRouteModal .modal-body{max-height:none;overflow:visible}#routeInsertPointModal{-webkit-overflow-scrolling:touch;align-items:flex-start;width:100vw;padding:16px 12px 24px;left:0}#routeInsertPointModal .route-insert-point-modal{max-width:100%;max-height:none}#routeInsertPointModal .route-insert-point-body{max-height:none;overflow:visible}.geocode-alert-overlay,.delete-confirm-overlay{-webkit-overflow-scrolling:touch;padding:16px 12px;overflow-y:auto;width:100vw!important;left:0!important}.geocode-alert-modal,.delete-confirm-modal{max-width:100%}.modal-overlay:not(#planRouteModal) .modal-container{-webkit-overflow-scrolling:touch;max-height:calc(100dvh - 32px);overflow-y:auto}}@media (width<=480px){.icon-btn{width:36px;height:36px}.sidebar{width:min(var(--sidebar-width), 88vw)}.menu-item{padding:10px 16px}.menu-title{padding:0 16px}.logo-text span{display:none}}.login-page-body{background:radial-gradient(circle at 50% 0%, #2e6cb61a, transparent 55%), radial-gradient(circle at 15% 85%, #4a90e214, transparent 45%), radial-gradient(circle at 85% 75%, #3eb48912, transparent 40%), var(--bg-color);min-height:100vh;position:relative;overflow-x:hidden}.login-bg-pattern{z-index:0;pointer-events:none;color:#71809638;position:fixed;inset:0;overflow:hidden}.login-bg-svg{opacity:.9;transform-origin:50%;width:100%;height:100%;animation:30s ease-in-out infinite alternate loginBgDrift}.login-route{animation:9s linear infinite loginRouteFlow}.login-route-b{animation-duration:12s;animation-direction:reverse}.login-route-c{animation-duration:15s}.login-map-pins circle{transform-box:fill-box;transform-origin:50%;animation:3.2s ease-in-out infinite loginPinPulse}.login-map-pins circle:nth-child(2){animation-delay:.4s}.login-map-pins circle:nth-child(3){animation-delay:.9s}.login-map-pins circle:nth-child(4){animation-delay:1.3s}.login-map-pins circle:nth-child(5){animation-delay:1.7s}.login-map-pins circle:nth-child(6){animation-delay:2.1s}.login-map-icons circle{transform-box:fill-box;transform-origin:50%;animation:11s ease-in-out infinite loginRingFloat}.login-map-icons circle:nth-child(2){animation-duration:14s;animation-delay:1.5s}.login-map-icons circle:nth-child(3){animation-duration:17s;animation-delay:.8s}.map-route-marker:before{content:"";background:var(--marker-bg,#f973162e);border:1px solid var(--marker-ring,#f9731657);z-index:1;border-radius:999px;position:absolute;inset:-5px;box-shadow:0 0 0 2px #ffffffe6,0 6px 14px #0f172a2e}.map-route-marker-pin{background-color:var(--marker-color,#f97316)!important}.map-route-marker.route-motion-unrelated .map-route-marker-label{display:none!important}.map-route-marker-title{font-weight:700}.map-route-marker-circuit-summary{color:var(--text-gray);border-top:1px solid #94a3b859;margin-top:3px;padding-top:3px;font-size:10px;font-weight:600;line-height:1.3;display:none}.map-route-marker.route-motion-origin .map-route-marker-circuit-summary,.map-route-marker.route-motion-destination .map-route-marker-circuit-summary{display:block}.map-route-marker-circuit-total{color:#7c3aed;font-weight:800}.map-route-marker-circuit-detail{max-width:230px;margin-top:1px}body.dark-mode .map-route-marker-circuit-summary{border-top-color:#94a3b847}.map-route-marker.route-motion-destination{transform-origin:50%;transform:translateZ(0)scale(1.12);z-index:80!important}.map-route-marker.route-motion-destination .map-route-marker-pin{border:3px solid #111!important;width:34px!important;height:34px!important;font-size:16px!important;box-shadow:0 0 0 5px #fffffff2,0 0 0 8px #05050547,0 8px 18px #0000005c!important}.map-route-marker.route-motion-destination .map-route-marker-label{z-index:90!important;border-color:#111!important;display:block!important;box-shadow:0 6px 18px #00000052!important}.map-walking-motion-badge{color:#15803d;white-space:nowrap;pointer-events:none;background:#fffffffa;border:2px solid #22c55e;border-radius:999px;align-items:center;gap:6px;padding:6px 11px;font-size:12px;font-weight:800;display:inline-flex;transform:translate(-50%,-50%);box-shadow:0 0 0 4px #ffffffe0,0 6px 16px #15803d47}.map-walking-motion-badge i{color:#16a34a;font-size:17px}@media (prefers-reduced-motion:reduce){.sidebar,.sidebar-backdrop{transition:none}}body.dark-mode .sidebar-backdrop{background:#0000008c}.login-shell{z-index:1;justify-content:center;align-items:center;min-height:100vh;padding:32px 20px;display:flex;position:relative}.login-center{flex-direction:column;align-items:center;gap:24px;width:100%;max-width:520px;display:flex}.login-brand-inner{text-align:center;width:100%}.login-brand-logo{flex-direction:column;align-items:center;gap:12px;display:flex}.login-brand-logo img{border-radius:14px;box-shadow:0 4px 16px #2e6cb647,0 2px 4px #2d37480f}.login-brand-logo h1{color:var(--text-dark);font-size:34px;font-weight:700;line-height:1.1}.login-brand-logo p{color:var(--text-gray);margin-top:6px;font-size:15px}.login-panel{flex-direction:column;align-items:center;width:100%;display:flex}.login-card{border-radius:var(--radius-xl);width:100%;box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffeb;border:1px solid #edf2f7f2;padding:28px 24px 24px}.login-card-head{text-align:center;margin-bottom:18px}.login-card-title{color:var(--text-dark);margin-bottom:6px;font-size:22px;font-weight:700}.login-card-subtitle{color:var(--text-gray);font-size:14px}.login-switch-link{text-align:center;color:var(--text-gray);margin-top:16px;font-size:13px}.login-switch-link a{color:var(--primary-orange);font-weight:600;text-decoration:none}.login-switch-link a:hover{text-decoration:underline}.login-tab.active{color:var(--primary-orange);box-shadow:var(--shadow-sm);background:#fff}.login-alert{border-radius:10px;margin-bottom:14px;padding:10px 12px;font-size:13px;line-height:1.4}.login-alert-error{background:var(--status-red-light);color:#c53030;border:1px solid #feb2b2}.login-alert-success{background:var(--status-green-light);color:#276749;border:1px solid #9ae6b4}.login-form{gap:14px;display:grid}.login-form[hidden]{display:none}.login-field label{color:var(--text-dark);margin-bottom:6px;font-size:13px;font-weight:600;display:block}.login-input-wrap{align-items:center;display:flex;position:relative}.login-input-wrap>i{color:var(--text-light);pointer-events:none;font-size:18px;position:absolute;left:12px}.login-input-wrap input{border:1px solid var(--border-color);width:100%;color:var(--text-dark);background:#fff;border-radius:12px;padding:11px 40px;font-family:inherit;font-size:14px;transition:border-color .2s,box-shadow .2s}.login-input-wrap input:focus{border-color:#2e6cb6a6;outline:none;box-shadow:0 0 0 3px #2e6cb626}.login-input-wrap select{border:1px solid var(--border-color);width:100%;color:var(--text-dark);appearance:none;cursor:pointer;background:#fff;border-radius:12px;padding:11px 40px;font-family:inherit;font-size:14px;transition:border-color .2s,box-shadow .2s}.login-input-wrap select:focus{border-color:#2e6cb6a6;outline:none;box-shadow:0 0 0 3px #2e6cb626}.login-input-wrap select:disabled{opacity:.55;cursor:not-allowed}.reg-card{--reg-accent:#2563eb;--reg-accent-2:#1d4ed8;--reg-accent-soft:#2563eb29;--reg-accent-shadow:#2563eb66;background:#fff;border-radius:24px;width:100%;max-width:460px;position:relative;overflow:hidden;box-shadow:0 30px 70px -28px #0f172a73,0 10px 28px -16px #0f172a40}.reg-card[data-theme=wifi]{--reg-accent:#7c3aed;--reg-accent-2:#4f46e5;--reg-accent-soft:#7c3aed29;--reg-accent-shadow:#7c3aed66}.reg-card-header{text-align:center;color:#fff;background:linear-gradient(135deg, var(--reg-accent), var(--reg-accent-2));padding:18px 28px 16px;position:relative;overflow:hidden}.reg-card-header:before,.reg-card-header:after{content:"";pointer-events:none;background:#ffffff1f;border-radius:50%;position:absolute}.reg-card-header:before{width:180px;height:180px;top:-90px;right:-50px}.reg-card-header:after{width:120px;height:120px;bottom:-70px;left:-30px}.reg-card-badge{background:#ffffff2e;border:1px solid #ffffff59;border-radius:18px;justify-content:center;align-items:center;width:62px;height:62px;margin:0 auto 14px;font-size:30px;display:flex;position:relative;box-shadow:0 8px 20px -6px #00000040}.reg-card-header h2{letter-spacing:-.01em;margin:0;font-size:21px;font-weight:700;position:relative}.reg-card-header p{opacity:.92;margin:6px 0 0;font-size:13px;font-weight:500;position:relative}.reg-card-body{padding:16px 24px 20px}.reg-page .login-shell{padding-top:14px;padding-bottom:14px}.reg-form[hidden]{display:none}.reg-section+.reg-section{margin-top:14px}.reg-section-title{letter-spacing:.05em;text-transform:uppercase;color:var(--reg-accent);align-items:center;gap:8px;margin-bottom:9px;font-size:11.5px;font-weight:700;display:flex}.reg-section-title:after{content:"";background:var(--border-color);flex:1;height:1px}.reg-field{margin-bottom:9px}.reg-field:last-child{margin-bottom:0}.reg-row-2{grid-template-columns:1fr 1fr;gap:10px;display:grid}.reg-row-2 .reg-field{margin-bottom:9px}.reg-field>label{color:var(--text-dark);margin-bottom:4px;font-size:12.5px;font-weight:600;display:block}.reg-field .req{color:#ef4444}.reg-input{align-items:center;display:flex;position:relative}.reg-input>i{color:var(--text-light);pointer-events:none;font-size:17px;position:absolute;left:14px}.reg-input input,.reg-input select{border:1.5px solid var(--border-color);width:100%;height:42px;color:var(--text-dark);appearance:none;background:#fff;border-radius:12px;padding:0 14px 0 42px;font-family:inherit;font-size:14px;transition:border-color .2s,box-shadow .2s}.reg-input--select select{cursor:pointer;padding-right:38px}.reg-input--select:after{content:"";border-right:2px solid var(--text-light);border-bottom:2px solid var(--text-light);pointer-events:none;width:8px;height:8px;position:absolute;right:16px;transform:translateY(-2px)rotate(45deg)}.reg-input input::placeholder{color:var(--text-light)}.reg-input input:focus,.reg-input select:focus{border-color:var(--reg-accent);box-shadow:0 0 0 3px var(--reg-accent-soft);outline:none}.reg-input select:disabled{opacity:.55;cursor:not-allowed;background:#f7fafc}.reg-person-row{border:1.5px solid var(--border-color);background:var(--reg-accent-soft);border-radius:14px;margin-bottom:10px;padding:11px 12px;position:relative}.reg-person-row .reg-field{margin-bottom:8px}.reg-person-row .reg-input input{background:#fff}.reg-person-row-head{justify-content:space-between;align-items:center;margin-bottom:9px;display:flex}.reg-person-row-title{letter-spacing:.04em;text-transform:uppercase;color:var(--reg-accent);align-items:center;gap:6px;font-size:11.5px;font-weight:700;display:inline-flex}.reg-person-remove{color:#ef4444;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:3px 6px;font-size:18px;line-height:1;transition:background .2s;display:inline-flex}.reg-person-remove:hover{background:#ef44441f}.reg-add-person{border:1.5px dashed var(--reg-accent);width:100%;color:var(--reg-accent);cursor:pointer;background:0 0;border-radius:12px;justify-content:center;align-items:center;gap:6px;margin-top:2px;padding:9px;font-family:inherit;font-size:13.5px;font-weight:600;transition:background .2s;display:inline-flex}.reg-add-person:hover{background:var(--reg-accent-soft)}.reg-submit{background:linear-gradient(135deg, var(--reg-accent), var(--reg-accent-2));color:#fff;cursor:pointer;width:100%;height:46px;box-shadow:0 12px 26px -10px var(--reg-accent-shadow);border:none;border-radius:14px;justify-content:center;align-items:center;gap:8px;margin-top:16px;font-family:inherit;font-size:15px;font-weight:700;transition:transform .15s,box-shadow .2s,opacity .2s;display:inline-flex}.reg-submit:hover{box-shadow:0 16px 32px -10px var(--reg-accent-shadow);transform:translateY(-1px)}.reg-submit:active{transform:translateY(0)}.reg-submit.is-loading{opacity:.7;pointer-events:none}.reg-success{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:14px 8px 6px;display:flex}.reg-success[hidden]{display:none}.reg-success-icon{color:#16a34a;background:#16a34a1a;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin-bottom:4px;font-size:38px;display:flex}.reg-success h3{color:var(--text-dark);margin:0;font-size:18px;font-weight:700}.reg-success p{color:var(--text-gray);margin:0;font-size:14px}.reg-btn-outline{border:1.5px solid var(--reg-accent);color:var(--reg-accent);cursor:pointer;background:0 0;border-radius:12px;align-items:center;gap:6px;margin-top:10px;padding:10px 18px;font-family:inherit;font-size:14px;font-weight:600;transition:background .2s;display:inline-flex}.reg-btn-outline:hover{background:var(--reg-accent-soft)}.login-toggle-password{color:var(--text-light);cursor:pointer;background:0 0;border:none;border-radius:8px;width:32px;height:32px;position:absolute;right:8px}.login-toggle-password:hover{color:var(--text-gray);background:#f7fafc}.login-field-hint{color:var(--text-light);margin-top:6px;font-size:11px}.login-submit{justify-content:center;align-items:center;gap:8px;width:100%;margin-top:4px;padding:12px 16px;font-size:15px;font-weight:600;display:inline-flex}.login-submit.is-loading{opacity:.75;pointer-events:none}.login-footer-note{color:var(--text-light);text-align:center;margin-top:14px;font-size:11px}@media (width<=560px){.login-brand-logo h1{font-size:28px}}body.dark-mode .login-page-body{background:radial-gradient(circle at 50% 0,#2e6cb614,#0000 55%),radial-gradient(circle at 15% 85%,#4a90e20f,#0000 45%),#1a202c}body.dark-mode .login-bg-pattern{color:#e2e8f014}body.dark-mode .login-card{background:#2d3748e0;border-color:#4a5568}body.dark-mode .login-tab.active{background:#2d3748}body.dark-mode .login-input-wrap input,body.dark-mode .login-input-wrap select{color:#e2e8f0;background:#1a202c;border-color:#4a5568}.login-page-body{background:radial-gradient(circle at 12% 18%,#add1f799,#0000 42%),radial-gradient(circle at 88% 12%,#bedffa99,#0000 45%),radial-gradient(circle at 78% 88%,#cce6fc8c,#0000 45%),radial-gradient(circle at 25% 92%,#d8ecfc80,#0000 42%),linear-gradient(160deg,#eef6ff 0%,#e3f0fd 55%,#ddeafb 100%)!important}.login-page-body .login-bg-pattern{color:#849cc42e}.login-page-body .login-center{gap:28px;max-width:440px;margin-top:-48px}.login-page-body .login-brand-logo h1{letter-spacing:-.01em;background:linear-gradient(120deg,#1c4f8a 0%,#2a66ad 55%,#2f7bc4 100%);-webkit-text-fill-color:transparent;color:#1c4f8a;-webkit-background-clip:text;background-clip:text;font-size:30px}.login-page-body .login-brand-logo p{color:#4d6a8f;margin-top:14px;font-size:14px}.login-page-body .login-card{-webkit-backdrop-filter:blur(18px)saturate(135%);backdrop-filter:blur(18px)saturate(135%);background:#ffffffc7;border:1px solid #ffffffe6;border-radius:26px;padding:36px 32px 32px;box-shadow:0 24px 60px -24px #4f9ad866,0 8px 24px -16px #6cb2ec4d,inset 0 1px #ffffffb3}.login-page-body .login-card-head{margin-bottom:24px}.login-page-body .login-card-title{color:#3a4560;font-size:23px}.login-page-body .login-card-subtitle{color:#8693ad}.login-page-body .login-field label{color:#2c3a55;letter-spacing:.01em;font-size:12.5px}.login-page-body .login-input-wrap>i{color:#9aa7c4;transition:color .2s}.login-page-body .login-input-wrap input{color:#3a4560;background:#f7faffd9;border:1px solid #c4d0e8cc;border-radius:14px;padding:13px 44px 13px 42px}.login-page-body .login-input-wrap input::placeholder{color:#aab4cb}.login-page-body .login-input-wrap input:focus{background:#fff;border-color:#5aa1e0d9;box-shadow:0 0 0 4px #5aa1e02e}.login-page-body .login-input-wrap:focus-within>i{color:#4f9ad8}.login-page-body .login-toggle-password:hover{color:#4f9ad8;background:#5aa1e01f}.login-page-body .login-submit{color:#fff;border:none;border-radius:14px;margin-top:10px;padding:14px 18px;font-size:15px;transition:transform .15s,box-shadow .2s,filter .2s;box-shadow:0 14px 28px -12px #4f9ad8b3;background:linear-gradient(120deg,#6cb2ec 0%,#4f9ad8 100%)!important;border-color:#0000!important}.login-page-body .login-submit:hover{filter:brightness(1.04);transform:translateY(-1px);box-shadow:0 18px 34px -12px #4f9ad8d9}.login-page-body .login-submit:active{transform:translateY(0)}.login-page-body .login-submit i{transition:transform .2s}.login-page-body .login-submit:hover i{transform:translate(3px)}.main-content.view-today-route .search-bar{display:none}.main-content.view-today-route{padding-top:0}.main-content.view-today-route .topbar{margin-bottom:0}.main-content.view-today-route .breadcrumb h2{margin-top:2px;font-size:20px}.today-route-view[hidden]{display:none!important}.today-route-view:not([hidden]){flex-direction:column;flex:1;min-height:0;margin-top:-8px;padding:0 24px 24px;display:flex;overflow:auto}.today-route-hero{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:20px;padding:20px 0 16px;display:flex}.today-route-hero-text{align-items:flex-start;gap:14px;min-width:0;display:flex}.today-route-icon{background:var(--status-green-light);width:48px;height:48px;color:var(--status-green);border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;font-size:22px;display:flex}.today-route-hero h3{color:var(--text-dark);margin:0 0 4px;font-size:20px;font-weight:700}.today-route-hero p{color:var(--text-gray);margin:0;font-size:13px;line-height:1.5}.today-route-stats{flex-wrap:wrap;align-items:center;gap:12px;margin-top:6px;display:flex}.today-route-stat{cursor:default;-webkit-backdrop-filter:blur(10px);background:#fffc;border:1px solid #edf2f7e6;border-radius:16px;flex-direction:column;justify-content:center;gap:4px;min-width:110px;padding:12px 18px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden;box-shadow:0 4px 12px #00000005}body.dark-mode .today-route-stat{background:#2d374899;border-color:#4a556880;box-shadow:0 4px 12px #00000026}.today-route-stat:hover{transform:translateY(-4px)scale(1.02)}.today-route-stat-value{font-size:22px;font-weight:800;line-height:1.1;font-family:var(--font-family);-webkit-background-clip:text;background-clip:text}.today-route-stat-value-sm{font-size:16px}.today-route-stat-label{color:var(--text-gray);text-transform:uppercase;letter-spacing:.5px;font-size:11px;font-weight:700}.today-route-stat:first-child{border-left:4px solid var(--primary-orange);background:linear-gradient(135deg,#2e6cb612 0%,#fffc 60%)}body.dark-mode .today-route-stat:first-child{background:linear-gradient(135deg,#2e6cb626 0%,#2d374899 80%)}.today-route-stat:first-child .today-route-stat-value{color:var(--primary-orange);-webkit-text-fill-color:transparent;background-image:linear-gradient(135deg,#2e6cb6,#5e9be0);-webkit-background-clip:text}.today-route-stat:first-child:hover{border-color:#2e6cb680;box-shadow:0 8px 20px #2e6cb61f}.today-route-stat:nth-child(2){border-left:4px solid var(--status-green);background:linear-gradient(135deg,#3eb48912 0%,#fffc 60%)}body.dark-mode .today-route-stat:nth-child(2){background:linear-gradient(135deg,#3eb48926 0%,#2d374899 80%)}.today-route-stat:nth-child(2) .today-route-stat-value{color:var(--status-green);-webkit-text-fill-color:transparent;background-image:linear-gradient(135deg,#3f8f6b,#5cd0a5);-webkit-background-clip:text}.today-route-stat:nth-child(2):hover{border-color:#3eb48980;box-shadow:0 8px 20px #3eb4891f}.today-route-stat:nth-child(3){background:linear-gradient(135deg,#7c3aed0f 0%,#fffc 60%);border-left:4px solid #7c3aed}body.dark-mode .today-route-stat:nth-child(3){background:linear-gradient(135deg,#7c3aed26 0%,#2d374899 80%)}.today-route-stat:nth-child(3) .today-route-stat-value{color:#7c3aed;-webkit-text-fill-color:transparent;background-image:linear-gradient(135deg,#7c3aed,#9d66ff);-webkit-background-clip:text}.today-route-stat:nth-child(3):hover{border-color:#7c3aed80;box-shadow:0 8px 20px #7c3aed1f}.today-route-stat:nth-child(4){border-left:4px solid var(--status-blue);background:linear-gradient(135deg,#4a90e212 0%,#fffc 60%)}body.dark-mode .today-route-stat:nth-child(4){background:linear-gradient(135deg,#4a90e226 0%,#2d374899 80%)}.today-route-stat:nth-child(4) .today-route-stat-value{color:var(--status-blue);-webkit-text-fill-color:transparent;background-image:linear-gradient(135deg,#4a90e2,#73a9eb);-webkit-background-clip:text}.today-route-stat:nth-child(4):hover{border-color:#4a90e280;box-shadow:0 8px 20px #4a90e21f}.today-route-stat:nth-child(5){border-left:4px solid var(--status-red);background:linear-gradient(135deg,#ff6b6b12 0%,#fffc 60%)}body.dark-mode .today-route-stat:nth-child(5){background:linear-gradient(135deg,#ff6b6b26 0%,#2d374899 80%)}.today-route-stat:nth-child(5) .today-route-stat-value{color:var(--status-red);-webkit-text-fill-color:transparent;background-image:linear-gradient(135deg,#ff6b6b,#ff8e8e);-webkit-background-clip:text}.today-route-stat:nth-child(5):hover{border-color:#ff6b6b80;box-shadow:0 8px 20px #ff6b6b1f}.today-route-loading{color:var(--text-gray);flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:48px 24px;display:flex}.today-route-loading i{color:var(--status-green);font-size:28px;animation:1s linear infinite todayRouteSpin}.today-route-empty{text-align:center;background:var(--card-bg);border:1px dashed var(--border-color);border-radius:16px;padding:48px 24px}.today-route-empty-icon{background:var(--status-green-light);width:56px;height:56px;color:var(--status-green);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 12px;font-size:26px;display:flex}.today-route-empty h4{margin:0 0 6px;font-size:17px}.today-route-empty p{color:var(--text-gray);margin:0 0 16px;font-size:13px;line-height:1.6}.today-route-empty-btn{align-items:center;gap:6px;display:inline-flex}.today-route-split-layout{flex:1;gap:24px;min-height:0;margin-top:8px;display:flex;overflow:hidden}.today-route-days-sidebar{flex-direction:column;flex-shrink:0;gap:12px;width:310px;padding-right:6px;display:flex;overflow-y:auto}.today-route-day-card{background:var(--card-bg);border:1px solid var(--border-color);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:14px;outline:none;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.today-route-day-card:hover{border-color:color-mix(in srgb, var(--status-green) 50%, var(--border-color));background:color-mix(in srgb, var(--status-green) 3%, var(--card-bg));transform:translate(3px)}.today-route-day-card.active{border-color:var(--status-green);background:linear-gradient(135deg, color-mix(in srgb, var(--status-green) 10%, var(--card-bg)) 0%, var(--card-bg) 100%);transform:translate(5px);box-shadow:0 4px 12px #3eb48914}.today-route-day-card.active .day-card-badge{background:var(--status-green);border-color:var(--status-green);color:#fff}.today-route-day-card.active .day-card-arrow{color:var(--status-green);opacity:1;transform:translate(2px)}.today-route-details-panel{background:var(--card-bg);border:1px solid var(--border-color);min-width:0;box-shadow:var(--shadow-sm);scroll-behavior:smooth;border-radius:16px;flex-direction:column;flex:1;gap:20px;padding:24px;display:flex;overflow-y:auto}.today-route-detail-header{border-bottom:1px solid var(--border-color);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding-bottom:16px;display:flex}.today-route-strip{background:var(--bg-color);border:1px solid var(--border-color);border-radius:16px;flex-direction:column;gap:12px;padding:16px 20px;display:flex}.today-route-strip-label{color:var(--text-gray);text-transform:uppercase;letter-spacing:.5px;align-items:center;gap:6px;font-size:11px;font-weight:700;display:inline-flex}.today-route-strip-nodes{flex-wrap:wrap;align-items:center;gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.today-route-strip-arrow{color:var(--text-gray);opacity:.5;font-size:16px;line-height:1}.today-route-point-chip{background:var(--chip-bg,var(--card-bg));border:1px solid color-mix(in srgb, var(--chip-color,var(--border-color)) 24%, var(--border-color));max-width:100%;box-shadow:var(--shadow-sm);border-radius:12px;flex-direction:column;gap:2px;padding:8px 12px;transition:all .2s;display:inline-flex}.today-route-point-chip:hover{border-color:color-mix(in srgb, var(--chip-color,var(--status-green)) 60%, transparent);box-shadow:0 4px 8px #0000000a}.today-route-strip-node.is-target .today-route-point-chip{box-shadow:0 0 0 1px color-mix(in srgb, var(--chip-color,var(--status-green)) 35%, transparent);border-color:var(--chip-color,var(--status-green))}.today-route-point-chip-type{color:var(--chip-color,var(--text-gray));align-items:center;gap:5px;font-size:11px;font-weight:700;line-height:1.2;display:inline-flex}.today-route-point-chip-type i,.today-route-point-chip-type .rest-stop-marker-icons{font-size:13px}.today-route-point-chip-name{color:var(--text-dark);word-break:break-word;font-size:12px;font-weight:600;line-height:1.35}.today-route-timeline{flex-direction:column;gap:16px;display:flex}.today-route-card{background:color-mix(in srgb, var(--card-accent,var(--status-green)) 14%, var(--card-bg));border:1px solid color-mix(in srgb, var(--card-accent,var(--status-green)) 28%, var(--border-color));border-left:5px solid var(--card-accent,var(--status-green));border-radius:16px;flex-direction:column;gap:16px;padding:20px;transition:border-color .2s,box-shadow .2s;display:flex;position:relative}.today-route-card:hover{box-shadow:var(--shadow-md);border-color:color-mix(in srgb, var(--card-accent,var(--status-green)) 35%, var(--border-color))}.today-route-card-order-badge{background:var(--card-accent-bg,var(--status-green-light));width:28px;height:28px;color:var(--card-accent,var(--status-green));box-shadow:var(--shadow-sm);border-radius:50%;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex;position:absolute;top:20px;right:20px}.today-route-card-body{background:0 0;border:none;border-radius:0;padding:0}.today-route-card-head{justify-content:space-between;align-items:flex-start;gap:10px;margin-right:32px;display:flex}.today-route-card-title{color:var(--text-dark);margin:0;font-size:16px;font-weight:700;line-height:1.4}.today-route-unit{color:var(--text-gray);align-items:center;gap:6px;font-size:13px;display:flex}.today-route-stop-vpn-summary{color:#7c3aed;background:#7c3aed0a;border:1px solid #7c3aed1f;border-radius:10px;flex-wrap:wrap;align-items:center;gap:6px;width:fit-content;padding:8px 10px;font-size:12px;display:flex}.today-route-stop-vpn-summary strong{font-weight:700}.today-route-meta-grid{color:var(--text-gray);background:var(--bg-color);border:1px solid var(--border-color);border-radius:12px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;padding:12px 16px;font-size:12px;display:grid}.today-route-meta-item{align-items:flex-start;gap:6px;line-height:1.45;display:flex}.today-route-meta-item i{color:var(--text-gray);flex-shrink:0;margin-top:1px}.today-route-meta-grid .today-route-coordinators-list{flex-direction:column;grid-column:1/-1;gap:10px;margin-top:6px;display:flex}.today-route-coordinator-row{flex-wrap:wrap;align-items:center;gap:8px;width:100%;display:flex}.today-route-coord-badge{-webkit-user-select:none;user-select:none;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:600;transition:all .2s;display:inline-flex;box-shadow:0 1px 2px #00000008}.today-route-coord-badge:hover{transform:translateY(-1px);box-shadow:0 4px 8px #0000000f}.today-route-coord-badge i{font-size:13px;margin-top:0!important}.today-route-coord-badge.name-badge{background:var(--primary-orange-light);color:var(--primary-orange-hover);border:1px solid #2e6cb633}.today-route-coord-badge.name-badge i{color:var(--primary-orange)}.today-route-coord-badge.phone-badge{background:var(--status-blue-light);color:var(--status-blue);border:1px solid #4a90e233}.today-route-coord-badge.phone-badge i{color:var(--status-blue)}body.dark-mode .today-route-coord-badge.name-badge{color:#ffa46b;background:#2e6cb626;border-color:#2e6cb659}body.dark-mode .today-route-coord-badge.name-badge i{color:#ffa46b}body.dark-mode .today-route-coord-badge.phone-badge{color:#7ab2f3;background:#4a90e226;border-color:#4a90e259}body.dark-mode .today-route-coord-badge.phone-badge i{color:#7ab2f3}body.dark-mode .today-route-day-card:hover{background:#3eb4890d}body.dark-mode .today-route-day-card.active{background:linear-gradient(135deg, #3eb48926 0%, var(--card-bg) 100%)}body.dark-mode .today-route-stop-vpn-summary{background:#7c3aed14;border-color:#7c3aed38}body.dark-mode .today-route-day-head{background:linear-gradient(135deg, #3eb48926 0%, var(--card-bg) 70%)}@media (width<=992px){.today-route-split-layout{flex-direction:column;overflow:visible}.today-route-days-sidebar{white-space:nowrap;border-bottom:1px solid var(--border-color);flex-direction:row;width:100%;padding-bottom:12px;overflow-x:auto}.today-route-day-card{flex-shrink:0;min-width:160px}.today-route-day-card:hover{transform:none}.today-route-day-card.active{transform:translateY(-2px)}.today-route-details-panel{width:100%;box-shadow:none;padding:16px}}.main-content.view-settings .search-bar{display:none}.main-content.view-settings{padding-top:0}.main-content.view-settings .topbar{margin-bottom:0}.main-content.view-settings .breadcrumb h2{margin-top:2px;font-size:20px}.settings-view[hidden]{display:none!important}.settings-view:not([hidden]){flex-direction:column;flex:1;min-height:0;margin-top:-8px;padding:0 24px 24px;display:flex;overflow:auto}.settings-hero{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:20px;padding:20px 0 16px;display:flex}.settings-hero-text{align-items:flex-start;gap:14px;min-width:0;display:flex}.settings-icon{color:#6366f1;background:#6366f11f;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:22px;display:flex}.settings-hero h3{color:var(--text-dark);margin:0 0 4px;font-size:20px;font-weight:700}.settings-hero p{color:var(--text-gray);margin:0;font-size:13px;line-height:1.5}.settings-layout{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:16px;display:grid}.settings-group-title{letter-spacing:.01em;color:#fff;background:linear-gradient(135deg, var(--accent-strong,#8b5cf6), var(--accent-strong-2,#7c3aed));box-shadow:0 4px 12px var(--accent-shadow,#8b5cf659);border:none;border-radius:10px;grid-column:1/-1;align-items:center;gap:10px;margin:28px 0 8px;padding:13px 18px;font-size:15px;font-weight:800;display:flex}.settings-group-title i{color:#fff;font-size:20px}.settings-group-title--vpn{--accent-strong:#8b5cf6;--accent-strong-2:#6d28d9;--accent-shadow:#8b5cf666}.settings-group-title--wifi{--accent-strong:#0ea5e9;--accent-strong-2:#0369a1;--accent-shadow:#0ea5e966}.settings-multiselect{min-width:240px;position:relative}.settings-multiselect-toggle{border:1px solid var(--border-color);background:var(--card-bg);width:100%;height:38px;color:var(--text-dark);cursor:pointer;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:0 12px;font-family:inherit;font-size:13px;display:flex}.settings-multiselect-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.settings-multiselect.is-open .settings-multiselect-toggle{border-color:#8b5cf6}.settings-multiselect.is-open .settings-multiselect-toggle .ri-arrow-down-s-line{transform:rotate(180deg)}.settings-multiselect-panel{z-index:50;background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;max-height:260px;padding:6px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 8px 24px #0000001f}.settings-multiselect-option{color:var(--text-dark);cursor:pointer;border-radius:6px;align-items:center;gap:8px;padding:7px 10px;font-size:13px;display:flex}.settings-multiselect-option:hover{background:var(--bg-color)}.settings-multiselect-option input{accent-color:#8b5cf6;width:16px;height:16px}.wifi-area-map-display{flex-direction:column;gap:8px;display:flex}.wifi-area-map-row{color:var(--text-dark);align-items:flex-start;gap:10px;font-size:13px;display:flex}.wifi-area-map-row-muted{opacity:.85}.wifi-area-map-bureaus{line-height:1.5}.wifi-area-map-empty{color:var(--text-gray);font-size:13px;font-style:italic}.wifi-area-phase-badge{color:#8b5cf6;white-space:nowrap;background:#8b5cf61f;border-radius:999px;flex-shrink:0;align-items:center;padding:2px 10px;font-size:12px;font-weight:700;display:inline-flex}.wifi-area-phase-badge-muted{color:#f97316;background:#f973161f}.settings-card{background:var(--card-bg);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:16px;padding:18px}.settings-card-header{align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.settings-card-header h4{color:var(--text-dark);margin:0 0 2px;font-size:16px;font-weight:700}.settings-card-header p{color:var(--text-gray);margin:0;font-size:12px;line-height:1.45}.settings-card-icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:20px;display:flex}.settings-card-icon-blue{background:var(--status-blue-light);color:var(--status-blue)}.settings-card-icon-purple{color:#7c3aed;background:#7c3aed1f}.settings-card-icon-green{background:var(--status-green-light);color:var(--status-green)}.settings-card-icon-red{background:var(--status-red-light);color:var(--status-red)}.settings-profile-card{grid-column:1/-1;padding:14px}.settings-profile-top{background:linear-gradient(135deg, var(--primary-orange-light) 0%, var(--card-bg) 80%);border:1px solid color-mix(in srgb, var(--primary-orange) 16%, var(--border-color));border-radius:14px;align-items:center;gap:13px;padding:11px 13px;display:flex}.settings-profile-edit-btn{flex-shrink:0;align-self:center}.settings-profile-summary{background:linear-gradient(135deg, var(--primary-orange-light) 0%, var(--card-bg) 72%);border:1px solid color-mix(in srgb, var(--primary-orange) 18%, var(--border-color));border-radius:14px;align-items:center;gap:14px;margin-bottom:14px;padding:14px;display:flex}.settings-avatar-wrapper{cursor:pointer;flex-shrink:0;position:relative}.settings-avatar-wrapper:hover .settings-avatar-overlay{opacity:1}.settings-avatar{background:linear-gradient(135deg, var(--primary-orange), #f59e0b);color:#fff;-webkit-user-select:none;user-select:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;font-size:26px;font-weight:700;line-height:1;transition:transform .2s,box-shadow .2s;display:flex;box-shadow:0 4px 12px #2e6cb638}.settings-avatar.has-emoji{background:var(--bg-color);border:2px solid var(--border-color);font-size:28px;box-shadow:0 4px 12px #00000014}.settings-avatar-wrapper:hover .settings-avatar{transform:scale(1.05);box-shadow:0 6px 20px #2e6cb64d}.settings-avatar-overlay{color:#fff;opacity:0;pointer-events:none;background:#00000073;border-radius:50%;justify-content:center;align-items:center;font-size:22px;transition:opacity .2s;display:flex;position:absolute;inset:0}.settings-emoji-picker{z-index:100;background:var(--card-bg);border:1px solid var(--border-color);border-radius:18px;width:320px;padding:16px;animation:.2s emojiPickerIn;display:none;position:absolute;top:calc(100% + 10px);left:0;box-shadow:0 12px 40px #00000026,0 0 0 1px #0000000a}.settings-emoji-picker.active{display:block}.settings-emoji-picker-title{color:var(--text-gray);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border-color);margin-bottom:12px;padding-bottom:8px;font-size:12px;font-weight:700}.settings-emoji-grid{grid-template-columns:repeat(6,1fr);gap:6px;display:grid}.settings-emoji-btn{background:var(--bg-color);cursor:pointer;border:2px solid #0000;border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;padding:0;font-size:26px;line-height:1;transition:all .18s;display:flex}.settings-emoji-btn:hover{background:var(--primary-orange-light);border-color:var(--primary-orange);transform:scale(1.15);box-shadow:0 4px 12px #2e6cb62e}.settings-emoji-btn.is-selected{border-color:var(--primary-orange);background:var(--primary-orange-light);box-shadow:0 0 0 2px color-mix(in srgb, var(--primary-orange) 25%, transparent)}.settings-profile-meta{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.settings-profile-name{color:var(--text-dark);white-space:nowrap;text-overflow:ellipsis;font-size:18px;font-weight:700;line-height:1.25;overflow:hidden}.settings-profile-email{color:var(--text-gray);word-break:break-word;font-size:13px}.settings-info-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0 0;display:grid}.settings-info-grid>div{background:var(--bg-color);border:1px solid var(--border-color);border-radius:10px;padding:9px 11px}.settings-info-grid dt{color:var(--text-gray);text-transform:uppercase;letter-spacing:.03em;margin:0 0 2px;font-size:11px;font-weight:600}.settings-info-grid dd{color:var(--text-dark);word-break:break-word;margin:0;font-size:14px;font-weight:600}.settings-profile-actions{justify-content:flex-end;align-items:center;gap:10px;margin-top:12px}.settings-profile-status{margin-right:auto;font-size:12px}.settings-option-row{background:var(--bg-color);border:1px solid var(--border-color);border-radius:12px;justify-content:space-between;align-items:center;gap:16px;padding:14px;display:flex}.settings-option-text{flex-direction:column;gap:4px;min-width:0;display:flex}.settings-option-text strong{color:var(--text-dark);font-size:14px}.settings-option-text span{color:var(--text-gray);font-size:12px;line-height:1.45}.settings-toggle{cursor:pointer;flex-shrink:0;display:inline-flex;position:relative}.settings-toggle input{opacity:0;width:0;height:0;position:absolute}.settings-toggle-track{background:#cbd5e0;border-radius:999px;align-items:center;width:48px;height:28px;padding:3px;transition:background .2s;display:inline-flex}.settings-toggle-thumb{background:#fff;border-radius:50%;width:22px;height:22px;transition:transform .2s;box-shadow:0 1px 3px #0000002e}.settings-toggle input:checked+.settings-toggle-track{background:var(--primary-orange)}.settings-toggle input:checked+.settings-toggle-track .settings-toggle-thumb{transform:translate(20px)}.settings-toggle input:focus-visible+.settings-toggle-track{box-shadow:0 0 0 3px color-mix(in srgb, var(--primary-orange) 22%, transparent)}body.dark-mode .settings-card{background:var(--card-bg);border-color:var(--border-color)}body.dark-mode .settings-profile-summary,body.dark-mode .settings-profile-top{background:linear-gradient(135deg, #2e6cb61f 0%, var(--card-bg) 80%)}body.dark-mode .settings-info-grid>div,body.dark-mode .settings-option-row{background:var(--bg-color);border-color:var(--border-color)}body.dark-mode .settings-toggle-track{background:#4a5568}body.dark-mode .settings-inspection-round-option{background:var(--bg-color)}body.dark-mode .settings-inspection-round-option.is-selected{background:color-mix(in srgb, var(--primary-orange-light) 55%, var(--card-bg))}body.dark-mode .settings-inspection-round-active{background:color-mix(in srgb, var(--primary-orange-light) 35%, var(--card-bg))}@media (width<=900px){.settings-layout{grid-template-columns:1fr}.settings-profile-card{grid-column:auto}.settings-info-grid{grid-template-columns:1fr}}@media (width<=768px){.settings-view:not([hidden]){padding:0 12px 16px}.settings-option-row{flex-direction:column;align-items:flex-start}.settings-inspection-round-picker{grid-template-columns:1fr}.settings-inspection-round-actions{flex-direction:column;align-items:stretch}.settings-inspection-round-save-btn{width:100%;margin-left:0}}.route-card.is-dragging{opacity:.4;border:1px dashed var(--status-blue)!important}.route-card.drag-over{transition:all .2s;transform:translateY(2px);border-top:3px solid var(--status-blue)!important}body.dark-mode .route-planning-day-card:hover{background:#3b82f60d}body.dark-mode .route-planning-day-card.active{background:linear-gradient(135deg, #3b82f626 0%, var(--card-bg) 100%)}@media (width<=992px){.route-planning-split-layout{flex-direction:column;overflow:visible}.route-planning-days-sidebar{white-space:nowrap;border-bottom:1px solid var(--border-color);flex-direction:row;width:100%;padding-bottom:12px;overflow-x:auto}.route-planning-day-card{flex-shrink:0;min-width:160px}.route-planning-day-card:hover{transform:none}.route-planning-day-card.active{transform:translateY(-2px)}.day-card-arrow{display:none}.route-planning-details-panel{width:100%;box-shadow:none;padding:16px}}.coordinators-list{flex-direction:column;gap:12px;width:100%;display:flex}.coordinator-entry-row{grid-template-columns:1fr 1fr 1fr;align-items:flex-end;gap:16px;width:100%;display:grid}.coordinator-field{flex-direction:column;gap:8px;min-width:0;display:flex}.phone-input-wrap{align-items:center;gap:8px;width:100%;display:flex}.phone-input-wrap input{flex:1;min-width:0}.btn-add-coordinator,.btn-remove-coordinator{cursor:pointer;width:38px;height:38px;color:var(--primary-orange);background:linear-gradient(#fffaf5 0%,#ffedd5 100%);border:1.5px solid #fed7aa;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;transition:all .2s;display:flex;box-shadow:0 1px 3px #2e6cb624}.btn-add-coordinator:hover{border-color:var(--primary-orange);background:linear-gradient(#ffedd5 0%,#fed7aa 100%);transform:translateY(-1px);box-shadow:0 3px 8px #2e6cb638}.btn-add-coordinator:active{transform:translateY(0)}.btn-remove-coordinator{color:var(--status-red);background:linear-gradient(#fffafb 0%,#ffebee 100%);border-color:#f5c4c4;box-shadow:0 1px 3px #ef44441a}.btn-remove-coordinator:hover{border-color:var(--status-red);background:linear-gradient(#ffebee 0%,#ffd8dc 100%);transform:translateY(-1px);box-shadow:0 3px 8px #ef44442e}.btn-remove-coordinator:active{transform:translateY(0)}body.dark-mode .btn-add-coordinator{color:#ffb366;background:linear-gradient(#2e6cb62e 0%,#2e6cb61a 100%);border-color:#2e6cb673}body.dark-mode .btn-add-coordinator:hover{border-color:var(--primary-orange);background:linear-gradient(#2e6cb647 0%,#2e6cb62e 100%)}body.dark-mode .btn-remove-coordinator{color:#ff8e8e;background:linear-gradient(#ef44442e 0%,#ef44441a 100%);border-color:#ef444473}body.dark-mode .btn-remove-coordinator:hover{border-color:var(--status-red);background:linear-gradient(#ef444447 0%,#ef44442e 100%)}.wifi-coordinators-view{flex-direction:column;gap:24px;padding:24px;animation:.4s ease-out fadeIn;display:flex}.wifi-coordinators-view[hidden]{display:none!important}.wifi-station-map-view{flex-direction:column;gap:24px;padding:24px;animation:.4s ease-out fadeIn;display:flex}.wifi-station-map-view[hidden]{display:none!important}.wifi-station-map-container{border-radius:var(--radius-lg);overflow:hidden}.wifi-station-map-container .map-view-shell{min-height:500px}.wifi-toolbar-filter{align-items:center;gap:8px;display:flex}.wifi-toolbar-filter label{color:var(--text-dark);white-space:nowrap;align-items:center;gap:4px;font-size:13px;font-weight:600;display:flex}.wifi-toolbar-filter label i{color:#8b5cf6;font-size:15px}.wifi-filter-select{border:1px solid var(--border-color);background:var(--bg-color);color:var(--text-dark);cursor:pointer;border-radius:8px;min-width:130px;padding:6px 12px;font-family:inherit;font-size:13px;transition:all .2s}.wifi-filter-select:focus{border-color:#8b5cf6;outline:none;box-shadow:0 0 0 3px #8b5cf626}body.dark-mode .wifi-filter-select{background:var(--card-bg);border-color:var(--border-color);color:var(--text-dark)}.wifi-station-marker{justify-content:center;align-items:center;display:flex;box-shadow:none!important;background:0 0!important;border:none!important}.wifi-station-marker:hover{z-index:1000!important}.wifi-station-marker:hover .wifi-station-container{transform:scale(1.18)}.wifi-station-container{box-sizing:border-box;justify-content:center;align-items:center;width:100%;height:100%;padding:5px;transition:transform .2s ease-in-out;display:flex;position:relative;box-shadow:0 3px 10px #00000038;background:#fff!important;border-radius:50%!important}.wifi-station-badge{color:#fff;z-index:10;text-shadow:0 1px 1px #0003;box-sizing:border-box;border:1.5px solid #fff;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 4px;font-family:Inter,Sarabun,sans-serif;font-size:10px;font-weight:700;display:flex;position:absolute;bottom:-4px;right:-4px;box-shadow:0 2px 5px #00000040}.wifi-station-svg{width:100%;height:100%}@media (width<=768px){.wifi-station-map-view .wifi-toolbar{flex-direction:column;gap:16px}.wifi-station-map-view .wifi-toolbar-controls{flex-direction:column;gap:8px}}.wifi-toolbar{background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);justify-content:space-between;align-items:center;gap:20px;padding:20px 24px;display:flex}.wifi-toolbar-title-wrap{align-items:center;gap:16px;display:flex}.wifi-toolbar-icon{color:#8b5cf6;background:#8b5cf61a;border:1px solid #8b5cf633;border-radius:12px;justify-content:center;align-items:center;width:46px;height:46px;font-size:22px;display:flex;box-shadow:0 4px 10px #8b5cf60d}body.dark-mode .wifi-toolbar-icon{color:#a78bfa;background:#8b5cf626;border-color:#8b5cf64d}.wifi-toolbar-title h3{color:var(--text-dark);margin:0 0 4px;font-family:Outfit,Sarabun,sans-serif;font-size:18px;font-weight:600}.wifi-toolbar-title p{color:var(--text-gray);margin:0;font-size:13px}.wifi-toolbar-controls{align-items:center;gap:12px;display:flex}.wifi-search-bar{width:240px;position:relative}.wifi-search-bar i{color:var(--text-gray);font-size:16px;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.wifi-search-bar input{border:1px solid var(--border-color);background:var(--bg-color);width:100%;color:var(--text-dark);border-radius:8px;padding:8px 12px 8px 36px;font-family:inherit;font-size:14px;transition:all .2s}.wifi-search-bar input:focus{border-color:#8b5cf6;outline:none;box-shadow:0 0 0 3px #8b5cf626}.wifi-map-search-btn{white-space:nowrap;align-items:center;gap:6px;height:38px;padding:0 14px;display:inline-flex}.wifi-stats-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;display:grid}.wifi-stat-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);align-items:center;gap:16px;padding:16px 20px;display:flex}.wifi-stat-card .wifi-stat-icon{color:#0ea5e9;background:#0ea5e91a;border:1px solid #0ea5e933;border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;font-size:20px;display:flex}body.dark-mode .wifi-stat-card .wifi-stat-icon{color:#38bdf8;background:#0ea5e926;border-color:#0ea5e94d}.wifi-stat-card:first-child .wifi-stat-icon{color:#10b981;background:#10b9811a;border-color:#10b98133}body.dark-mode .wifi-stat-card:first-child .wifi-stat-icon{color:#34d399;background:#10b98126;border-color:#10b9814d}.wifi-stat-card--submitted .wifi-stat-icon{color:#10b981;background:#10b9811a;border-color:#10b98133}body.dark-mode .wifi-stat-card--submitted .wifi-stat-icon{color:#34d399;background:#10b98126;border-color:#10b9814d}.wifi-stat-card--pending .wifi-stat-icon{color:#ef4444;background:#ef44441a;border-color:#ef444433}body.dark-mode .wifi-stat-card--pending .wifi-stat-icon{color:#f87171;background:#ef444426;border-color:#ef44444d}.wifi-stat-info{flex-direction:column;display:flex}.wifi-stat-value{color:var(--text-dark);font-family:Outfit,sans-serif;font-size:22px;font-weight:700;line-height:1.2}.wifi-stat-label{color:var(--text-gray);margin-top:2px;font-size:12px}.wifi-coordinators-container{box-shadow:none;background:0 0;border:none;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;padding:0;display:grid}@media (width>=1200px){.wifi-coordinators-container{grid-template-columns:repeat(4,1fr)}}.wifi-contact-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);flex-direction:column;justify-content:space-between;gap:12px;padding:14px 16px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.wifi-contact-card:before{content:"";background:linear-gradient(#8b5cf6,#6366f1);border-radius:4px 0 0 4px;width:4px;height:100%;position:absolute;top:0;left:0}.wifi-contact-card:hover{border-color:#8b5cf64d;transform:translateY(-3px);box-shadow:0 10px 25px #8b5cf61a}body.dark-mode .wifi-contact-card:hover{box-shadow:0 10px 25px #8b5cf633}.wifi-contact-header{align-items:center;gap:10px;display:flex}.wifi-contact-avatar{color:#8b5cf6;background:linear-gradient(135deg,#8b5cf61a 0%,#6366f11a 100%);border:1px solid #8b5cf626;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-family:Outfit,sans-serif;font-size:14px;font-weight:600;display:flex}body.dark-mode .wifi-contact-avatar{color:#d8b4fe;background:linear-gradient(135deg,#8b5cf633 0%,#6366f133 100%);border-color:#8b5cf640}.wifi-contact-title-wrap{flex-direction:column;flex:1;display:flex}.wifi-contact-name{color:var(--text-dark);margin-bottom:2px;font-size:15px;font-weight:600}.wifi-contact-body{border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color);flex-direction:column;gap:10px;padding:12px 0;display:flex}.wifi-contact-empty{background:var(--card-bg);border:1px dashed var(--border-color);border-radius:var(--radius-md);color:var(--text-gray);text-align:center;flex-direction:column;grid-column:1/-1;justify-content:center;align-items:center;padding:48px 24px;display:flex}.wifi-contact-empty i{color:var(--text-gray);opacity:.5;margin-bottom:12px;font-size:40px}.wifi-contact-empty h4{color:var(--text-dark);margin-bottom:4px;font-size:16px;font-weight:600}.wifi-contact-empty p{margin:0;font-size:13px}@media (width<=768px){.wifi-toolbar{flex-direction:column;align-items:stretch;gap:16px}.wifi-toolbar-controls{flex-direction:column;align-items:stretch}.wifi-search-bar{width:100%}.wifi-map-search-btn{justify-content:center;width:100%}}.wifi-contact-section{flex-direction:column;gap:8px;display:flex}.wifi-contact-section-title{color:var(--text-dark);align-items:center;gap:6px;margin-bottom:4px;font-size:13px;font-weight:600;display:flex}.wifi-contact-list-rows{flex-direction:column;gap:6px;display:flex}.wifi-contact-person-row{background:#00000005;border:1px solid #0000000a;border-radius:8px;justify-content:space-between;align-items:center;padding:6px 10px;display:flex}body.dark-mode .wifi-contact-person-row{background:#ffffff05;border-color:#ffffff0d}.wifi-contact-person-info{flex-direction:column;gap:1px;display:flex}.wifi-contact-person-name{color:var(--text-dark);font-size:12.5px;font-weight:600}.wifi-contact-person-phone{color:var(--text-gray);align-items:center;gap:4px;font-size:11px;display:flex}.wifi-contact-person-call-btn{background:#10b981;border-radius:6px;align-items:center;gap:4px;padding:3px 8px;font-size:10.5px;font-weight:600;transition:all .2s;display:inline-flex;color:#fff!important;text-decoration:none!important}.wifi-contact-person-call-btn:hover{background:#059669;transform:translateY(-1px)}.wifi-contact-card.theme-blue{background:linear-gradient(135deg,#e0f2fe80 0%,#fff9 100%)!important;border-color:#bae6fdcc!important}.wifi-contact-card.theme-blue:before{background:linear-gradient(#0284c7,#38bdf8)!important}.wifi-contact-card.theme-blue .wifi-contact-avatar{color:#0284c7!important;background:#0284c71a!important;border-color:#0284c726!important}.wifi-contact-card.theme-purple{background:linear-gradient(135deg,#f3e8ff80 0%,#fff9 100%)!important;border-color:#e9d5ffcc!important}.wifi-contact-card.theme-purple:before{background:linear-gradient(#8b5cf6,#c084fc)!important}.wifi-contact-card.theme-purple .wifi-contact-avatar{color:#8b5cf6!important;background:#8b5cf61a!important;border-color:#8b5cf626!important}.wifi-contact-card.theme-emerald{background:linear-gradient(135deg,#d1fae580 0%,#fff9 100%)!important;border-color:#a7f3d0cc!important}.wifi-contact-card.theme-emerald:before{background:linear-gradient(#10b981,#34d399)!important}.wifi-contact-card.theme-emerald .wifi-contact-avatar{color:#10b981!important;background:#10b9811a!important;border-color:#10b98126!important}.wifi-contact-card.theme-rose{background:linear-gradient(135deg,#fee4e680 0%,#fff9 100%)!important;border-color:#fecdd3cc!important}.wifi-contact-card.theme-rose:before{background:linear-gradient(#f43f5e,#fb7185)!important}.wifi-contact-card.theme-rose .wifi-contact-avatar{color:#f43f5e!important;background:#f43f5e1a!important;border-color:#f43f5e26!important}.wifi-contact-card.theme-amber{background:linear-gradient(135deg,#fef3c780 0%,#fff9 100%)!important;border-color:#fde68acc!important}.wifi-contact-card.theme-amber:before{background:linear-gradient(#f59e0b,#fbbf24)!important}.wifi-contact-card.theme-amber .wifi-contact-avatar{color:#f59e0b!important;background:#f59e0b1a!important;border-color:#f59e0b26!important}body.dark-mode .wifi-contact-card.theme-blue{background:linear-gradient(135deg,#0369a11f 0%,#1a202c99 100%)!important;border-color:#0369a166!important}body.dark-mode .wifi-contact-card.theme-blue .wifi-contact-avatar{color:#38bdf8!important;background:#38bdf826!important;border-color:#38bdf840!important}body.dark-mode .wifi-contact-card.theme-purple{background:linear-gradient(135deg,#6d28d91f 0%,#1a202c99 100%)!important;border-color:#6d28d966!important}body.dark-mode .wifi-contact-card.theme-purple .wifi-contact-avatar{color:#c084fc!important;background:#c084fc26!important;border-color:#c084fc40!important}body.dark-mode .wifi-contact-card.theme-emerald{background:linear-gradient(135deg,#0478571f 0%,#1a202c99 100%)!important;border-color:#04785766!important}body.dark-mode .wifi-contact-card.theme-emerald .wifi-contact-avatar{color:#34d399!important;background:#34d39926!important;border-color:#34d39940!important}body.dark-mode .wifi-contact-card.theme-rose{background:linear-gradient(135deg,#be184a1f 0%,#1a202c99 100%)!important;border-color:#be184a66!important}body.dark-mode .wifi-contact-card.theme-rose .wifi-contact-avatar{color:#fb7185!important;background:#fb718526!important;border-color:#fb718540!important}body.dark-mode .wifi-contact-card.theme-amber{background:linear-gradient(135deg,#b453091f 0%,#1a202c99 100%)!important;border-color:#b4530966!important}body.dark-mode .wifi-contact-card.theme-amber .wifi-contact-avatar{color:#fbbf24!important;background:#fbbf2426!important;border-color:#fbbf2440!important}.wifi-contact-card.theme-blue:hover{border-color:#7dd3fce6!important;box-shadow:0 10px 25px #0284c726!important}.wifi-contact-card.theme-purple:hover{border-color:#d8b4fee6!important;box-shadow:0 10px 25px #8b5cf626!important}.wifi-contact-card.theme-emerald:hover{border-color:#6ee7b7e6!important;box-shadow:0 10px 25px #10b98126!important}.wifi-contact-card.theme-rose:hover{border-color:#fca5b4e6!important;box-shadow:0 10px 25px #f43f5e26!important}.wifi-contact-card.theme-amber:hover{border-color:#fcd34de6!important;box-shadow:0 10px 25px #f59e0b26!important}body.dark-mode .wifi-contact-card.theme-blue:hover{border-color:#38bdf899!important;box-shadow:0 10px 25px #0369a14d!important}body.dark-mode .wifi-contact-card.theme-purple:hover{border-color:#c084fc99!important;box-shadow:0 10px 25px #6d28d94d!important}body.dark-mode .wifi-contact-card.theme-emerald:hover{border-color:#34d39999!important;box-shadow:0 10px 25px #0478574d!important}body.dark-mode .wifi-contact-card.theme-rose:hover{border-color:#fb718599!important;box-shadow:0 10px 25px #be184a4d!important}body.dark-mode .wifi-contact-card.theme-amber:hover{border-color:#fbbf2499!important;box-shadow:0 10px 25px #b453094d!important}.wifi-station-table th,.wifi-station-table td{border-bottom:1px solid var(--border-color);vertical-align:middle;padding:14px 20px}.wifi-station-table tbody tr{border-bottom:1px solid var(--border-color);transition:background-color .2s}.wifi-station-table tbody tr:hover{background-color:#8b5cf605!important}body.dark-mode .wifi-station-table tbody tr:hover{background-color:#ffffff05!important}.wifi-badge-count{color:#8b5cf6;background:#8b5cf61a;border:1px solid #8b5cf633;border-radius:999px;justify-content:center;align-items:center;padding:2px 8px;font-size:12px;font-weight:700;display:inline-flex}body.dark-mode .wifi-badge-count{color:#c4b5fd;background:#8b5cf633;border-color:#8b5cf64d}.wifi-location-list{flex-direction:column;gap:4px;display:flex}.wifi-location-tag{color:var(--text-dark);border:1px solid var(--border-color);background:#00000004;border-radius:6px;align-items:center;gap:4px;width:fit-content;padding:2px 8px;font-size:11.5px;display:inline-flex}body.dark-mode .wifi-location-tag{background:#ffffff05}.wifi-location-tag i{color:#8b5cf6;font-size:12px}.wifi-form-location-row .btn-remove-location-row{color:var(--status-red);cursor:pointer;background:0 0;border:1.5px solid #f5c4c4;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;transition:all .2s;display:inline-flex}.wifi-form-location-row .btn-remove-location-row:hover{background:var(--status-red-light);border-color:var(--status-red)}.menu-title-vpn-text,.menu-title-wifi-text{color:#1a365d!important;text-underline-offset:4px!important;letter-spacing:.5px!important;border-bottom:none!important;margin-bottom:8px!important;padding-bottom:4px!important;font-size:14.5px!important;font-weight:700!important;-webkit-text-decoration:underline #1a365d66!important;text-decoration:underline #1a365d66!important;display:block!important}body.dark-mode .menu-title-vpn-text,body.dark-mode .menu-title-wifi-text{color:#38bdf8!important;text-underline-offset:4px!important;border-bottom:none!important;-webkit-text-decoration:underline #38bdf866!important;text-decoration:underline #38bdf866!important}.menu-group.menu-group-vpn,.menu-group.menu-group-wifi{background:0 0!important;border:none!important;border-bottom:1px solid #13252c14!important;border-radius:0!important}body.dark-mode .menu-group.menu-group-vpn,body.dark-mode .menu-group.menu-group-wifi{background:0 0!important;border-bottom:1px solid #ffffff0f!important}:root{--bg-color:#f6f7f9;--sidebar-bg:#fff;--card-bg:#fff;--primary-orange:#2563eb;--primary-orange-light:#eff6ff;--primary-orange-hover:#1d4ed8;--status-green:#16a34a;--status-green-light:#f0fdf4;--status-red:#dc2626;--status-red-light:#fef2f2;--status-blue:#2563eb;--status-blue-light:#eff6ff;--text-dark:#111827;--text-primary:#111827;--text-secondary:#4b5563;--text-gray:#6b7280;--text-light:#9ca3af;--border-color:#d9dee7;--shadow-sm:0 1px 2px #0f172a0a;--shadow-md:0 1px 3px #0f172a14;--shadow-lg:0 8px 24px #0f172a1a;--radius-md:8px;--radius-lg:10px;--radius-xl:12px;--gemini-gradient:#2563eb;--gemini-glow-shadow:none}.gemini-aurora-bg{background:var(--bg-color)!important}.gemini-aurora-bg:after,.glow-orb,.orb-1,.orb-2,.orb-3{display:none!important}body{color:var(--text-dark);letter-spacing:0;background:var(--bg-color)!important}.sidebar{background:var(--sidebar-bg)!important;border-right:1px solid var(--border-color)!important;box-shadow:none!important}.sidebar-header{border-bottom:1px solid var(--border-color)}.logo-text h1,.breadcrumb h2,.card-header h3,.settings-card-header h4,.settings-hero h3{letter-spacing:0!important}.menu-group.menu-group-vpn,.menu-group.menu-group-wifi{border-bottom-color:var(--border-color)!important}.menu-title-vpn-text,.menu-title-wifi-text{text-transform:uppercase;color:#374151!important;letter-spacing:0!important;font-size:12px!important;text-decoration:none!important}.menu-item{color:#374151!important;border-radius:7px!important}.menu-item:hover{color:#111827!important;background:#f3f4f6!important;transform:none!important}.menu-item.active{color:#1d4ed8!important;box-shadow:none!important;background:#eaf1ff!important}.menu-item i,.menu-item.active i{color:currentColor!important}.main-content{background:var(--bg-color)!important}.topbar{align-items:center;border-bottom:1px solid var(--border-color)!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:#fffffff0!important}.topbar-start{align-items:center;padding-top:2px}.topbar-start .breadcrumb{white-space:nowrap;justify-content:flex-start;align-items:baseline;gap:8px;min-width:0;min-height:44px;display:flex}.topbar-start .breadcrumb span{flex-shrink:0;font-size:clamp(12px,1.1vw,14px);line-height:1.25}.topbar-start .breadcrumb h2{text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:0;font-size:clamp(20px,2vw,26px);line-height:1.2;overflow:hidden}.card,.stat-card,.route-card,.settings-card,.route-planning-day-card,.today-route-day-card,.wifi-stat-card,.wifi-contact-card,.check-new-location-list-panel,.check-new-location-detail-panel,.modal-container,.profile-dropdown,.arrival-clock-popover,.rest-stop-kind-popover{border:1px solid var(--border-color)!important;border-radius:var(--radius-lg)!important;box-shadow:var(--shadow-sm)!important;background:#fff!important}.card:hover,.stat-card:hover,.route-card:hover,.settings-card:hover,.wifi-contact-card:hover{box-shadow:var(--shadow-md)!important;border-color:#c8d0dc!important;transform:none!important}.card-header,.modal-header,.modal-footer,.selected-sidebar-header,.selected-sidebar-footer{border-color:var(--border-color)!important;background:#fff!important}.dashboard-controls,.summary-toolbar,.modal-plan-toolbar,.settings-hero,.settings-profile-top,.settings-profile-summary,.settings-option-row,.settings-info-grid>div{border:1px solid var(--border-color)!important;border-radius:var(--radius-lg)!important;box-shadow:none!important;background:#fff!important}.settings-hero{padding:18px 20px!important}.settings-icon,.settings-card-icon,.stat-icon,.wifi-stat-icon,.wifi-contact-avatar,.wifi-placeholder-icon{border:1px solid var(--border-color)!important;color:#374151!important;box-shadow:none!important;background:#f3f4f6!important;border-radius:8px!important}.stats-grid>.stat-card,.stats-grid>.stat-card:first-child,.stats-grid>.stat-card-circuits,.stats-grid>.stat-card.border-green,.stats-grid>.stat-card.border-blue,.stats-grid>.stat-card.border-red,.stats-grid>.stat-card-airport{background:#fff!important;border-left:3px solid #cbd5e1!important}.stats-grid>.stat-card:first-child,.route-card.route-type-target{border-left-color:#2563eb!important}.stats-grid>.stat-card.border-green,.route-card.route-type-vehicle{border-left-color:#16a34a!important}.stats-grid>.stat-card.border-blue,.route-card.route-type-airport{border-left-color:#0284c7!important}.stats-grid>.stat-card.border-red,.route-card.route-type-extra{border-left-color:#dc2626!important}.route-card.route-type-reststop{border-left-color:#7c3aed!important}.stat-value{color:#111827!important;font-weight:700!important}.stat-label,.stat-subtext,.sub-text,.summary-footnote,.footnote{color:var(--text-gray)!important}.btn,.icon-btn,.map-controls-toggle,.google-map-layer-btn,.settings-inspection-round-option,.settings-multiselect-toggle,input,select,textarea{font-family:var(--font-family);box-shadow:none!important;border-radius:7px!important}.btn{border:1px solid var(--border-color)!important;color:#111827!important;background:#fff!important;font-weight:600!important}.btn:hover{box-shadow:none!important;background:#f9fafb!important;border-color:#c8d0dc!important;transform:none!important}.btn-primary,.summary-export-btn,.check-new-location-export-btn,.geocode-alert-btn,.settings-inspection-round-save-btn,.settings-profile-edit-btn,.route-planning-edit-btn{color:#fff!important;background:#2563eb!important;border-color:#2563eb!important}.btn-primary:hover,.summary-export-btn:hover,.check-new-location-export-btn:hover,.geocode-alert-btn:hover,.settings-inspection-round-save-btn:hover,.settings-profile-edit-btn:hover,.route-planning-edit-btn:hover{color:#fff!important;background:#1d4ed8!important;border-color:#1d4ed8!important}.btn-outline,.btn-light-blue,.btn-light-orange,.btn-light-purple,.modal-plan-add-btn{border-color:var(--border-color)!important;color:#111827!important;background:#fff!important}.search-bar input,.form-group input,.form-group textarea,.form-group select,.modal-toolbar-select,.modal-toolbar-date-input,.fiscal-year-field select,.wifi-filter-select,.settings-list-select{border:1px solid var(--border-color)!important;color:#111827!important;background:#fff!important}input:focus,select:focus,textarea:focus,.search-bar input:focus,.modal-toolbar-select:focus,.modal-toolbar-date-input:focus{border-color:#2563eb!important;outline:none!important;box-shadow:0 0 0 3px #2563eb1f!important}.map-container,.map-view-shell,.map-view,.wifi-station-map-container{overflow:hidden;border-radius:var(--radius-lg)!important}.map-view{background:#e5e7eb!important}.map-footer-stats,.google-map-layer-controls,.google-map-layer-controls-content{border:1px solid var(--border-color)!important;box-shadow:var(--shadow-sm)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:#fff!important}.google-map-layer-btn.is-active,.settings-inspection-round-option.is-selected,.settings-inspection-round-option.is-active,.date-tabs .tab.active{color:#1d4ed8!important;box-shadow:none!important;background:#eff6ff!important;border-color:#bfdbfe!important}.route-card{border-left:3px solid #cbd5e1!important}.id-badge,.badge,.stat-badge,.status-tag,.route-extra-tag,.wifi-badge-count,.wifi-location-tag,.today-route-coord-badge{border:1px solid var(--border-color)!important;color:#374151!important;box-shadow:none!important;background:#f3f4f6!important;border-radius:6px!important}#planRouteModal .destination-block,#routeInsertPointFormHost .destination-block.route-insert-draft{border-color:var(--border-color)!important;border-radius:var(--radius-md)!important;background:#fff!important;border-left-width:3px!important}.modal-overlay{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:#11182775!important}body.dark-mode .sidebar,body.dark-mode .topbar,body.dark-mode .card,body.dark-mode .stat-card,body.dark-mode .route-card,body.dark-mode .settings-card,body.dark-mode .modal-container,body.dark-mode .profile-dropdown,body.dark-mode .dashboard-controls,body.dark-mode .summary-toolbar,body.dark-mode .modal-plan-toolbar,body.dark-mode .settings-hero,body.dark-mode .settings-profile-top,body.dark-mode .settings-profile-summary,body.dark-mode .settings-option-row,body.dark-mode .settings-info-grid>div,body.dark-mode .wifi-stat-card,body.dark-mode .wifi-contact-card{background:var(--card-bg)!important;border-color:var(--border-color)!important;box-shadow:none!important}body.dark-mode .sidebar{background:var(--sidebar-bg)!important}body.dark-mode .menu-item{color:#d1d5db!important}body.dark-mode .menu-item:hover{color:#fff!important;background:#1f2937!important}body.dark-mode .menu-item.active{color:#fff!important;background:#1e3a8a!important}body.dark-mode .btn,body.dark-mode .btn-outline,body.dark-mode .btn-light-blue,body.dark-mode .btn-light-orange,body.dark-mode .btn-light-purple,body.dark-mode .modal-plan-add-btn,body.dark-mode input,body.dark-mode select,body.dark-mode textarea{border-color:var(--border-color)!important;color:#f9fafb!important;background:#111827!important}body.dark-mode .btn-primary,body.dark-mode .summary-export-btn,body.dark-mode .check-new-location-export-btn,body.dark-mode .settings-inspection-round-save-btn{color:#fff!important;background:#2563eb!important;border-color:#2563eb!important}.main-content.view-route-planning .route-planning-edit-btn,#routePlanningView .route-planning-edit-btn,button[data-plan-edit-date].route-planning-edit-btn{color:#fff!important;background:#2563eb!important;border-color:#1d4ed8!important;border-radius:10px!important}.main-content.view-route-planning .route-planning-edit-btn i,#routePlanningView .route-planning-edit-btn i,button[data-plan-edit-date].route-planning-edit-btn i{color:#fff!important}.main-content.view-route-planning .route-planning-edit-btn:hover,#routePlanningView .route-planning-edit-btn:hover,button[data-plan-edit-date].route-planning-edit-btn:hover{color:#fff!important;background:#1d4ed8!important;border-color:#1e40af!important}.modal-container,.profile-dropdown,.arrival-clock-popover,.rest-stop-kind-popover,.route-insert-kind-popover,.route-insert-sub-kind-popover,.google-map-layer-controls,.google-map-layer-controls-content,.settings-multiselect-panel,.leaflet-popup-content-wrapper,.leaflet-popup-tip,.success-alert-modal,.delete-confirm-modal,.geocode-alert-modal,.route-insert-point-modal,.vpn-station-map-modal,.wifi-coord-modal{border-radius:16px!important}.leaflet-popup-content-wrapper{border:1px solid var(--border-color);overflow:hidden;box-shadow:var(--shadow-lg)!important}.leaflet-popup-tip{box-shadow:var(--shadow-sm)!important}body.dark-mode .main-content.view-route-planning .route-planning-edit-btn,body.dark-mode #routePlanningView .route-planning-edit-btn,body.dark-mode button[data-plan-edit-date].route-planning-edit-btn{color:#fff!important;background:#3b82f6!important;border-color:#60a5fa!important}.modal-container,.success-alert-modal,.delete-confirm-modal,.geocode-alert-modal,.route-insert-point-modal,.vpn-station-map-modal,.wifi-coord-modal{background-clip:padding-box!important;border-radius:20px!important;overflow:hidden!important}#planRouteModal .modal-container{background-clip:padding-box!important;border-radius:20px!important}.modal-container>.modal-header,#planRouteModal .modal-header{background-clip:padding-box!important;border-radius:20px 20px 0 0!important}.modal-container>.modal-footer,#planRouteModal .modal-footer{background-clip:padding-box!important;border-radius:0 0 20px 20px!important}.profile-dropdown,.arrival-clock-popover,.rest-stop-kind-popover,.route-insert-kind-popover,.route-insert-sub-kind-popover,.google-map-layer-controls,.google-map-layer-controls-content,.settings-multiselect-panel{background-clip:padding-box!important;border-radius:18px!important;overflow:hidden!important}.rest-stop-kind-option,.settings-multiselect-option{border-radius:12px!important}.leaflet-popup-content-wrapper{background-clip:padding-box!important;border-radius:18px!important;overflow:hidden!important}.leaflet-container a.leaflet-popup-close-button{border-radius:999px!important}body:not(.dark-mode):has(#fullscreen-dashboard-wrapper:not([hidden])) .main-content{background:#f5f7fa!important}body:not(.dark-mode):has(#fullscreen-dashboard-wrapper:not([hidden])) .topbar{background:#fbfcfd!important;border-bottom-color:#dde5ee!important}body:not(.dark-mode) #fullscreen-dashboard-wrapper:not([hidden]) .dashboard-controls{background:#f7f9fc!important;border-color:#dce5ee!important;box-shadow:0 1px 2px #0f172a0a!important}body:not(.dark-mode) #fullscreen-dashboard-wrapper:not([hidden]) .date-tabs{background:#eef3f8!important;border:1px solid #dbe3ec!important}body:not(.dark-mode) #fullscreen-dashboard-wrapper:not([hidden]) .date-tabs .tab{color:#516174!important}body:not(.dark-mode) #fullscreen-dashboard-wrapper:not([hidden]) .date-tabs .tab.active{color:#1d4ed8!important;background:#fff!important;border-color:#cbd9e7!important}body:not(.dark-mode) #fullscreen-dashboard-wrapper:not([hidden]) .dashboard-controls-inline-field{background:#fff!important;border-color:#dde5ee!important}body:not(.dark-mode) #fullscreen-dashboard-wrapper:not([hidden]) .stats-grid{background:#f9fbfd!important;border-color:#e1e9f2!important;box-shadow:inset 0 1px #ffffffd9,0 1px 2px #0f172a08!important}body:not(.dark-mode) #fullscreen-dashboard-wrapper:not([hidden]) .stats-grid>.stat-card{border-color:#e2e8f0!important;box-shadow:0 1px 2px #0f172a0a!important}body:not(.dark-mode) #fullscreen-dashboard-wrapper:not([hidden]) .stats-grid>.stat-card:first-child{background:#f7fbff!important}body:not(.dark-mode) #fullscreen-dashboard-wrapper:not([hidden]) .stats-grid>.stat-card-circuits{background:#f9f8ff!important}body:not(.dark-mode) #fullscreen-dashboard-wrapper:not([hidden]) .stats-grid>.stat-card.border-green{background:#f6fbf8!important}body:not(.dark-mode) #fullscreen-dashboard-wrapper:not([hidden]) .stats-grid>.stat-card.border-blue,body:not(.dark-mode) #fullscreen-dashboard-wrapper:not([hidden]) .stats-grid>.stat-card-airport{background:#f7fbfc!important}body:not(.dark-mode) #fullscreen-dashboard-wrapper:not([hidden]) .stats-grid>.stat-card.border-red{background:#fbf8f8!important}body:not(.dark-mode) #fullscreen-dashboard-wrapper:not([hidden]) .stat-value{color:#132238!important;-webkit-text-fill-color:currentColor!important}body:not(.dark-mode) #fullscreen-dashboard-wrapper:not([hidden]) .dashboard-layout>.map-container{background:#f7fafc!important;border-color:#dce5ee!important}body:not(.dark-mode) #fullscreen-dashboard-wrapper:not([hidden]) .dashboard-layout>.route-list-panel{background:#f8faf7!important;border-color:#dde7da!important}body:not(.dark-mode) #fullscreen-dashboard-wrapper:not([hidden]) .card-header,body:not(.dark-mode) #fullscreen-dashboard-wrapper:not([hidden]) .map-card-header{background:#ffffffd1!important;border-color:#e1e9f2!important}body:not(.dark-mode) #fullscreen-dashboard-wrapper:not([hidden]) .dashboard-layout>.route-list-panel .card-header{border-color:#dde7da!important}body:not(.dark-mode) #fullscreen-dashboard-wrapper:not([hidden]) .route-cards{background:#f5f8f4!important}body:not(.dark-mode) #fullscreen-dashboard-wrapper:not([hidden]) .route-card.route-type-target{background:#f7fbff!important}body:not(.dark-mode) #fullscreen-dashboard-wrapper:not([hidden]) .route-card.route-type-airport{background:#f7fbfc!important}body:not(.dark-mode) #fullscreen-dashboard-wrapper:not([hidden]) .route-card.route-type-vehicle{background:#f6fbf8!important}body:not(.dark-mode) #fullscreen-dashboard-wrapper:not([hidden]) .route-card.route-type-reststop{background:#f9f8ff!important}body:not(.dark-mode) #fullscreen-dashboard-wrapper:not([hidden]) .route-card.route-type-extra{background:#fbf8f8!important}body:not(.dark-mode) .main-content.view-route-planning,body:not(.dark-mode) .main-content.view-today-route,body:not(.dark-mode) .main-content.view-vpn-coordinators,body:not(.dark-mode) .main-content.view-check-new-location,body:not(.dark-mode) .main-content.view-summary-report{background:#f5f7fa!important}body:not(.dark-mode) .main-content.view-route-planning .topbar,body:not(.dark-mode) .main-content.view-today-route .topbar,body:not(.dark-mode) .main-content.view-vpn-coordinators .topbar,body:not(.dark-mode) .main-content.view-check-new-location .topbar,body:not(.dark-mode) .main-content.view-summary-report .topbar{background:#fbfcfd!important;border-bottom-color:#dde5ee!important}body:not(.dark-mode) .route-planning-hero,body:not(.dark-mode) .today-route-hero{background:#f8fafc!important;border:1px solid #dde5ee!important;border-radius:16px!important;margin:12px 0 14px!important;padding:16px 18px!important}body:not(.dark-mode) .route-planning-toolbar,body:not(.dark-mode) .check-new-location-controls,body:not(.dark-mode) .summary-toolbar,body:not(.dark-mode) #vpnCoordinatorsView .dashboard-controls{background:#f7f9fc!important;border-color:#dce5ee!important;box-shadow:0 1px 2px #0f172a0a!important}body:not(.dark-mode) .route-planning-days-sidebar,body:not(.dark-mode) .today-route-days-sidebar{box-sizing:border-box!important;background:#eef3f8!important;border:1px solid #dce5ee!important;border-radius:16px!important;padding:12px!important}body:not(.dark-mode) .route-planning-details-panel,body:not(.dark-mode) .today-route-details-panel,body:not(.dark-mode) .check-new-location-detail-panel{background:#fbfcfd!important;border-color:#dce5ee!important}body:not(.dark-mode) .route-planning-day-card,body:not(.dark-mode) .today-route-day-card,body:not(.dark-mode) .route-planning-row{background:#fff!important;border-color:#e0e7ef!important}body:not(.dark-mode) .route-planning-day-card.active,body:not(.dark-mode) .today-route-day-card.active{background:#f7fbff!important}body:not(.dark-mode) .route-planning-stat,body:not(.dark-mode) .today-route-stat{background:#fff!important;border-color:#e0e7ef!important;box-shadow:0 1px 2px #0f172a0a!important}body:not(.dark-mode) .route-planning-stat-value,body:not(.dark-mode) .today-route-stat-value,body:not(.dark-mode) .summary-kpi-value{color:#132238!important;-webkit-text-fill-color:currentColor!important}body:not(.dark-mode) .route-planning-strip,body:not(.dark-mode) .today-route-strip,body:not(.dark-mode) .today-route-meta-grid,body:not(.dark-mode) .route-planning-meta-grid,body:not(.dark-mode) .route-planning-vpn-summary{background:#f1f5f9!important;border-color:#dce5ee!important}body:not(.dark-mode) .check-new-location-layout{background:0 0!important}body:not(.dark-mode) .check-new-location-list{background:#f5f8f4!important}body:not(.dark-mode) .check-new-location-list-item{background:#fff!important;border-color:#e0e7ef!important}body:not(.dark-mode) .check-new-location-list-item.is-active{background:#f7fbff!important;border-color:#cbd9e7!important}body:not(.dark-mode) .coords-card,body:not(.dark-mode) .check-new-location-detail-empty,body:not(.dark-mode) .today-route-empty,body:not(.dark-mode) .summary-empty{background:#fff!important;border-color:#dce5ee!important}body:not(.dark-mode) .summary-kpi-grid,body:not(.dark-mode) #vpnCoordinatorsView .wifi-stats-grid{background:#f8fafc!important;border:1px solid #e1e9f2!important;border-radius:18px!important;padding:16px!important;box-shadow:inset 0 1px #ffffffd9,0 1px 2px #0f172a08!important}body:not(.dark-mode) .summary-kpi-card,body:not(.dark-mode) #vpnCoordinatorsView .wifi-stat-card{background:#fff!important;border-color:#e0e7ef!important;box-shadow:0 1px 2px #0f172a0a!important}body:not(.dark-mode) .summary-table-head,body:not(.dark-mode) .summary-table th{background:#f1f5f9!important;border-color:#dce5ee!important}body:not(.dark-mode) .summary-detail-row td{background:#f5f7fa!important}body:not(.dark-mode) .summary-detail-item{background:#fff!important;border-color:#e0e7ef!important}body:not(.dark-mode) #vpnCoordinatorsView .wifi-coordinators-container{background:#f7fafc!important;border:1px solid #dce5ee!important;border-radius:18px!important;padding:16px!important}body:not(.dark-mode) #vpnCoordinatorsView .wifi-contact-card{background:#fff!important;border-color:#e0e7ef!important}body:not(.dark-mode) #vpnCoordinatorsView .wifi-contact-card.theme-blue{background:#f7fbff!important}body:not(.dark-mode) #vpnCoordinatorsView .wifi-contact-card.theme-purple{background:#f9f8ff!important}body:not(.dark-mode) #vpnCoordinatorsView .wifi-contact-card.theme-emerald{background:#f6fbf8!important}body:not(.dark-mode) #vpnCoordinatorsView .wifi-contact-card.theme-rose{background:#fbf8f8!important}body:not(.dark-mode) #vpnCoordinatorsView .wifi-contact-card.theme-amber{background:#fbfaf4!important}body:not(.dark-mode) .main-content.view-route-planning{background:#f3f7fb!important}body:not(.dark-mode) .main-content.view-route-planning .topbar{background:#f9fcff!important;border-bottom-color:#d5e3f2!important}body:not(.dark-mode) .route-planning-hero{background:#eef6ff!important;border-color:#cfe2f6!important}body:not(.dark-mode) .route-planning-toolbar{background:#f8fbff!important;border-color:#d7e5f4!important}body:not(.dark-mode) .route-planning-stats{background:0 0!important}body:not(.dark-mode) .route-planning-stat{background:#fff!important;border-color:#d8e6f4!important}body:not(.dark-mode) .route-planning-days-sidebar{background:#eaf2fb!important;border-color:#d2e0ef!important}body:not(.dark-mode) .route-planning-details-panel{background:#fbfdff!important;border-color:#d6e4f2!important}body:not(.dark-mode) .route-planning-strip,body:not(.dark-mode) .route-planning-meta-grid,body:not(.dark-mode) .route-planning-vpn-summary{background:#f1f6fb!important;border-color:#d9e6f2!important}body:not(.dark-mode) .main-content.view-today-route{background:#f3f8f6!important}body:not(.dark-mode) .main-content.view-today-route .topbar{background:#f9fcfb!important;border-bottom-color:#d8e8e1!important}body:not(.dark-mode) .today-route-hero{background:#edf8f3!important;border-color:#d2e9dd!important}body:not(.dark-mode) .today-route-stats{background:0 0!important}body:not(.dark-mode) .today-route-stat{background:#fff!important;border-color:#dae9e1!important}body:not(.dark-mode) .today-route-days-sidebar{background:#eaf4ef!important;border-color:#d6e6dd!important}body:not(.dark-mode) .today-route-details-panel{background:#fbfdfc!important;border-color:#d7e7df!important}body:not(.dark-mode) .today-route-strip,body:not(.dark-mode) .today-route-meta-grid{background:#f1f7f4!important;border-color:#d9e7df!important}body:not(.dark-mode) .today-route-card{background:color-mix(in srgb, var(--card-accent,#16a34a) 6%, #fff)!important;border-color:color-mix(in srgb, var(--card-accent,#16a34a) 16%, #d9e7df)!important}body:not(.dark-mode) .main-content.view-check-new-location{background:#f5f8f4!important}body:not(.dark-mode) .main-content.view-check-new-location .topbar{background:#fbfdf9!important;border-bottom-color:#dce8d7!important}body:not(.dark-mode) .check-new-location-controls{background:#f8fbf6!important;border-color:#dce8d7!important}body:not(.dark-mode) .check-new-location-day-tabs{background:#edf5ea!important;border:1px solid #dbe8d6!important}body:not(.dark-mode) .check-new-location-list-panel{background:#f2f8ef!important;border-color:#d9e7d4!important}body:not(.dark-mode) .check-new-location-detail-panel{background:#fbfdf9!important;border-color:#dce8d7!important}body:not(.dark-mode) .check-new-location-map-wrap,body:not(.dark-mode) .check-new-location-coords-panel,body:not(.dark-mode) .check-new-location-compare{background:#f4f8f2!important;border-color:#dce8d7!important}body:not(.dark-mode) .coords-card--old{background:#f8fafc!important}body:not(.dark-mode) .coords-card--new{background:#f1f8f3!important}body:not(.dark-mode) .main-content.view-summary-report{background:#f4f7fb!important}body:not(.dark-mode) .main-content.view-summary-report .topbar{background:#fbfcff!important;border-bottom-color:#d9e3ef!important}body:not(.dark-mode) .summary-toolbar{background:#f8fbff!important;border-color:#d9e3ef!important}body:not(.dark-mode) .summary-kpi-scope{background:#eef5ff!important;border-color:#d5e4f6!important}body:not(.dark-mode) .summary-kpi-grid{background:#f7fafd!important;border-color:#dfe8f1!important}body:not(.dark-mode) .summary-kpi-card{background:#fff!important;border-color:#e0e7ef!important}body:not(.dark-mode) .summary-table-card{background:#fbfcff!important;border-color:#d9e3ef!important}body:not(.dark-mode) .summary-table-head{background:#eef4fa!important;border-color:#d9e3ef!important}body:not(.dark-mode) .summary-table th{background:#f2f6fb!important}body:not(.dark-mode) .summary-table tbody tr.summary-day-row:hover,body:not(.dark-mode) .summary-table tbody tr.summary-day-row.is-expanded{background:#eef5ff!important}body:not(.dark-mode) .main-content.view-vpn-coordinators{background:#f6f6fb!important}body:not(.dark-mode) .main-content.view-vpn-coordinators .topbar{background:#fbfbff!important;border-bottom-color:#e0def0!important}body:not(.dark-mode) #vpnCoordinatorsView .dashboard-controls{background:#f9f8ff!important;border-color:#e0def0!important}body:not(.dark-mode) #vpnCoordinatorsView .date-tabs{background:#f0eff8!important;border:1px solid #e0def0!important}body:not(.dark-mode) #vpnCoordinatorsView .wifi-stats-grid{background:#f8f8fc!important;border-color:#e3e2ee!important}body:not(.dark-mode) #vpnCoordinatorsView .wifi-stat-card{background:#fff!important;border-color:#e3e2ee!important}body:not(.dark-mode) #vpnCoordinatorsView .wifi-coordinators-container{background:#f8f8fc!important;border-color:#e3e2ee!important}body:not(.dark-mode) #vpnCoordinatorsView .wifi-contact-card{border-color:#e2e1ec!important;box-shadow:0 1px 2px #2825590a!important}.topbar .topbar-start{align-items:center!important;min-width:0!important}.topbar .topbar-start .breadcrumb{white-space:nowrap!important;flex-flow:row!important;align-items:baseline!important;gap:8px!important;min-width:0!important;display:flex!important}.topbar .topbar-start .breadcrumb span{flex:none!important}.topbar .topbar-start .breadcrumb h2{text-overflow:ellipsis!important;white-space:nowrap!important;flex:auto!important;min-width:0!important;margin:0!important;display:block!important;overflow:hidden!important}:root{--sidebar-panel-border:#bfdbfe;--sidebar-vpn:#2563eb;--sidebar-vpn-soft:#dbeafe;--sidebar-wifi:#059669;--sidebar-wifi-soft:#d1fae5;--sidebar-system:#7c3aed;--sidebar-system-soft:#ede9fe}.sidebar{border-right-color:var(--sidebar-panel-border)!important;background:linear-gradient(#f8fbff 0%,#eef6ff 52%,#f4fbf7 100%)!important}.sidebar-header{background:#ffffff8c;border-bottom-color:#2563eb2e!important}.menu-group{border-bottom-color:#2563eb29!important}.menu-title{color:#334155!important}.menu-title-vpn-text{color:var(--sidebar-vpn)!important}.menu-title-wifi-text{color:var(--sidebar-wifi)!important}.menu-group:not(.menu-group-vpn):not(.menu-group-wifi) .menu-title{color:var(--sidebar-system)!important}.menu-item{color:#334155!important}.menu-item i,.sidebar-collapse-icon{color:#64748b!important}.menu-group-vpn .menu-item:hover,.menu-group-vpn .menu-item.active{background:var(--sidebar-vpn-soft)!important;color:#1d4ed8!important}.menu-group-vpn .menu-item:hover i,.menu-group-vpn .menu-item.active i{color:var(--sidebar-vpn)!important}.menu-group-wifi .menu-item:hover,.menu-group-wifi .menu-item.active{background:var(--sidebar-wifi-soft)!important;color:#047857!important}.menu-group-wifi .menu-item:hover i,.menu-group-wifi .menu-item.active i{color:var(--sidebar-wifi)!important}.menu-group:not(.menu-group-vpn):not(.menu-group-wifi) .menu-item:hover,.menu-group:not(.menu-group-vpn):not(.menu-group-wifi) .menu-item.active{background:var(--sidebar-system-soft)!important;color:#6d28d9!important}.menu-group:not(.menu-group-vpn):not(.menu-group-wifi) .menu-item:hover i,.menu-group:not(.menu-group-vpn):not(.menu-group-wifi) .menu-item.active i,.menu-group:not(.menu-group-vpn):not(.menu-group-wifi) .menu-item:hover .sidebar-collapse-icon,.menu-group:not(.menu-group-vpn):not(.menu-group-wifi) .menu-item.active .sidebar-collapse-icon{color:var(--sidebar-system)!important}.sidebar-logout-btn{color:#b91c1c!important}.sidebar-logout-btn:hover{color:#991b1b!important;background:#fee2e2!important}#fullscreen-dashboard-wrapper>.dashboard-controls{background:linear-gradient(135deg,#eef6ff 0%,#f0fdf4 100%)!important;border-color:#bfdbfe!important;box-shadow:0 10px 24px #2563eb14!important}#fullscreen-dashboard-wrapper>.dashboard-controls .date-tabs{border:1px solid #2563eb24;background:#ffffffb8!important}#fullscreen-dashboard-wrapper>.dashboard-controls .dashboard-controls-inline-field{background:#ffffffc2!important;border-color:#2563eb29!important}#customFullscreenBtn{color:#1d4ed8!important;background:#dbeafe!important;border:1px solid #bfdbfe!important;box-shadow:0 2px 8px #2563eb1f!important}#customFullscreenBtn:hover{color:#1e40af!important;background:#bfdbfe!important;border-color:#93c5fd!important}.fullscreen-dashboard-wrapper:fullscreen #customFullscreenBtn{color:#b91c1c!important;background:#fee2e2!important;border-color:#fecaca!important;box-shadow:0 2px 8px #dc262624!important}.fullscreen-dashboard-wrapper:fullscreen #customFullscreenBtn:hover{color:#991b1b!important;background:#fecaca!important;border-color:#fca5a5!important}#fullscreen-dashboard-wrapper .map-card-header-main{flex-wrap:nowrap;gap:14px}#fullscreen-dashboard-wrapper .map-card-title{flex:none}#fullscreen-dashboard-wrapper .map-legend-row{flex-wrap:nowrap;flex:auto;min-width:0}#fullscreen-dashboard-wrapper .map-legend{flex:none;margin-top:0}#fullscreen-dashboard-wrapper .map-card-header .dashboard-map-search{flex:0 260px;gap:10px;min-height:42px;background:linear-gradient(135deg,#eff6ff 0%,#fff 58%,#f0fdf4 100%)!important;border:1px solid #bfdbfe!important;border-radius:999px!important;width:clamp(190px,18vw,260px)!important;max-width:min(260px,100%)!important;padding:5px 12px 5px 6px!important;box-shadow:0 8px 18px #2563eb14!important}#fullscreen-dashboard-wrapper .map-card-header .dashboard-map-search i{background:#dbeafe;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex;color:#1d4ed8!important;margin:0!important;font-size:16px!important}#fullscreen-dashboard-wrapper .map-card-header .dashboard-map-search input{min-width:0;height:30px;font-weight:600;color:#0f172a!important;background:0 0!important;font-size:13.5px!important}#fullscreen-dashboard-wrapper .map-card-header .dashboard-map-search input::placeholder{color:#64748b;font-weight:500}#fullscreen-dashboard-wrapper .map-card-header .dashboard-map-search:focus-within{background:#fff!important;border-color:#60a5fa!important;transform:none!important;box-shadow:0 0 0 4px #2563eb1f,0 10px 22px #2563eb1f!important}#fullscreen-dashboard-wrapper .map-card-header .dashboard-map-search:focus-within i{background:#2563eb;color:#fff!important}@media (width<=768px){#fullscreen-dashboard-wrapper .map-card-header-main,#fullscreen-dashboard-wrapper .map-legend-row,#fullscreen-dashboard-wrapper .map-legend{flex-wrap:wrap}#fullscreen-dashboard-wrapper .map-card-header .dashboard-map-search{flex-basis:100%;width:100%!important}}
