html,body{height:100%;width:100%;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}#app{height:100vh;height:100dvh;width:100%;display:flex;flex-direction:column}.gm-style *{box-sizing:content-box}.map-container,.map{height:100%;width:100%}.map-container[data-v-e05007b7]{width:100%;height:100%;position:relative}.map[data-v-e05007b7]{width:100%;height:100%}.loading-overlay[data-v-e05007b7]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;padding:2rem;border-radius:8px;box-shadow:0 4px 6px #0000001a;display:flex;flex-direction:column;align-items:center;gap:1rem}.spinner[data-v-e05007b7]{border:3px solid #f3f4f6;border-top:3px solid #3B82F6;border-radius:50%;width:40px;height:40px;animation:spin-e05007b7 1s linear infinite}@keyframes spin-e05007b7{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.radar-timeline[data-v-e05007b7]{position:absolute;bottom:1.5rem;right:.75rem;z-index:2;display:flex;align-items:center;gap:.5rem;background:#1a202ce6;border:1px solid #4a5568;border-radius:6px;padding:.35rem .6rem;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.rt-btn[data-v-e05007b7]{background:none;border:none;color:#60a5fa;cursor:pointer;padding:2px;display:flex;align-items:center}.rt-btn[data-v-e05007b7]:hover{color:#93c5fd}.rt-slider[data-v-e05007b7]{width:160px;height:4px;-webkit-appearance:none;appearance:none;background:#374151;border-radius:2px;outline:none;cursor:pointer}.rt-slider[data-v-e05007b7]::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;border-radius:50%;background:#60a5fa;border:2px solid #1a202c;cursor:pointer}.rt-time[data-v-e05007b7]{font-size:.65rem;color:#9ca3af;min-width:52px;text-align:right;white-space:nowrap}.cluster-toast[data-v-e05007b7]{position:absolute;top:.75rem;left:50%;transform:translate(-50%);z-index:3;background:#1a202ce6;border:1px solid #4a5568;border-radius:6px;padding:.35rem .75rem;color:#d1d5db;font-size:.75rem;font-weight:600;white-space:nowrap;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);pointer-events:none}.toast-fade-enter-active[data-v-e05007b7]{transition:opacity .15s}.toast-fade-leave-active[data-v-e05007b7]{transition:opacity .4s}.toast-fade-enter-from[data-v-e05007b7],.toast-fade-leave-to[data-v-e05007b7]{opacity:0}.map-container[data-v-e05007b7] .vl-wrap{transform:translateY(-30px);white-space:nowrap;transition:opacity .15s}.map-container[data-v-e05007b7] .vl-badge{background:#111827e6;border-radius:4px;padding:3px 8px 3px 6px;display:inline-flex;align-items:center;gap:4px;position:relative}.map-container[data-v-e05007b7] .vl-dot{display:inline-block;width:7px;height:7px;border-radius:50%;flex-shrink:0}.map-container[data-v-e05007b7] .vl-text{color:#fff;font-size:10px;font-family:Arial,sans-serif;font-weight:600}.map-container[data-v-e05007b7] .vl-arrow{position:absolute;bottom:-5px;left:50%;transform:translate(-50%);width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid rgba(17,24,39,.9)}.map-container[data-v-e05007b7] .jl-wrap{white-space:nowrap;transition:opacity .15s;cursor:pointer}.map-container[data-v-e05007b7] .jl-badge{background:#fffffff2;border:1.5px solid #3B82F6;border-radius:4px;padding:3px 9px;display:inline-flex;align-items:center;position:relative;box-shadow:0 1px 3px #00000026}.map-container[data-v-e05007b7] .jl-text{color:#1f2937;font-size:11px;font-family:Arial,sans-serif;font-weight:600;max-width:160px;overflow:hidden;text-overflow:ellipsis}.map-container[data-v-e05007b7] .jl-badge.jl-two{padding:4px 9px}.map-container[data-v-e05007b7] .jl-two .jl-text{display:flex;flex-direction:column;line-height:1.28;text-align:center;overflow:visible}.map-container[data-v-e05007b7] .jl-two .jl-date{font-size:10px;font-weight:600;color:#6b7c80;margin-top:1px;letter-spacing:.01em}.map-container[data-v-e05007b7] .jl-arrow{position:absolute;bottom:-5px;left:50%;transform:translate(-50%);width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid #3B82F6}.map-container[data-v-e05007b7] .jl-selected .jl-badge{padding:4px 10px;box-shadow:0 2px 6px #00000040}.map-container[data-v-e05007b7] .jl-selected .jl-text{font-size:12px;max-width:180px}.map-container[data-v-e05007b7] .jl-bounce{animation:jlBounce-e05007b7 .7s ease}@keyframes jlBounce-e05007b7{0%,to{transform:translateY(0)}15%{transform:translateY(-18px)}30%{transform:translateY(0)}45%{transform:translateY(-10px)}60%{transform:translateY(0)}75%{transform:translateY(-4px)}90%{transform:translateY(0)}}.map-container[data-v-e05007b7] .marker-pulse{animation:markerPulse-e05007b7 .8s ease-out}@keyframes markerPulse-e05007b7{0%,to{scale:1}25%{scale:1.6}50%{scale:.9}75%{scale:1.2}}.search-bar[data-v-e585093c]{position:relative;display:flex;align-items:center;width:300px;min-width:200px;background:var(--surface, white);border-radius:24px;box-shadow:0 2px 6px var(--shadow, rgba(0,0,0,.15)),0 1px 3px var(--shadow, rgba(0,0,0,.1));padding:0 4px 0 12px;height:40px;flex-shrink:0}.search-icon[data-v-e585093c]{display:flex;align-items:center;flex-shrink:0;margin-right:8px;color:var(--text-secondary, #5f6368)}.search-input[data-v-e585093c]{flex:1;border:none;outline:none;font-size:14px;font-family:inherit;color:var(--text-primary, #202124);background:transparent;min-width:0}.search-input[data-v-e585093c]::placeholder{color:var(--text-muted, #9aa0a6)}.search-clear[data-v-e585093c]{display:flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;color:#5f6368;padding:4px;border-radius:50%;flex-shrink:0}.search-clear[data-v-e585093c]:hover{background:var(--surface-hover, #f1f3f4)}.search-results[data-v-e585093c]{position:absolute;top:calc(100% + 6px);left:0;right:0;background:var(--surface, white);border-radius:12px;box-shadow:0 4px 16px #00000029;max-height:300px;overflow-y:auto;z-index:30}.search-result-item[data-v-e585093c]{padding:10px 16px;cursor:pointer;transition:background .1s}.search-result-item[data-v-e585093c]:hover{background:var(--surface-hover, #f1f3f4)}.search-group+.search-group[data-v-e585093c]{border-top:1px solid var(--border, #dadce0)}.search-group-header[data-v-e585093c]{padding:8px 16px 4px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.6px;color:var(--text-muted, #9aa0a6)}.result-primary[data-v-e585093c]{font-size:13px;font-weight:500;color:var(--text-primary, #202124)}.result-secondary[data-v-e585093c]{font-size:11px;color:var(--text-secondary, #5f6368);margin-top:2px}.data-pill[data-v-dfcf79b1]{display:flex;align-items:center;gap:6px;padding:8px 14px;border:none;background:var(--surface, white);color:var(--pill-inactive, #5f6368);font-size:13px;font-weight:500;cursor:pointer;border-radius:20px;transition:all .15s;white-space:nowrap;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;box-shadow:0 1px 3px var(--shadow, rgba(0,0,0,.12)),0 1px 2px var(--shadow, rgba(0,0,0,.08));font-family:inherit;line-height:1}.data-pill[data-v-dfcf79b1]:hover{box-shadow:0 2px 6px var(--shadow-strong, rgba(0,0,0,.16)),0 1px 3px var(--shadow, rgba(0,0,0,.1))}.data-pill.active[data-v-dfcf79b1]{color:var(--c)}.data-pill.sidebar-open[data-v-dfcf79b1]{background:color-mix(in srgb,var(--c) 12%,var(--surface, white));box-shadow:0 1px 3px #0000001f,0 1px 2px #00000014,inset 0 0 0 1.5px var(--c)}.pill-eye[data-v-dfcf79b1]{display:flex;align-items:center;flex-shrink:0;color:var(--border-strong, #c6c9cd);transition:all .15s;cursor:pointer}.pill-eye[data-v-dfcf79b1]:hover{color:var(--c);transform:scale(1.15)}.data-pill.active .pill-eye[data-v-dfcf79b1]{color:var(--c)}.pill-label[data-v-dfcf79b1]{cursor:pointer}.data-pill.long-pressing[data-v-dfcf79b1]{transform:scale(.95);opacity:.7}.toggle-pill[data-v-de1dada7]{display:flex;align-items:center;padding:8px 14px;border:none;background:var(--surface, white);color:var(--pill-inactive, #5f6368);font-size:13px;font-weight:500;cursor:pointer;border-radius:20px;transition:all .15s;white-space:nowrap;box-shadow:0 1px 3px var(--shadow, rgba(0,0,0,.12)),0 1px 2px var(--shadow, rgba(0,0,0,.08));font-family:inherit;line-height:1}.toggle-pill[data-v-de1dada7]:hover{box-shadow:0 2px 6px var(--shadow-strong, rgba(0,0,0,.16)),0 1px 3px var(--shadow, rgba(0,0,0,.1))}.toggle-pill.active[data-v-de1dada7]{color:var(--c);background:color-mix(in srgb,var(--c) 10%,var(--surface, white));box-shadow:0 1px 3px #0000001f,0 1px 2px #00000014,inset 0 0 0 1.5px var(--c)}.pill-bar[data-v-b6af27ef]{display:flex;align-items:center;gap:8px;position:relative}.hamburger-btn[data-v-b6af27ef],.mobile-user-menu[data-v-b6af27ef]{display:none}.pill-list[data-v-b6af27ef]{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.layers-pill[data-v-b6af27ef]{display:flex;align-items:center;gap:6px;padding:8px 14px;border:none;background:var(--surface, white);color:var(--pill-inactive, #5f6368);font-size:13px;font-weight:500;cursor:pointer;border-radius:20px;transition:all .15s;white-space:nowrap;box-shadow:0 1px 3px var(--shadow, rgba(0,0,0,.12)),0 1px 2px var(--shadow, rgba(0,0,0,.08));font-family:inherit;line-height:1}.layers-pill[data-v-b6af27ef]:hover{box-shadow:0 2px 6px var(--shadow-strong, rgba(0,0,0,.16)),0 1px 3px var(--shadow, rgba(0,0,0,.1))}.layers-pill.sidebar-open[data-v-b6af27ef]{background:var(--surface-hover, #f0f4f9);box-shadow:0 1px 3px var(--shadow, rgba(0,0,0,.12)),0 1px 2px var(--shadow, rgba(0,0,0,.08)),inset 0 0 0 1.5px var(--pill-inactive, #5f6368)}@media(max-width:600px){.pill-bar[data-v-b6af27ef]{margin-left:auto}.hamburger-btn[data-v-b6af27ef]{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;background:var(--surface, white);color:var(--pill-inactive, #5f6368);border-radius:50%;cursor:pointer;box-shadow:0 1px 3px var(--shadow, rgba(0,0,0,.12)),0 1px 2px var(--shadow, rgba(0,0,0,.08));flex-shrink:0}.pill-list[data-v-b6af27ef]{display:none;position:absolute;top:48px;right:0;flex-direction:column;align-items:flex-end;gap:6px;z-index:10}.pill-list.open[data-v-b6af27ef]{display:flex}.mobile-user-menu[data-v-b6af27ef]{display:block;--nolan-avatar-bg: var(--surface, white);--nolan-avatar-color: var(--text-secondary, #5f6368);--nolan-avatar-border: transparent;filter:drop-shadow(0 1px 3px var(--shadow, rgba(0,0,0,.12))) drop-shadow(0 1px 2px var(--shadow, rgba(0,0,0,.08)))}}.section-label[data-v-f8ffbaad]{font-size:11px;color:var(--text-secondary, #5f6368);font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.checkbox-row[data-v-f8ffbaad]{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;cursor:pointer;font-size:13px;color:var(--text-primary, #202124);transition:background .1s}.checkbox-row[data-v-f8ffbaad]:hover{background:var(--surface-hover, #f1f3f4)}.checkbox-row input[type=checkbox][data-v-f8ffbaad]{accent-color:#3B82F6;cursor:pointer}.row-label[data-v-f8ffbaad]{flex:1}.row-count[data-v-f8ffbaad]{color:var(--text-secondary, #5f6368);font-size:12px}.divider[data-v-f8ffbaad]{border:none;border-top:1px solid var(--sidebar-border, #e5e7eb);margin:10px 0}.filter-row[data-v-f8ffbaad]{display:flex;align-items:center;gap:10px;padding:4px 0}.filter-row.indented[data-v-f8ffbaad]{padding-left:16px}.filter-label[data-v-f8ffbaad]{font-size:13px;color:var(--text-primary, #202124)}.filter-label.bold[data-v-f8ffbaad]{font-weight:600}.toggle-switch[data-v-f8ffbaad]{position:relative;display:inline-block;width:36px;height:20px;flex-shrink:0}.toggle-switch input[data-v-f8ffbaad]{opacity:0;width:0;height:0}.slider[data-v-f8ffbaad]{position:absolute;cursor:pointer;inset:0;background-color:var(--toggle-track, #dadce0);transition:.2s;border-radius:20px}.slider[data-v-f8ffbaad]:before{position:absolute;content:"";height:14px;width:14px;left:3px;bottom:3px;background-color:#fff;transition:.2s;border-radius:50%}.toggle-switch input:checked+.slider[data-v-f8ffbaad]{background-color:var(--switch-color)}.toggle-switch input:checked+.slider[data-v-f8ffbaad]:before{transform:translate(16px)}.reset-btn[data-v-f8ffbaad]{width:100%;margin-top:12px;padding:8px;border:1px solid var(--border, #dadce0);border-radius:8px;background:transparent;color:var(--text-secondary, #5f6368);font-size:13px;cursor:pointer;transition:all .15s;font-family:inherit}.reset-btn[data-v-f8ffbaad]:hover{background:var(--surface-hover, #f1f3f4);border-color:#c6c9cd}.section-label[data-v-a2639c68]{font-size:11px;color:var(--text-secondary, #5f6368);font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.checkbox-row[data-v-a2639c68]{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;cursor:pointer;font-size:13px;color:var(--text-primary, #202124);transition:background .1s}.checkbox-row[data-v-a2639c68]:hover{background:var(--surface-hover, #f1f3f4)}.checkbox-row input[type=checkbox][data-v-a2639c68]{accent-color:#3B82F6;cursor:pointer}.row-label[data-v-a2639c68]{flex:1}.row-count[data-v-a2639c68]{color:var(--text-secondary, #5f6368);font-size:12px}.divider[data-v-a2639c68]{border:none;border-top:1px solid var(--sidebar-border, #e5e7eb);margin:10px 0}.filter-row[data-v-a2639c68]{display:flex;align-items:center;gap:10px;padding:4px 0}.filter-label[data-v-a2639c68]{font-size:13px;color:var(--text-primary, #202124)}.toggle-switch[data-v-a2639c68]{position:relative;display:inline-block;width:36px;height:20px;flex-shrink:0}.toggle-switch input[data-v-a2639c68]{opacity:0;width:0;height:0}.slider[data-v-a2639c68]{position:absolute;cursor:pointer;inset:0;background-color:var(--toggle-track, #dadce0);transition:.2s;border-radius:20px}.slider[data-v-a2639c68]:before{position:absolute;content:"";height:14px;width:14px;left:3px;bottom:3px;background-color:#fff;transition:.2s;border-radius:50%}.toggle-switch input:checked+.slider[data-v-a2639c68]{background-color:var(--switch-color)}.toggle-switch input:checked+.slider[data-v-a2639c68]:before{transform:translate(16px)}.field-group[data-v-a2639c68]{display:flex;flex-direction:column;gap:4px;margin-bottom:10px}.field-label[data-v-a2639c68]{font-size:11px;color:var(--text-secondary, #5f6368);font-weight:500}.field-select[data-v-a2639c68]{background:var(--input-bg, #f8f9fa);color:var(--text-primary, #202124);border:1px solid var(--border, #dadce0);border-radius:6px;padding:8px 10px;font-size:13px;cursor:pointer;font-family:inherit}.field-select[data-v-a2639c68]:focus{outline:none;border-color:#3b82f6}.field-input[data-v-a2639c68]{background:var(--input-bg, #f8f9fa);color:var(--text-primary, #202124);border:1px solid var(--border, #dadce0);border-radius:6px;padding:8px 10px;font-size:13px;font-family:inherit}.field-input[data-v-a2639c68]:focus{outline:none;border-color:#3b82f6}.button-group[data-v-a2639c68]{display:flex;gap:6px}.type-btn[data-v-a2639c68]{flex:1;padding:7px 10px;border:1px solid var(--border, #dadce0);border-radius:6px;background:transparent;color:var(--text-secondary, #5f6368);font-size:12px;cursor:pointer;transition:all .15s;font-family:inherit}.type-btn[data-v-a2639c68]:hover{border-color:#c6c9cd;color:var(--text-primary, #202124)}.type-btn.active[data-v-a2639c68]{border-color:#3b82f6;color:#3b82f6;background:#3b82f614}.reset-btn[data-v-a2639c68]{width:100%;margin-top:12px;padding:8px;border:1px solid var(--border, #dadce0);border-radius:8px;background:transparent;color:var(--text-secondary, #5f6368);font-size:13px;cursor:pointer;transition:all .15s;font-family:inherit}.reset-btn[data-v-a2639c68]:hover{background:var(--surface-hover, #f1f3f4);border-color:#c6c9cd}.section-label[data-v-7099cd86]{font-size:11px;color:var(--text-secondary, #5f6368);font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.checkbox-row[data-v-7099cd86]{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;cursor:pointer;font-size:13px;color:var(--text-primary, #202124);transition:background .1s}.checkbox-row[data-v-7099cd86]:hover{background:var(--surface-hover, #f1f3f4)}.checkbox-row input[type=checkbox][data-v-7099cd86]{accent-color:#0891B2;cursor:pointer}.row-label[data-v-7099cd86]{flex:1}.estimator-rows[data-v-7099cd86]{margin:0 -16px 2px}.estimator-rows .checkbox-row[data-v-7099cd86]{padding-left:16px;padding-right:16px;border-radius:0}.estimator-rows .checkbox-row+.checkbox-row[data-v-7099cd86]{border-top:1px solid #eef0f1}.row-all .row-label[data-v-7099cd86]{font-weight:600}.checkbox-row.is-muted .row-label[data-v-7099cd86]{color:var(--text-muted, #9aa0a6)}.count-pill[data-v-7099cd86]{font-size:11px;font-weight:600;font-variant-numeric:tabular-nums;padding:2px 9px;border-radius:11px;min-width:26px;text-align:center}.count-pill.full[data-v-7099cd86]{background:#0891b21f;color:#0891b2}.count-pill.dim[data-v-7099cd86]{background:#eff1f2;color:var(--text-muted, #9aa0a6);font-weight:500}.divider[data-v-7099cd86]{border:none;border-top:1px solid var(--sidebar-border, #e5e7eb);margin:10px 0}.range-group[data-v-7099cd86]{display:flex;gap:6px;margin-bottom:10px}.range-btn[data-v-7099cd86]{flex:1;padding:7px 10px;border:1px solid var(--border, #dadce0);border-radius:6px;background:transparent;color:var(--text-secondary, #5f6368);font-size:12px;cursor:pointer;transition:all .15s;font-family:inherit}.range-btn[data-v-7099cd86]:hover{border-color:#c6c9cd;color:var(--text-primary, #202124)}.range-btn.active[data-v-7099cd86]{border-color:#0891b2;color:#0891b2;background:#0891b214}.reset-btn[data-v-7099cd86]{width:100%;padding:8px;border:1px solid var(--border, #dadce0);border-radius:8px;background:transparent;color:var(--text-secondary, #5f6368);font-size:13px;cursor:pointer;transition:all .15s;font-family:inherit}.reset-btn[data-v-7099cd86]:hover{background:var(--surface-hover, #f1f3f4);border-color:#c6c9cd}.schedule-header[data-v-7099cd86]{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.schedule-nav[data-v-7099cd86]{display:flex;align-items:center;gap:6px;flex:1;min-width:0}.schedule-title[data-v-7099cd86]{font-size:13px;font-weight:600;color:var(--text-primary, #202124);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-arrow[data-v-7099cd86]{background:none;border:none;color:var(--text-secondary, #5f6368);cursor:pointer;font-size:12px;padding:3px 5px;border-radius:4px;transition:color .15s,background .15s;flex-shrink:0}.nav-arrow[data-v-7099cd86]:hover{color:#0891b2;background:#0891b21a}.count-badge[data-v-7099cd86]{background:#0891b2;color:#fff;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:600;flex-shrink:0}.count-badge.small[data-v-7099cd86]{font-size:10px;padding:1px 6px}.schedule-empty[data-v-7099cd86]{text-align:center;color:var(--text-muted, #9aa0a6);padding:24px 12px;font-size:13px}.estimator-group[data-v-7099cd86]{margin-bottom:12px}.estimator-name[data-v-7099cd86]{font-weight:600;color:#0891b2;font-size:12px;margin-bottom:4px;padding-left:4px}.schedule-item[data-v-7099cd86]{display:flex;gap:8px;padding:8px;margin-bottom:2px;border-radius:6px;background:var(--input-bg, #f8f9fa);transition:background .15s,opacity .15s;cursor:pointer}.schedule-item[data-v-7099cd86]:hover{background:#0891b21a}.schedule-item.is-past[data-v-7099cd86]{opacity:.4}.item-time[data-v-7099cd86]{flex-shrink:0;font-size:11px;color:var(--text-secondary, #5f6368);font-weight:600;min-width:60px}.item-details[data-v-7099cd86]{flex:1;min-width:0}.item-customer[data-v-7099cd86]{font-size:13px;color:var(--text-primary, #202124);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.item-location[data-v-7099cd86]{font-size:11px;color:var(--text-secondary, #5f6368);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.day-section[data-v-7099cd86]{border-bottom:1px solid var(--sidebar-border, #e5e7eb)}.day-section[data-v-7099cd86]:last-child{border-bottom:none}.day-section.is-past-day[data-v-7099cd86]{opacity:.5}.day-header[data-v-7099cd86]{display:flex;align-items:center;gap:8px;padding:8px 6px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s}.day-header[data-v-7099cd86]:hover{background:var(--surface-hover, #f1f3f4)}.day-chevron[data-v-7099cd86]{font-size:11px;color:var(--text-secondary, #5f6368);width:12px;text-align:center}.day-label[data-v-7099cd86]{flex:1;font-size:13px;font-weight:600;color:var(--text-primary, #202124)}.day-header-empty[data-v-7099cd86]{cursor:default;opacity:.5}.day-header-empty[data-v-7099cd86]:hover{background:transparent}.empty-badge[data-v-7099cd86]{background:#e8eaed;color:var(--text-muted, #9aa0a6);padding:1px 6px;border-radius:12px;font-size:10px;flex-shrink:0}.day-content[data-v-7099cd86]{padding:0 4px 8px}.section-label[data-v-74b232dc]{font-size:11px;color:var(--text-secondary, #5f6368);font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.checkbox-row[data-v-74b232dc]{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;cursor:pointer;font-size:13px;color:var(--text-primary, #202124);transition:background .1s}.checkbox-row[data-v-74b232dc]:hover{background:var(--surface-hover, #f1f3f4)}.checkbox-row input[type=checkbox][data-v-74b232dc],.checkbox-row input[type=radio][data-v-74b232dc]{accent-color:#3B82F6;cursor:pointer}.layer-dot[data-v-74b232dc]{width:8px;height:8px;border-radius:50%;flex-shrink:0}.divider[data-v-74b232dc]{border:none;border-top:1px solid var(--sidebar-border, #e5e7eb);margin:10px 0}.layer-spinner[data-v-74b232dc]{display:inline-block;width:12px;height:12px;border:2px solid var(--border, #dadce0);border-top:2px solid #3B82F6;border-radius:50%;animation:spin-74b232dc 1s linear infinite;margin-left:4px;flex-shrink:0}@keyframes spin-74b232dc{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.section-label[data-v-1811790e]{font-size:11px;color:var(--text-secondary, #5f6368);font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.weather-row[data-v-1811790e]{display:flex;align-items:center;gap:8px;margin-bottom:6px}.weather-row input[type=range][data-v-1811790e]{flex:1;height:4px;-webkit-appearance:none;appearance:none;background:var(--toggle-track, #dadce0);border-radius:2px;outline:none;cursor:pointer}.weather-row input[type=range][data-v-1811790e]::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:#3b82f6;border:2px solid white;cursor:pointer;box-shadow:0 1px 3px #0003}.weather-value[data-v-1811790e]{flex:0 0 32px;font-size:11px;color:var(--text-secondary, #5f6368);text-align:right}.weather-select[data-v-1811790e]{flex:1;padding:4px 6px;border:1px solid var(--border, #dadce0);border-radius:4px;background:var(--surface, #fff);color:var(--text-primary, #202124);font-size:12px;font-family:inherit;cursor:pointer;outline:none}.weather-select[data-v-1811790e]:focus{border-color:#3b82f6}.sidebar-divider[data-v-1811790e]{height:1px;background:var(--border, #dadce0);margin:14px 0}.toggle-row[data-v-1811790e]{display:flex;align-items:center;gap:8px;padding:4px 0;cursor:pointer;-webkit-user-select:none;user-select:none}.toggle-row input[type=checkbox][data-v-1811790e]{width:14px;height:14px;accent-color:#3B82F6;cursor:pointer;flex-shrink:0}.toggle-text[data-v-1811790e]{font-size:12px;color:var(--text-primary, #202124)}.location-display[data-v-1811790e]{display:flex;align-items:center;gap:6px;padding:4px 0}.location-icon[data-v-1811790e]{color:var(--text-secondary, #5f6368);flex-shrink:0}.location-name[data-v-1811790e]{font-size:12px;font-weight:500;color:var(--text-primary, #202124);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.location-hint[data-v-1811790e]{font-size:10px;color:var(--text-muted, #9aa0a6);font-style:italic;margin-top:2px}.detail-name[data-v-9ba57f47]{font-size:16px;font-weight:600;color:var(--text-primary, #202124);margin:0 0 4px;line-height:1.3}.po-number[data-v-9ba57f47]{font-size:12px;color:var(--text-secondary, #5f6368);margin-bottom:4px}.address[data-v-9ba57f47]{font-size:13px;color:#1a73e8;text-decoration:none;margin-bottom:4px;display:block}.address[data-v-9ba57f47]:hover{text-decoration:underline}.divider[data-v-9ba57f47]{border:none;border-top:1px solid var(--sidebar-border, #e5e7eb);margin:12px 0}.compact-info[data-v-9ba57f47]{display:flex;flex-direction:column;gap:4px}.compact-row[data-v-9ba57f47]{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:13px}.compact-type[data-v-9ba57f47]{font-weight:600}.compact-secondary[data-v-9ba57f47]{color:var(--text-secondary, #5f6368)}.team-badge[data-v-9ba57f47]{display:inline-block;color:#fff;font-size:11px;font-weight:600;padding:1px 8px;border-radius:10px}.hrs-badge[data-v-9ba57f47]{display:inline-block;padding:1px 8px;border-radius:10px;font-size:12px;font-weight:500;white-space:nowrap;background:#6b72801a;color:#374151}.hrs-badge.positive[data-v-9ba57f47]{background:#10b9811a;color:#10b981}.hrs-badge.zero[data-v-9ba57f47]{background:#ef44441a;color:#ef4444}.compact-label[data-v-9ba57f47]{font-size:13px;font-weight:600;color:var(--text-secondary, #5f6368);flex-shrink:0}.compact-label.invoiced[data-v-9ba57f47]{color:#10b981}.compact-value[data-v-9ba57f47]{font-size:13px;color:var(--text-primary, #202124);text-align:right}.compact-value.invoiced[data-v-9ba57f47]{color:#10b981}.phone-badge[data-v-9ba57f47]{display:inline-block;background:#3b82f614;color:#3b82f6;font-size:14px;font-weight:500;padding:2px 10px;border-radius:12px;text-decoration:none}.phone-badge--sm[data-v-9ba57f47]{font-size:13px}.phone-badge[data-v-9ba57f47]:hover{background:#3b82f626}.section-label[data-v-9ba57f47]{font-size:11px;color:var(--text-secondary, #5f6368);font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.clockin-summary[data-v-9ba57f47]{margin-bottom:8px;font-size:13px}.worker-count[data-v-9ba57f47]{color:#1d4ed8;font-weight:600}.active-count[data-v-9ba57f47]{color:#10b981;margin-left:4px}.loading-text[data-v-9ba57f47],.empty-text[data-v-9ba57f47]{font-size:12px;color:var(--text-muted, #9aa0a6);padding:8px 0}.employee-list[data-v-9ba57f47]{display:flex;flex-direction:column;gap:6px}.employee-card[data-v-9ba57f47]{background:var(--input-bg, #f8f9fa);border-radius:8px;padding:8px 10px}.employee-card.inactive[data-v-9ba57f47]{opacity:.5}.emp-card-row[data-v-9ba57f47]{display:flex;align-items:center;gap:10px}.emp-card-content[data-v-9ba57f47]{flex:1;min-width:0}.emp-header[data-v-9ba57f47]{display:flex;align-items:center;gap:4px;margin-bottom:2px}.active-dot[data-v-9ba57f47]{display:inline-block;width:6px;height:6px;border-radius:50%;background:#10b981;flex-shrink:0}.emp-name[data-v-9ba57f47]{font-size:13px;font-weight:500;color:var(--text-primary, #202124)}.emp-name--clickable[data-v-9ba57f47]{cursor:pointer}.emp-name--clickable[data-v-9ba57f47]:hover{text-decoration:underline}.emp-photo[data-v-9ba57f47]{width:72px;height:72px;border-radius:6px;object-fit:cover;flex-shrink:0;cursor:pointer}.emp-initials[data-v-9ba57f47]{display:flex;width:72px;height:72px;border-radius:6px;background:var(--input-bg, #e5e7eb);align-items:center;justify-content:center;font-size:20px;font-weight:600;color:var(--text-secondary, #6B7280);flex-shrink:0;cursor:pointer}.emp-title[data-v-9ba57f47]{font-size:12px;color:var(--text-secondary, #5f6368)}.emp-phone[data-v-9ba57f47]{padding-left:10px;margin-bottom:2px;font-size:11px}.session[data-v-9ba57f47]{font-size:12px;color:var(--text-secondary, #5f6368);padding-left:10px}.now-text[data-v-9ba57f47]{color:#10b981;font-weight:500}.lunch-tag[data-v-9ba57f47],.duration[data-v-9ba57f47]{color:var(--text-muted, #9aa0a6);margin-left:2px}.footer-actions[data-v-9ba57f47]{position:sticky;bottom:-12px;background:var(--surface, white);margin:10px -16px -12px;padding:8px 16px 12px;border-top:1px solid var(--sidebar-border, #e5e7eb);z-index:1;display:flex;gap:6px}.footer-btn-wrap[data-v-9ba57f47]{position:relative;flex:1}.footer-btn[data-v-9ba57f47]{display:flex;align-items:center;justify-content:center;gap:4px;width:100%;padding:7px 4px;border:1px solid var(--border, #dadce0);border-radius:8px;background:transparent;color:#3b82f6;font-size:12px;cursor:pointer;transition:all .15s;font-family:inherit;white-space:nowrap;flex:1}.footer-btn[data-v-9ba57f47]:hover:not(.disabled){background:#3b82f60f;border-color:#3b82f6}.footer-btn.disabled[data-v-9ba57f47]{color:var(--text-muted, #9aa0a6);border-color:var(--border, #dadce0);cursor:not-allowed;opacity:.5}.count-badge[data-v-9ba57f47]{position:absolute;top:-6px;right:-6px;background:#ef4444;color:#fff;font-size:10px;font-weight:700;min-width:16px;height:16px;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:0 4px}.jdv-popup-menu{position:fixed;min-width:120px;max-width:280px;width:max-content;background:var(--surface, white);border:1px solid var(--border, #dadce0);border-radius:8px;box-shadow:0 4px 16px #00000026;z-index:1000}.jdv-popup-item{display:flex;align-items:flex-start;gap:6px;width:100%;padding:8px 12px;font-size:13px;color:#3b82f6;text-decoration:none;transition:background .1s;background:none;border:none;cursor:pointer;font-family:inherit;text-align:left}.jdv-popup-item-name{overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;word-break:break-word;min-width:0}.jdv-popup-item:hover{background:var(--surface-hover, #f1f3f4)}.jdv-popup-item-icon{flex-shrink:0;color:var(--text-muted, #9aa0a6);margin-top:2px}.status-badge[data-v-30e7ad19]{display:inline-block;padding:2px 10px;border-radius:12px;font-size:11px;font-weight:600;margin-bottom:8px}.vehicle-header-row[data-v-30e7ad19]{display:flex;align-items:center;gap:10px}.vehicle-header-content[data-v-30e7ad19]{flex:1;min-width:0}.detail-name[data-v-30e7ad19]{font-size:16px;font-weight:600;color:var(--text-primary, #202124);margin:0 0 4px;line-height:1.3}.driver-name[data-v-30e7ad19]{font-size:13px;color:var(--text-secondary, #5f6368);margin-bottom:2px}.driver-name--clickable[data-v-30e7ad19]{cursor:pointer}.driver-name--clickable[data-v-30e7ad19]:hover{text-decoration:underline}.driver-photo[data-v-30e7ad19]{width:72px;height:72px;border-radius:6px;object-fit:cover;flex-shrink:0;cursor:pointer}.driver-initials[data-v-30e7ad19]{display:flex;width:72px;height:72px;border-radius:6px;background:var(--input-bg, #e5e7eb);align-items:center;justify-content:center;font-size:20px;font-weight:600;color:var(--text-secondary, #6B7280);flex-shrink:0;cursor:pointer}.team-name[data-v-30e7ad19]{font-size:12px;color:var(--text-muted, #9aa0a6)}.divider[data-v-30e7ad19]{border:none;border-top:1px solid var(--sidebar-border, #e5e7eb);margin:12px 0}.detail-grid[data-v-30e7ad19]{display:flex;flex-direction:column;gap:8px}.detail-row[data-v-30e7ad19]{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.detail-label[data-v-30e7ad19]{font-size:12px;color:var(--text-secondary, #5f6368);flex-shrink:0}.detail-value[data-v-30e7ad19]{font-size:13px;color:var(--text-primary, #202124);text-align:right}.plate-chip[data-v-30e7ad19]{display:inline-block;font-family:ui-monospace,SFMono-Regular,Cascadia Code,Menlo,Consolas,monospace;font-size:12px;font-weight:600;letter-spacing:1.5px;line-height:1.5;padding:1px 8px;color:var(--text-primary, #202124);background:var(--surface-hover, #f1f3f4);border:1px solid #d6d9de;border-radius:4px}.location-value[data-v-30e7ad19]{word-break:break-word;line-height:1.3}.muted-prefix[data-v-30e7ad19]{color:var(--text-muted, #9aa0a6);font-size:12px}.idle-text[data-v-30e7ad19]{color:#f59e0b}.offline-warning[data-v-30e7ad19]{margin-top:12px;padding:8px 10px;background:#ef444414;border:1px solid rgba(239,68,68,.25);border-radius:8px;font-size:12px;color:#ef4444}.directions-link[data-v-30e7ad19]{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;margin-top:14px;padding:8px 14px;background:#3b82f61a;color:#3b82f6;border-radius:8px;font-size:13px;font-weight:600;text-decoration:none;cursor:pointer;transition:background .15s}.directions-link[data-v-30e7ad19]:hover{background:#3b82f629}.empty-text[data-v-30e7ad19]{font-size:13px;color:var(--text-muted, #9aa0a6);text-align:center;padding:24px 12px}.sidebar[data-v-bfc0de85]{position:absolute;left:16px;top:60px;max-height:calc(100% - 76px);width:350px;background:var(--surface, white);border-radius:12px;box-shadow:0 4px 24px var(--shadow, rgba(0,0,0,.12));display:flex;flex-direction:column;overflow:hidden;z-index:5;pointer-events:auto}.sidebar-header[data-v-bfc0de85]{padding:16px 16px 12px;display:flex;align-items:center;gap:4px;border-bottom:1px solid var(--sidebar-border, #e5e7eb);flex-shrink:0}.sidebar-title[data-v-bfc0de85]{font-size:16px;font-weight:600;color:var(--text-primary, #202124);margin:0;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-back[data-v-bfc0de85],.sidebar-close[data-v-bfc0de85]{display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--text-secondary, #5f6368);cursor:pointer;padding:4px;border-radius:50%;transition:background .15s}.sidebar-eye-badge[data-v-bfc0de85]{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:12px;font-size:11px;font-weight:600;line-height:1.3;border:none;cursor:pointer;transition:opacity .15s;white-space:nowrap;font-family:inherit}.sidebar-eye-badge[data-v-bfc0de85]:hover{opacity:.75}.sidebar-close[data-v-bfc0de85]{margin-left:auto}.sidebar-status-badge[data-v-bfc0de85]{padding:3px 10px;border-radius:12px;font-size:11px;font-weight:600;line-height:1.3;text-align:right}.sidebar-back[data-v-bfc0de85]:hover,.sidebar-close[data-v-bfc0de85]:hover{background:var(--surface-hover, #f1f3f4)}.sidebar-content[data-v-bfc0de85]{flex:1;overflow-y:auto;padding:12px 16px}.sidebar-slide-enter-active[data-v-bfc0de85],.sidebar-slide-leave-active[data-v-bfc0de85]{transition:transform .25s ease-out,opacity .2s ease-out}.sidebar-slide-enter-from[data-v-bfc0de85],.sidebar-slide-leave-to[data-v-bfc0de85]{transform:translate(-380px);opacity:0}.discussion-panel[data-v-36d310ad]{position:absolute;right:16px;top:60px;max-height:calc(100% - 76px);width:320px;background:var(--surface, white);border-radius:12px;box-shadow:0 4px 24px var(--shadow, rgba(0,0,0,.12));display:flex;flex-direction:column;overflow:hidden;z-index:5;pointer-events:auto}.panel-header[data-v-36d310ad]{padding:14px 16px 10px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--sidebar-border, #e5e7eb);flex-shrink:0}.panel-title-wrap[data-v-36d310ad]{display:flex;align-items:center;gap:8px;color:var(--text-secondary, #5f6368)}.panel-title[data-v-36d310ad]{font-size:14px;font-weight:600;color:var(--text-primary, #202124);margin:0}.panel-close[data-v-36d310ad]{display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--text-secondary, #5f6368);cursor:pointer;padding:4px;border-radius:50%;transition:background .15s}.panel-close[data-v-36d310ad]:hover{background:var(--surface-hover, #f1f3f4)}.panel-body[data-v-36d310ad]{flex:1;overflow-y:auto;padding:12px}.panel-loading[data-v-36d310ad]{padding:2rem 1rem;text-align:center;color:var(--text-muted, #9aa0a6);font-size:13px;display:flex;flex-direction:column;align-items:center;gap:10px}.panel-spinner[data-v-36d310ad]{border:2px solid var(--border, #dadce0);border-top:2px solid #3B82F6;border-radius:50%;width:20px;height:20px;animation:spin-36d310ad 1s linear infinite}@keyframes spin-36d310ad{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.panel-empty[data-v-36d310ad]{display:flex;flex-direction:column;align-items:center;gap:8px;padding:2rem 1rem;color:var(--text-muted, #9aa0a6);font-size:13px}.discussion-list[data-v-36d310ad]{display:flex;flex-direction:column;gap:8px}.discussion-card[data-v-36d310ad]{background:var(--input-bg, #f8f9fa);border-radius:8px;padding:10px 12px;border:1px solid var(--border, #e5e7eb);border-left:3px solid transparent;box-shadow:0 1px 2px #0000000a}.discussion-card.is-report[data-v-36d310ad]{background:#f59e0b0a}.discussion-meta[data-v-36d310ad]{display:flex;justify-content:space-between;align-items:center;padding-bottom:6px;margin-bottom:6px;border-bottom:1px solid var(--border, #e5e7eb);gap:8px}.discussion-author-wrap[data-v-36d310ad]{display:flex;align-items:center;gap:8px;min-width:0;flex:1}.discussion-avatar[data-v-36d310ad]{width:28px;height:28px;border-radius:50%;object-fit:cover;flex-shrink:0;cursor:pointer;border:2px solid var(--border, #dadce0)}.discussion-avatar-initials[data-v-36d310ad]{display:flex;width:28px;height:28px;border-radius:50%;background:var(--input-bg, #e5e7eb);align-items:center;justify-content:center;font-size:11px;font-weight:600;color:var(--text-secondary, #6B7280);flex-shrink:0;border:2px solid var(--border, #dadce0)}.discussion-author[data-v-36d310ad]{font-size:12px;font-weight:600;color:var(--text-primary, #202124);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.discussion-time[data-v-36d310ad]{font-size:11px;color:var(--text-muted, #9aa0a6);white-space:nowrap;flex-shrink:0;cursor:default}.report-badge[data-v-36d310ad]{display:inline-block;font-size:10px;font-weight:600;color:#f59e0b;background:#f59e0b1a;padding:1px 6px;border-radius:4px;margin-bottom:4px}.discussion-text[data-v-36d310ad]{font-size:13px;color:var(--text-secondary, #5f6368);line-height:1.45;white-space:pre-wrap;word-break:break-word}.discussion-text[data-v-36d310ad] .comment-link{color:#1a73e8;text-decoration:underline;word-break:break-all}.discussion-text[data-v-36d310ad] .comment-link:hover{color:#1558b0}.comment-attachments[data-v-36d310ad]{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.comment-attachment[data-v-36d310ad]{background:none;border:1px solid var(--border, #dadce0);border-radius:6px;padding:0;cursor:pointer;overflow:hidden;transition:border-color .15s,box-shadow .15s}.comment-attachment[data-v-36d310ad]:hover{border-color:#3b82f6;box-shadow:0 1px 4px #3b82f626}.att-thumb[data-v-36d310ad]{width:64px;height:64px;object-fit:cover;display:block}.att-file[data-v-36d310ad]{display:flex;align-items:center;gap:4px;padding:6px 8px;color:#3b82f6}.att-name[data-v-36d310ad]{font-size:11px;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.panel-footer[data-v-36d310ad]{padding:10px 12px;border-top:1px solid var(--sidebar-border, #e5e7eb);flex-shrink:0}.footer-input-wrap[data-v-36d310ad]{position:relative}.footer-input[data-v-36d310ad]{width:100%;padding:8px 12px;border:1px solid var(--border, #dadce0);border-radius:8px;font-size:13px;font-family:inherit;background:var(--input-bg, #f8f9fa);color:var(--text-muted, #9aa0a6);cursor:not-allowed}.footer-hint[data-v-36d310ad]{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:10px;color:var(--text-muted, #9aa0a6);font-style:italic}.discussion-slide-enter-active[data-v-36d310ad],.discussion-slide-leave-active[data-v-36d310ad]{transition:transform .25s ease-out,opacity .2s ease-out}.discussion-slide-enter-from[data-v-36d310ad],.discussion-slide-leave-to[data-v-36d310ad]{transform:translate(340px);opacity:0}@media(max-width:600px){.discussion-panel[data-v-36d310ad]{display:none}}.current-conditions[data-v-a9c90dcd]{padding:12px 0 8px}.current-main[data-v-a9c90dcd]{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.current-temp-block[data-v-a9c90dcd]{display:flex;flex-direction:column}.current-temp[data-v-a9c90dcd]{font-size:42px;font-weight:300;letter-spacing:-1px;color:var(--text-primary, #202124);line-height:1}.current-desc[data-v-a9c90dcd]{font-size:13px;color:var(--text-secondary, #5f6368);margin-top:4px}.current-icon[data-v-a9c90dcd]{width:48px;height:48px;flex-shrink:0}.current-details[data-v-a9c90dcd]{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px}.detail-item[data-v-a9c90dcd]{display:flex;flex-direction:column;gap:1px}.detail-label[data-v-a9c90dcd]{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted, #9aa0a6)}.detail-value[data-v-a9c90dcd]{font-size:13px;font-weight:500;color:var(--text-primary, #202124)}@media(max-height:1100px){.current-conditions[data-v-a9c90dcd]{padding:8px 0 4px}.current-temp[data-v-a9c90dcd]{font-size:34px}.current-desc[data-v-a9c90dcd]{font-size:12px;margin-top:2px}.current-icon[data-v-a9c90dcd]{width:40px;height:40px}.current-main[data-v-a9c90dcd]{margin-bottom:8px}.current-details[data-v-a9c90dcd]{gap:4px 16px}.detail-item[data-v-a9c90dcd]:nth-child(4),.detail-item[data-v-a9c90dcd]:nth-child(6){display:none}.detail-value[data-v-a9c90dcd]{font-size:12px}}.hourly-chart[data-v-e7a9fc5f]{padding:4px 0}.hourly-scroll[data-v-e7a9fc5f]{display:flex;gap:2px;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin;scrollbar-color:var(--border, #dadce0) transparent}.hourly-scroll[data-v-e7a9fc5f]::-webkit-scrollbar{height:4px}.hourly-scroll[data-v-e7a9fc5f]::-webkit-scrollbar-thumb{background:var(--border, #dadce0);border-radius:2px}.hour-card[data-v-e7a9fc5f]{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:56px;padding:8px 4px;border-radius:8px;background:var(--surface-secondary, #f8f9fa);flex-shrink:0}.hour-label[data-v-e7a9fc5f]{font-size:10px;font-weight:600;color:var(--text-secondary, #5f6368);white-space:nowrap}.hour-icon[data-v-e7a9fc5f]{width:24px;height:24px}.hour-temp[data-v-e7a9fc5f]{font-size:13px;font-weight:600;color:var(--text-primary, #202124)}.hour-precip[data-v-e7a9fc5f]{font-size:10px;font-weight:500;color:#3b82f6}@media(max-height:1100px){.hourly-chart[data-v-e7a9fc5f]{padding:2px 0}.hour-card[data-v-e7a9fc5f]{padding:6px 4px;gap:2px;min-width:50px}.hour-icon[data-v-e7a9fc5f]{width:20px;height:20px}.hour-temp[data-v-e7a9fc5f]{font-size:12px}}.daily-forecast[data-v-6d1e1673]{padding:4px 0}.day-row[data-v-6d1e1673]{display:flex;align-items:center;gap:8px;padding:6px 4px;border-bottom:1px solid var(--border, #dadce0);cursor:pointer;border-radius:6px;transition:background .15s}.day-row[data-v-6d1e1673]:hover{background:var(--surface-hover, #f1f3f4)}.day-row.selected[data-v-6d1e1673]{background:color-mix(in srgb,#3B82F6 8%,transparent)}.day-row.selected .day-name[data-v-6d1e1673]{color:#3b82f6}.day-row[data-v-6d1e1673]:last-child{border-bottom:none}.day-name[data-v-6d1e1673]{width:44px;font-size:13px;font-weight:600;color:var(--text-primary, #202124);flex-shrink:0}.day-icon[data-v-6d1e1673]{width:24px;height:24px;flex-shrink:0}.day-precip[data-v-6d1e1673]{font-size:11px;font-weight:500;color:#3b82f6;width:32px;text-align:right;flex-shrink:0}.day-precip-empty[data-v-6d1e1673]{width:32px;flex-shrink:0}.day-temps[data-v-6d1e1673]{margin-left:auto;display:flex;gap:8px;flex-shrink:0}.day-high[data-v-6d1e1673]{font-size:13px;font-weight:600;color:var(--text-primary, #202124);width:32px;text-align:right}.day-low[data-v-6d1e1673]{font-size:13px;font-weight:500;color:var(--text-muted, #9aa0a6);width:32px;text-align:right}@media(max-height:1100px){.daily-forecast[data-v-6d1e1673]{padding:2px 0}.day-row[data-v-6d1e1673]{padding:4px}.day-name[data-v-6d1e1673]{font-size:12px;width:40px}.day-icon[data-v-6d1e1673]{width:20px;height:20px}.day-high[data-v-6d1e1673],.day-low[data-v-6d1e1673]{font-size:12px}}.weather-panel[data-v-3fedf460]{position:absolute;top:80px;right:16px;width:340px;max-height:calc(100vh - 100px);overflow-y:auto;background:color-mix(in srgb,var(--surface, #ffffff) 85%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-radius:14px;border:1px solid color-mix(in srgb,var(--border, #dadce0) 50%,transparent);box-shadow:0 4px 24px var(--shadow, rgba(0,0,0,.12)),0 1px 4px var(--shadow, rgba(0,0,0,.08));padding:16px;pointer-events:auto;z-index:4;scrollbar-width:thin;scrollbar-color:var(--border, #dadce0) transparent}.weather-panel[data-v-3fedf460]::-webkit-scrollbar{width:4px}.weather-panel[data-v-3fedf460]::-webkit-scrollbar-thumb{background:var(--border, #dadce0);border-radius:2px}.location-area[data-v-3fedf460]{display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:auto auto;gap:4px 6px;align-items:center;margin-bottom:4px}.location-pin[data-v-3fedf460]{grid-row:1;grid-column:1;color:var(--text-secondary, #5f6368)}.county-select[data-v-3fedf460]{grid-row:1;grid-column:2;min-width:0;padding:2px 18px 2px 4px;border:1px solid transparent;border-radius:4px;background:transparent;color:var(--text-primary, #202124);font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;outline:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%235f6368' fill='none' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 4px center}.county-select[data-v-3fedf460]:hover{border-color:var(--border, #dadce0)}.county-select[data-v-3fedf460]:focus{border-color:#3b82f6}.map-pick-btn[data-v-3fedf460]{grid-row:1 / 3;grid-column:3;align-self:stretch;aspect-ratio:1;border-radius:8px;border:1.5px solid #93B8F0;background:linear-gradient(to bottom,#fff,#f0f4fa);color:#4a7bd4;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;box-shadow:0 1px 3px #3b82f61f,0 1px 2px #0000000f}.map-pick-btn[data-v-3fedf460]:hover{background:linear-gradient(to bottom,#f8faff,#e8eef8);border-color:#6b9ee8;box-shadow:0 2px 6px #3b82f62e,0 1px 3px #00000014}.map-pick-btn.active[data-v-3fedf460]{background:linear-gradient(to bottom,#4b8df8,#3b7de6);color:#fff;border-color:#2563eb;box-shadow:0 2px 6px #2563eb4d,inset 0 1px #ffffff26}.search-wrapper[data-v-3fedf460]{grid-row:2;grid-column:1 / 3;position:relative}.search-icon[data-v-3fedf460]{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--text-muted, #9aa0a6);pointer-events:none}.location-search[data-v-3fedf460]{width:100%;padding:8px 12px 8px 32px;border:1px solid var(--border, #dadce0);border-radius:20px;background:var(--surface, #fff);color:var(--text-primary, #202124);font-size:13px;font-family:inherit;outline:none;box-sizing:border-box;box-shadow:0 1px 3px #00000014;transition:box-shadow .2s,border-color .2s}.location-search[data-v-3fedf460]:focus{border-color:transparent;background:var(--surface, #fff);box-shadow:0 1px 6px #2021242e}.location-search[data-v-3fedf460]::placeholder{color:var(--text-muted, #9aa0a6)}.weather-loading[data-v-3fedf460]{display:flex;flex-direction:column;align-items:center;gap:10px;padding:32px 0;color:var(--text-secondary, #5f6368);font-size:13px}.spinner[data-v-3fedf460]{width:24px;height:24px;border:3px solid var(--border, #dadce0);border-top-color:#3b82f6;border-radius:50%;animation:spin-3fedf460 .8s linear infinite}@keyframes spin-3fedf460{to{transform:rotate(360deg)}}.weather-error[data-v-3fedf460]{display:flex;flex-direction:column;align-items:center;gap:10px;padding:24px 0;color:var(--text-secondary, #5f6368);font-size:13px;text-align:center}.retry-btn[data-v-3fedf460]{padding:4px 14px;border:1px solid var(--border, #dadce0);border-radius:6px;background:var(--surface, #fff);color:var(--text-primary, #202124);font-size:12px;font-family:inherit;cursor:pointer;transition:background .15s}.retry-btn[data-v-3fedf460]:hover{background:var(--surface-hover, #f1f3f4)}.section-divider[data-v-3fedf460]{height:1px;background:var(--border, #dadce0);margin:8px 0;opacity:.5}.section-title[data-v-3fedf460]{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted, #9aa0a6);margin-bottom:4px}.weather-footer[data-v-3fedf460]{margin-top:10px;padding-top:8px;border-top:1px solid color-mix(in srgb,var(--border, #dadce0) 40%,transparent)}.ago-text[data-v-3fedf460]{font-size:10px;color:var(--text-muted, #9aa0a6)}@media(max-height:1100px){.weather-panel[data-v-3fedf460]{padding:12px}.location-area[data-v-3fedf460]{margin-bottom:2px}.section-divider[data-v-3fedf460]{margin:4px 0}.section-title[data-v-3fedf460]{margin-bottom:2px}.weather-footer[data-v-3fedf460]{margin-top:6px;padding-top:4px}}.floating-ui[data-v-7b829708]{position:absolute;inset:0;z-index:5;pointer-events:none}.top-bar[data-v-7b829708]{position:absolute;top:16px;left:16px;right:16px;display:flex;align-items:flex-start;gap:10px;pointer-events:auto}.user-menu[data-v-7b829708]{margin-left:auto;pointer-events:auto;flex-shrink:0;--nolan-avatar-bg: var(--surface, white);--nolan-avatar-color: var(--text-secondary, #5f6368);--nolan-avatar-border: transparent;filter:drop-shadow(0 1px 3px var(--shadow, rgba(0,0,0,.12))) drop-shadow(0 1px 2px var(--shadow, rgba(0,0,0,.08)))}.team-legend[data-v-7b829708]{position:absolute;bottom:28px;right:16px;background:var(--surface, rgba(255, 255, 255, .95));border-radius:8px;padding:8px 12px;pointer-events:auto;box-shadow:0 1px 4px var(--shadow, rgba(0, 0, 0, .15));display:flex;flex-direction:column;gap:4px}.legend-item[data-v-7b829708]{display:flex;align-items:center;gap:8px}.legend-dot[data-v-7b829708]{width:10px;height:10px;border-radius:50%;flex-shrink:0}.legend-label[data-v-7b829708]{font-size:11px;font-weight:600;color:var(--text-primary, #1f2937);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;white-space:nowrap}.legend-above-weather[data-v-7b829708]{bottom:68px}.weather-slide-enter-active[data-v-7b829708],.weather-slide-leave-active[data-v-7b829708]{transition:transform .25s ease-out,opacity .2s ease-out}.weather-slide-enter-from[data-v-7b829708],.weather-slide-leave-to[data-v-7b829708]{transform:translate(360px);opacity:0}@media(max-width:600px){.user-menu[data-v-7b829708],.team-legend[data-v-7b829708]{display:none}}.modal-backdrop[data-v-c9b77173]{position:fixed;inset:0;z-index:100;background:#0009;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-content[data-v-c9b77173]{background:var(--surface, #ffffff);border:1px solid var(--border, #dadce0);border-radius:12px;width:440px;max-width:90vw;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 8px 32px var(--shadow-strong, rgba(0, 0, 0, .16))}.modal-header[data-v-c9b77173]{display:flex;justify-content:space-between;align-items:flex-start;padding:1rem 1.25rem .75rem;border-bottom:1px solid var(--sidebar-border, #e5e7eb)}.modal-title[data-v-c9b77173]{font-size:1rem;font-weight:600;color:var(--text-primary, #202124)}.modal-subtitle[data-v-c9b77173]{font-size:.8rem;color:var(--text-secondary, #5f6368);margin-top:.15rem}.modal-po[data-v-c9b77173]{color:var(--text-muted, #9aa0a6)}.modal-close[data-v-c9b77173]{background:none;border:none;color:var(--text-muted, #9aa0a6);font-size:1.5rem;cursor:pointer;padding:0;line-height:1}.modal-close[data-v-c9b77173]:hover{color:var(--text-secondary, #5f6368)}.hours-header[data-v-c9b77173]{display:flex;gap:.5rem;padding:.5rem 1.25rem;border-bottom:1px solid var(--sidebar-border, #e5e7eb);flex-wrap:wrap}.hours-pill[data-v-c9b77173]{font-size:.75rem;font-weight:600;padding:2px 8px;border-radius:10px;background:#3b82f614;color:#3b82f6}.hours-pill.hours-over[data-v-c9b77173]{background:#ef44441a;color:#ef4444}.modal-loading[data-v-c9b77173]{padding:2rem;text-align:center;color:var(--text-muted, #9aa0a6);font-size:.85rem;display:flex;flex-direction:column;align-items:center;gap:.75rem}.modal-spinner[data-v-c9b77173]{border:2px solid var(--border, #dadce0);border-top:2px solid #3B82F6;border-radius:50%;width:24px;height:24px;animation:spin-c9b77173 1s linear infinite}@keyframes spin-c9b77173{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.modal-empty[data-v-c9b77173]{padding:2rem;text-align:center;color:var(--text-muted, #9aa0a6);font-size:.85rem}.modal-body[data-v-c9b77173]{overflow-y:auto;padding:.5rem 1.25rem 1rem}.date-group[data-v-c9b77173]{margin-bottom:.75rem}.date-header[data-v-c9b77173]{font-size:.7rem;font-weight:600;color:#3b82f6;text-transform:uppercase;letter-spacing:.03em;padding:.5rem 0 .25rem;border-bottom:1px solid var(--sidebar-border, #e5e7eb);margin-bottom:.25rem}.employee-card[data-v-c9b77173]{padding:.4rem 0;border-bottom:1px solid var(--sidebar-border, #e5e7eb)}.emp-header[data-v-c9b77173]{margin-bottom:.15rem}.entry-name[data-v-c9b77173]{font-size:.8rem;color:var(--text-primary, #202124);font-weight:500}.entry-title[data-v-c9b77173]{font-size:.7rem;color:var(--text-muted, #9aa0a6)}.emp-phone[data-v-c9b77173]{padding-left:.6rem;margin-bottom:.1rem}.emp-phone-link[data-v-c9b77173]{font-size:.7rem;color:#3b82f6;text-decoration:none}.emp-phone-link[data-v-c9b77173]:hover{text-decoration:underline}.session-row[data-v-c9b77173]{display:flex;justify-content:space-between;align-items:center;padding:.1rem 0 .1rem .6rem;gap:.75rem}.entry-time[data-v-c9b77173]{font-size:.75rem;color:var(--text-secondary, #5f6368);white-space:nowrap}.entry-active[data-v-c9b77173]{color:#10b981;font-weight:600}.entry-lunch[data-v-c9b77173]{font-size:.55rem;color:#8c3232;background:#8c32321f;padding:0 3px;border-radius:3px;margin-left:3px;vertical-align:middle}.entry-duration[data-v-c9b77173]{font-size:.7rem;color:var(--text-muted, #9aa0a6)}.modal-fade-enter-active[data-v-c9b77173]{transition:opacity .15s ease}.modal-fade-leave-active[data-v-c9b77173]{transition:opacity .2s ease}.modal-fade-enter-from[data-v-c9b77173],.modal-fade-leave-to[data-v-c9b77173]{opacity:0}.viewer-backdrop[data-v-a1ab4c35]{position:fixed;inset:0;z-index:100;background:#000000b3;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.viewer-content[data-v-a1ab4c35]{background:var(--surface, #ffffff);border-radius:12px;width:90vw;height:85vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #0000003d;overflow:hidden}.viewer-header[data-v-a1ab4c35]{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--sidebar-border, #e5e7eb);flex-shrink:0}.viewer-filename[data-v-a1ab4c35]{font-size:14px;font-weight:500;color:var(--text-primary, #202124);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.viewer-actions[data-v-a1ab4c35]{display:flex;align-items:center;gap:8px;flex-shrink:0}.viewer-download[data-v-a1ab4c35]{display:flex;align-items:center;justify-content:center;color:#3b82f6;padding:4px;border-radius:4px;transition:background .15s}.viewer-download[data-v-a1ab4c35]:hover{background:#3b82f614}.viewer-close[data-v-a1ab4c35]{background:none;border:none;color:var(--text-muted, #9aa0a6);font-size:24px;cursor:pointer;padding:0 4px;line-height:1}.viewer-close[data-v-a1ab4c35]:hover{color:var(--text-secondary, #5f6368)}.viewer-body[data-v-a1ab4c35]{flex:1;overflow:hidden}.viewer-iframe[data-v-a1ab4c35]{width:100%;height:100%;border:none}.viewer-image-wrap[data-v-a1ab4c35]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:auto;padding:16px;background:var(--surface-secondary, #f8f9fa)}.viewer-image[data-v-a1ab4c35]{max-width:100%;max-height:100%;object-fit:contain;border-radius:4px}.modal-fade-enter-active[data-v-a1ab4c35]{transition:opacity .15s ease}.modal-fade-leave-active[data-v-a1ab4c35]{transition:opacity .2s ease}.modal-fade-enter-from[data-v-a1ab4c35],.modal-fade-leave-to[data-v-a1ab4c35]{opacity:0}*{margin:0;padding:0;box-sizing:border-box}#app{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;position:relative;width:100%;height:100vh;height:100dvh;overflow:hidden;--surface: #ffffff;--surface-hover: #f1f3f4;--surface-secondary: #f8f9fa;--text-primary: #202124;--text-secondary: #5f6368;--text-muted: #9aa0a6;--border: #dadce0;--border-strong: #c6c9cd;--shadow: rgba(0,0,0,.12);--shadow-strong: rgba(0,0,0,.16);--pill-inactive: #5f6368;--sidebar-border: #e5e7eb;--toggle-track: #dadce0;--input-bg: #f8f9fa}#app[data-dark]{--surface: #1a202c;--surface-hover: rgba(255,255,255,.06);--surface-secondary: #2d3748;--text-primary: #E5E7EB;--text-secondary: #9CA3AF;--text-muted: #6B7280;--border: #4a5568;--border-strong: #718096;--shadow: rgba(0,0,0,.3);--shadow-strong: rgba(0,0,0,.4);--pill-inactive: #9CA3AF;--sidebar-border: #4a5568;--toggle-track: #374151;--input-bg: #2d3748}
