:root{--medal-size:30px;--medal-margin:2px;--medal-stack-offset:4px}.medal-icon{height:var(--medal-size);margin:var(--medal-margin);vertical-align:middle}.medal-stack{height:var(--medal-size);margin:var(--medal-margin);display:inline-block;position:relative}.medal-stack-icon{height:var(--medal-size);z-index:1;position:absolute;top:0}.medal-stack-counter{z-index:2;color:#fff;background:#222;border-radius:4px;padding:1px 3px;font-size:.8em;position:absolute;top:0;left:-1px}.hittaut-label{display:block;padding:4px 4px 4px 0!important}.hittaut-select{cursor:pointer;background:#fff;border:1px solid #ccc;border-radius:3px;width:100%;margin:3px 0 0;padding:2px 4px;font-size:11px;display:block}.leaflet-control-fullscreen{cursor:pointer;color:#333;background:#fff;justify-content:center;align-items:center;width:30px;height:30px;text-decoration:none;display:flex}.leaflet-control-fullscreen:hover{background:#f4f4f4}.leaflet-control-fullscreen i{font-size:16px}.leaflet-container:fullscreen{z-index:99999;width:100%!important;height:100%!important}:-webkit-any(.leaflet-container:-webkit-full-screen~.sidebar,.leaflet-container:fullscreen~.sidebar,.leaflet-container:fullscreen~.sidebar){display:none}:-moz-any(.leaflet-container:fullscreen~.sidebar,.leaflet-container:-moz-full-screen~.sidebar,.leaflet-container:fullscreen~.sidebar){display:none}:is(.leaflet-container:fullscreen~.sidebar,.leaflet-container:fullscreen~.sidebar,.leaflet-container:fullscreen~.sidebar){display:none}.polygon-list{z-index:1000;background:#fff;border-radius:4px;min-width:250px;max-width:350px;transition:left .3s;position:fixed;bottom:70px;box-shadow:0 2px 10px #0003}.polygon-list-header{background:#f8f9fa;border-bottom:1px solid #ddd;border-radius:4px 4px 0 0;justify-content:space-between;align-items:center;padding:10px 15px;display:flex}.polygon-list-header h3{color:#333;margin:0;font-size:14px;font-weight:600}.polygon-list-toggle{cursor:pointer;color:#666;background:0 0;border:none;padding:4px 8px;transition:color .2s}.polygon-list-toggle:hover{color:#333}.polygon-list-content{max-height:300px;padding:5px;overflow-y:auto}.polygon-item{cursor:pointer;border:1px solid #0000;border-radius:4px;justify-content:space-between;align-items:center;margin:2px 0;padding:10px 12px;transition:all .2s;display:flex}.polygon-item:hover{background:#f0f8ff}.polygon-item.selected{background:#e3f2fd;border-color:#2196f3}.polygon-name{color:#333;cursor:text;flex:1;font-size:13px;font-weight:500}.polygon-name-input{color:#333;background:#fff;border:1px solid #2196f3;border-radius:3px;outline:none;flex:1;padding:2px 4px;font-size:13px;font-weight:500}.polygon-actions{gap:4px;display:flex}.polygon-info-btn,.polygon-download-btn,.polygon-delete-btn{cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px 8px;transition:all .2s}.polygon-info-btn{color:#007bff}.polygon-info-btn:hover{background:#e3f2fd}.polygon-download-btn{color:#28a745}.polygon-download-btn:hover{background:#e5f7e9}.polygon-delete-btn{color:#dc3545}.polygon-delete-btn:hover{background:#ffe5e5}.polygon-list.collapsed .polygon-list-content{display:none}.leaflet-control-toggle-tools{cursor:pointer;color:#333;box-sizing:border-box;background:#fff;border-radius:4px;justify-content:center;align-items:center;width:34px;height:34px;font-size:16px;text-decoration:none;display:flex}.leaflet-control-toggle-tools:hover{background:#f4f4f4}.leaflet-pm-icon-zone-circles:after{content:"";color:#999;font-family:"Font Awesome 5 Free";font-weight:900}.leaflet-pm-icon-zone-circles.active:after{color:#007bff!important}.leaflet-pm-icon-import:after{content:"";font-family:"Font Awesome 5 Free";font-weight:900}.leaflet-pm-icon-export:after{content:"";font-family:"Font Awesome 5 Free";font-weight:900}.leaflet-pm-toolbar{margin-top:10px}.leaflet-pm-actions-container{background:#fff}.leaflet-pm-draggable{transform:translate(0,0)!important}.leaflet-map-pane,.leaflet-marker-pane{transform:translate(0,0)}.polygon-label{white-space:nowrap;opacity:.9;border-radius:3px;padding:2px 6px;font-size:12px;font-weight:600;box-shadow:0 1px 3px #0000004d}.polygon-label:before{display:none}@keyframes pulsate{0%{stroke-opacity:1;stroke-width:5px}50%{stroke-opacity:.6;stroke-width:8px}to{stroke-opacity:1;stroke-width:5px}}path.pulsating-polygon{animation:1.5s ease-in-out infinite pulsate!important}.street-view-panorama{z-index:1000!important;background:#e0e0e0!important;border:2px solid #fff!important;width:50%!important;height:50%!important;position:fixed!important;bottom:50px!important;right:0!important;box-shadow:0 0 10px #00000080!important}.street-view-panorama .gm-fullscreen-control{top:50px!important;right:0!important}.street-view-close{z-index:1001!important;cursor:pointer!important;color:#b3b3b3!important;background:#444!important;border:0!important;border-radius:2px!important;justify-content:center!important;align-items:center!important;width:40px!important;height:40px!important;padding:0!important;font-size:20px!important;display:flex!important;position:absolute!important;top:10px!important;right:10px!important;box-shadow:0 1px 4px -1px #0000004d!important}.street-view-close:hover{color:#fff!important}.leaflet-marker-icon.street-view-marker{background:0 0!important;border:none!important;margin-top:-25px!important;margin-left:-25px!important}.wakelock-button{color:#333;cursor:pointer;background:#fff;border-radius:4px;justify-content:center;align-items:center;width:30px;height:30px;text-decoration:none;display:flex}.wakelock-button:hover{background:#f4f4f4}.wakelock-button.active{color:#ffc107;background:#fffbea}.wakelock-button.active:hover{background:#fff9db}.wakelock-button i{font-size:16px}.pulse{fill:#ffc107;fill-opacity:.8;stroke:#ff9800;stroke-width:2px;animation:1.5s ease-out infinite pulse-animation}@keyframes pulse-animation{0%{r:8;fill-opacity:.8}50%{r:12;fill-opacity:.4}to{r:8;fill-opacity:.8}}.measure-distance-label{box-shadow:none!important;background:0 0!important;border:none!important;width:auto!important;height:auto!important}.measure-distance-text{color:#007bff;white-space:nowrap;text-align:center;background:#fff;border:1px solid #007bff;border-radius:2px;padding:1px 4px;font-size:10px;font-weight:700;display:inline-block;box-shadow:0 1px 2px #0000004d}.route-marker{color:#007bff;background:#fff;border:3px solid #007bff;border-radius:50%;justify-content:center;align-items:center;font-size:16px;font-weight:700;display:flex;box-shadow:0 2px 6px #0006}.route-start{color:#fff;background:#28a745;border-color:#1e7e34}.route-end{color:#fff;background:#dc3545;border-color:#bd2130}.route-start-end{background:linear-gradient(90deg,#28a745 0% 50%,#dc3545 50% 100%);border:3px solid #007bff;border-radius:12px;gap:0;padding:3px 6px;display:flex}.route-start-end span:first-child{color:#fff;border-right:2px solid #fff;padding-right:5px;font-size:14px;font-weight:700}.route-start-end span:last-child{color:#fff;padding-left:5px;font-size:14px;font-weight:700}.nearby-zone-marker{width:24px;height:24px;position:relative}.nearby-zone-dot{z-index:2;background-color:orange;border:2px solid #fff;border-radius:50%;width:12px;height:12px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.nearby-zone-pulse{opacity:.6;z-index:1;background-color:orange;border-radius:50%;width:24px;height:24px;animation:2s ease-out infinite pulse;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes pulse{0%{opacity:.8;transform:translate(-50%,-50%)scale(.5)}50%{opacity:.4;transform:translate(-50%,-50%)scale(1.2)}to{opacity:0;transform:translate(-50%,-50%)scale(1.5)}}.nearby-zone-popup{text-align:center;min-width:150px;padding:4px}.nearby-zone-popup strong{margin-bottom:4px;font-size:14px;display:block}.nearby-zone-popup small{color:#666;margin-bottom:8px;font-size:12px;display:block}.add-zone-btn{color:#fff;cursor:pointer;background-color:#007bff;border:none;border-radius:4px;padding:6px 12px;font-size:12px;font-weight:500;transition:background-color .2s}.add-zone-btn:hover{background-color:#0056b3}.add-zone-btn:active{background-color:#004085}.map-container{z-index:1;flex:1;min-height:0;position:relative}.leaflet-container{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;cursor:default!important}.turfer-marker{background:0 0;border:none}.turfer-icon{color:#fff;background:#007bff;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:20px;height:35px;font-size:12px;display:flex;box-shadow:0 2px 4px #0000004d}.turfer-popup{font-size:13px;line-height:1.5}.turfer-popup strong{color:#007bff;font-size:14px}.leaflet-tooltip.turfer-name{font-weight:600}.leaflet-tooltip.area-label{box-shadow:none;color:#1a1a1a;text-shadow:0 0 3px #fff,0 0 3px #fff,0 0 3px #fff;pointer-events:none;background:0 0;border:none;padding:0;font-size:11px;font-weight:600}.infoWindowIconContainer a{color:#666;text-decoration:none;transition:color .2s}.infoWindowIconContainer a:hover{color:#007bff}.infoWindowIconContainer img.infoWindowIcon{opacity:.6;transition:opacity .2s}.infoWindowIconContainer a:hover img.infoWindowIcon{opacity:1}#tagZoneButton:hover i{transition:color .2s;color:#007bff!important}.user-location-marker{background:0 0;border:none}.user-marker-icon{color:#fff;background:#28a745;border:3px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;font-size:14px;display:flex;box-shadow:0 2px 6px #0006}.help-popup{padding:0!important}.help-html-container{max-height:70vh;overflow:hidden;margin:0!important;padding:0!important}.help-dialog{height:100%;min-height:500px;display:flex}.help-tabs{background:#f8f9fa;border-right:1px solid #dee2e6;flex-direction:column;flex-shrink:0;width:200px;padding:10px 0;display:flex;overflow-y:auto}.help-tab{text-align:left;cursor:pointer;color:#495057;background:0 0;border:none;border-left:3px solid #0000;align-items:center;gap:8px;padding:12px 16px;font-size:14px;transition:all .2s;display:flex}.help-tab:hover{color:#212529;background:#e9ecef}.help-tab.active{color:#007bff;background:#fff;border-left-color:#007bff;font-weight:500}.help-tab i{text-align:center;width:20px;font-size:16px}.help-contents{text-align:left;background:#fff;flex:1;padding:20px;overflow-y:auto}.help-content{display:none}.help-content.active{animation:.3s fadeIn;display:block}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.help-section{line-height:1.6}.help-section h3{color:#212529;margin:20px 0 10px;font-size:18px;font-weight:600}.help-section h3:first-child{margin-top:0}.help-section p{color:#495057;margin-bottom:12px}.help-section ul{margin:10px 0;padding-left:20px}.help-section li{color:#495057;margin-bottom:8px}.help-section strong{color:#212529;font-weight:600}.help-section a{color:#007bff;text-decoration:none}.help-section a:hover{text-decoration:underline}@media (width<=768px){.help-dialog{flex-direction:column}.help-tabs{border-bottom:1px solid #dee2e6;border-right:none;flex-direction:row;width:100%;padding:0;overflow:auto hidden}.help-tab{white-space:nowrap;border-bottom:3px solid #0000;border-left:none}.help-tab.active{border-bottom-color:#007bff;border-left:none}.help-contents{padding:15px}}.sidebar{z-index:1000;pointer-events:none;background:0 0;flex-direction:column;width:60px;padding-bottom:60px;transition:width .3s,background .3s,box-shadow .3s;display:flex;position:fixed;top:0;bottom:0;left:0;overflow:hidden}.sidebar.expanded{pointer-events:auto;background:#fff;width:320px;box-shadow:2px 0 10px #0000001a}.sidebar-toggle{color:#fff;cursor:pointer;pointer-events:auto;background:#007bff;border:none;border-radius:4px;flex-shrink:0;width:40px;height:40px}.sidebar.expanded .sidebar-toggle{position:relative;top:0;right:0}.sidebar:not(.expanded) .sidebar-toggle{position:absolute;top:10px;right:10px}.sidebar-header{background:#fff;border-bottom:1px solid #e9ecef;flex-shrink:0;justify-content:space-between;align-items:center;padding:15px 20px;display:flex}.sidebar-header h2{color:#333;margin:0;font-size:24px;font-weight:600}.sidebar-header-buttons{gap:10px;display:flex}.sidebar-help-button{color:#007bff;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:40px;height:40px;font-size:20px;transition:all .2s;display:flex}.sidebar-help-button:hover{color:#0056b3;background:#e3f2fd}.sidebar-content{flex:1;min-height:0;padding:20px;overflow:hidden auto}.sidebar-section{background:#e9ecef;border-radius:8px;margin-bottom:20px;padding:15px}.sidebar-input,.sidebar-select{border:1px solid #ddd;border-radius:4px;width:100%;margin-bottom:8px;padding:8px 12px}.sidebar-button{color:#fff;cursor:pointer;background:#007bff;border:none;border-radius:4px;width:100%;padding:10px}.sidebar-button:hover{background:#0056b3}.sidebar-button:disabled{color:#f5f5f5;cursor:not-allowed;background:#999}.sidebar-button.picking-active{color:#007bff;background:#e3f2fd;box-shadow:inset 0 0 0 1px #007bff}.sidebar-button.picking-active:hover{background:#d5eafc}.sidebar-select:disabled{cursor:not-allowed;background:#f5f5f5}.sidebar-select option.country-option{font-weight:600}.sidebar-select option.region-option{padding-left:20px}.sidebar-section h3{color:#555;text-transform:uppercase;margin:0 0 10px;font-size:14px;font-weight:600}.search-container,.search-input-wrapper{position:relative}.search-input-wrapper .sidebar-input{padding-right:35px}.search-clear-btn{color:#999;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:4px 8px;transition:all .2s;display:flex;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.search-clear-btn:hover{color:#333;background:#f0f0f0}.search-clear-btn i{font-size:14px}.search-suggestions{z-index:1001;background:#fff;border:1px solid #ddd;border-top:none;border-radius:0 0 4px 4px;max-height:300px;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 4px 6px #0000001a}.search-suggestion-item{cursor:pointer;border-bottom:1px solid #f0f0f0;align-items:center;gap:8px;padding:10px 12px;transition:background-color .2s;display:flex}.search-suggestion-item:last-child{border-bottom:none}.search-suggestion-item:hover,.search-suggestion-item.selected{background-color:#f0f8ff}.search-suggestion-item i{color:#007bff;font-size:12px}.search-suggestion-item.loading,.search-suggestion-item.no-results{color:#999;cursor:default;justify-content:center;font-style:italic}.search-suggestion-item.loading:hover,.search-suggestion-item.no-results:hover{background-color:#fff}.filter-input-wrapper{align-items:flex-start;gap:8px;display:flex;position:relative}.filter-input-wrapper .sidebar-select{flex:1;margin-bottom:0}.filter-clear-btn{color:#999;cursor:pointer;background:0 0;border:1px solid #ddd;border-radius:4px;justify-content:center;align-items:center;min-width:40px;height:38px;padding:8px 12px;transition:all .2s;display:flex}.filter-clear-btn:hover{color:#333;background:#f0f0f0;border-color:#999}.filter-clear-btn i{font-size:14px}.tag-filter-container{border:1px solid #ddd;border-radius:4px;overflow:hidden}.tag-filter-toggle{cursor:pointer;background:#f8f9fa;border:none;align-items:center;gap:8px;width:100%;padding:10px 12px;font-weight:500;transition:background-color .2s;display:flex}.tag-filter-toggle:hover{background:#e9ecef}.tag-filter-toggle i{font-size:12px}.tag-count{color:#007bff;font-weight:600}.tag-filter-content{background:#fff;padding:12px}.tag-filter-controls{gap:8px;margin-bottom:12px;display:flex}.tag-control-btn{cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:4px;flex:1;padding:8px 12px;font-size:11px;font-weight:600;transition:all .2s}.tag-control-btn:hover{background:#f8f9fa}.tag-control-btn.active{color:#fff;background:#007bff;border-color:#007bff}.tag-loading{text-align:center;color:#999;padding:12px;font-style:italic}.tag-checkboxes{flex-direction:column;gap:4px;max-height:300px;display:flex;overflow-y:auto}.tag-checkbox-label{cursor:pointer;border-radius:4px;align-items:center;gap:8px;padding:6px 8px;transition:background-color .2s;display:flex}.tag-checkbox-label:hover{background:#f8f9fa}.tag-checkbox-label input[type=checkbox]{cursor:pointer;margin:0}.tag-name{flex:1;font-size:13px}.tag-count-badge{color:#999;font-size:11px}.tag-source-badge{border-radius:3px;justify-content:center;align-items:center;width:20px;height:20px;margin-left:auto;margin-right:4px;font-size:10px;display:inline-flex}.tag-source-badge.both{color:#fff;background:#6c757d}.tag-source-badge.official{color:#333;background:#ffc107}.tag-source-badge.community{color:#fff;background:#6c757d}.turfer-name-setting{flex-direction:column;gap:8px;display:flex}.turfer-name-setting label{color:#666;font-size:12px;font-weight:600}.turfer-name-display{background:#f8f9fa;border:1px solid #ddd;border-radius:4px;align-items:center;gap:8px;padding:8px 12px;display:flex}.turfer-name-value{color:#333;flex:1;font-weight:500}.turfer-name-edit-btn{color:#007bff;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px 8px;transition:all .2s}.turfer-name-edit-btn:hover{background:#e7f3ff}.turfer-name-edit{flex-direction:column;gap:8px;display:flex}.turfer-name-actions{gap:8px;display:flex}.turfer-name-save-btn,.turfer-name-cancel-btn{cursor:pointer;border:1px solid;border-radius:4px;flex:1;padding:8px 12px;font-weight:500;transition:all .2s}.turfer-name-save-btn{color:#fff;background:#28a745;border-color:#28a745}.turfer-name-save-btn:hover:not(:disabled){background:#218838;border-color:#218838}.turfer-name-save-btn:disabled{cursor:not-allowed;opacity:.6;background:#6c757d;border-color:#6c757d}.turfer-name-cancel-btn{color:#dc3545;background:#fff;border-color:#dc3545}.turfer-name-cancel-btn:hover{color:#fff;background:#dc3545}.measure-mode-btn{cursor:pointer;color:#666;background:0 0;border:1px solid #ddd;border-radius:4px;padding:6px 12px;font-size:14px;transition:all .2s}@media (hover:hover) and (pointer:fine){.measure-mode-btn:hover{color:#007bff;background:#f8f9fa;border-color:#007bff}}.measure-mode-btn.active{color:#007bff;background:#e3f2fd;border-color:#007bff}.measure-tool-container{margin-top:10px}.measure-tool-toggle{cursor:pointer;color:#333;background:#f8f9fa;border:1px solid #ddd;border-radius:4px;align-items:center;gap:8px;width:100%;padding:10px 12px;font-size:12px;font-weight:600;transition:all .2s;display:flex}.measure-tool-toggle:hover{background:#e9ecef}.measure-count{color:#007bff}.measure-tool-content{background:#fff;border:1px solid #ddd;border-radius:4px;margin-top:10px;padding:10px}.measure-tool-controls{gap:6px;margin-bottom:10px;display:flex}.measure-control-btn{color:#fff;cursor:pointer;background:#007bff;border:none;border-radius:4px;flex:1;padding:8px 10px;font-size:12px;font-weight:500;transition:all .2s}.measure-control-btn:hover{background:#0056b3}.measure-control-btn.danger{background:#dc3545;flex:none;padding:8px 12px}.measure-control-btn.danger:hover{background:#c82333}.measure-distance-display{color:#333;background:#e3f2fd;border-radius:4px;margin-bottom:10px;padding:8px 10px;font-size:13px}.measure-distance-display strong{color:#007bff}.measure-routing-controls{background:#f8f9fa;border-radius:4px;margin-bottom:10px;padding:10px;font-size:13px}.measure-routing-controls>label{cursor:pointer;align-items:center;gap:8px;margin-bottom:8px;display:flex}.measure-routing-controls input[type=checkbox]{cursor:pointer}.routing-mode-options{gap:15px;margin-left:24px;padding-top:5px;display:flex}.routing-mode-options label{cursor:pointer;align-items:center;gap:5px;font-size:12px;display:flex}.routing-mode-options input[type=radio]{cursor:pointer}.routing-mode-options i{color:#666}.measure-empty-state{text-align:center;color:#666;padding:20px;font-size:13px;font-weight:500}.measure-points-list{max-height:300px;margin:0;padding:0;list-style:none;overflow-y:auto}.measure-point-item{cursor:move;border-bottom:1px solid #f0f0f0;align-items:center;gap:8px;padding:8px 10px;transition:all .2s;display:flex}.measure-point-item:hover{background:#f8f9fa}.measure-point-item.selected{background:#fff3cd;border-left:3px solid #ffc107}.measure-point-number{color:#fff;background:#007bff;border-radius:50%;justify-content:center;align-items:center;min-width:22px;height:22px;font-size:10px;font-weight:600;display:flex}.measure-point-title{color:#333;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12px;overflow:hidden}.measure-point-buttons{opacity:0;gap:4px;transition:opacity .2s;display:flex}.measure-point-item:hover .measure-point-buttons{opacity:1}.measure-point-insert-btn,.measure-point-remove-btn{cursor:pointer;background:0 0;border:none;border-radius:3px;padding:4px 6px;font-size:11px;transition:all .2s}.measure-point-insert-btn{color:#28a745}.measure-point-insert-btn:hover{background:#d4edda}.measure-point-remove-btn{color:#dc3545}.measure-point-remove-btn:hover{background:#ffe5e5}.measure-insert-marker{color:#28a745;cursor:pointer;background:#d4edda;border:2px dashed #28a745;border-left:none;border-right:none;align-items:center;gap:6px;padding:6px 10px;font-size:11px;font-weight:600;transition:all .2s;display:flex}.measure-insert-marker:hover{background:#c3e6cb}.measure-insert-marker i{font-size:12px;animation:1s ease-in-out infinite pulse-insert}@keyframes pulse-insert{0%,to{opacity:1;transform:translate(0)}50%{opacity:.6;transform:translate(3px)}}.history-fab{z-index:1002;color:#fff;cursor:pointer;background:#007bff;border:none;border-radius:4px;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;transition:background .2s;display:flex;position:fixed;bottom:16px;left:10px;box-shadow:0 2px 8px #0000004d}.history-fab:hover{background:#0056b3}.history-panel{z-index:1001;background:#fff;border-top:1px solid #ddd;align-items:center;gap:10px;padding:10px;display:flex}.history-calendar{align-items:center;display:flex}.calendar-input{border:1px solid #ddd;border-radius:4px;width:130px;padding:6px 8px;font-size:13px}.calendar-input::-webkit-calendar-picker-indicator{cursor:pointer;filter:invert(29%)sepia(98%)saturate(1500%)hue-rotate(204deg)brightness(95%);font-size:18px}.history-slider-container{flex:1;padding:0 15px}.history-slider{touch-action:none;-webkit-user-select:none;user-select:none;align-items:center;width:100%;height:20px;display:flex;position:relative}.history-track{background:#ddd;border-radius:4px;flex-grow:1;height:8px;position:relative}.history-range{background:#007bff;border-radius:4px;height:100%;position:absolute}.history-thumb{cursor:grab;background:#007bff;border:2px solid #fff;border-radius:50%;outline:none;width:20px;height:20px;display:block;position:relative;box-shadow:0 2px 4px #0003}.history-thumb:focus-visible{box-shadow:0 0 0 3px #007bff66}.history-thumb:active{cursor:grabbing;background:#0056b3}.thumb-label{color:#fff;white-space:nowrap;pointer-events:none;opacity:0;background:#333;border-radius:4px;padding:4px 8px;font-size:11px;transition:opacity .2s;position:absolute;top:-30px;left:50%;transform:translate(-50%)}.history-thumb:hover .thumb-label,.history-thumb:active .thumb-label,.history-thumb:focus-visible .thumb-label{opacity:1}@media (width<=768px){.history-panel{flex-wrap:wrap;gap:8px;padding:8px}.history-calendar{flex:1;min-width:140px}.calendar-input{width:100%;padding:8px;font-size:14px}.history-slider-container{flex-basis:100%;order:3;width:100%;padding:0}.history-slider{height:24px}.history-track{height:10px}.history-thumb{width:24px;height:24px}.thumb-label{font-size:12px;top:-35px}}@media (width<=480px){.history-panel{gap:6px;padding:6px}.calendar-input{padding:6px 8px;font-size:13px}}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}#root{flex-direction:column;width:100vw;height:100dvh;display:flex;overflow:hidden}button,input,select,textarea{font-family:inherit}.leaflet-popup-content-wrapper{border-radius:8px;padding:0;overflow:hidden;box-shadow:0 4px 12px #00000026}.leaflet-popup-content{width:100%;min-width:180px;font-size:13px;line-height:1.4;margin:0!important;padding:0!important}.leaflet-popup-content .mapInfoWindow{width:100%;margin:0;padding:0}.leaflet-popup-content .infoWindowMenu{box-sizing:border-box;border-bottom:2px solid #007bff;width:100%;background-color:#f8f9fa!important;margin:0!important;padding:3px!important}.leaflet-popup-content h3{color:#333;background:#f8f9fa;border-bottom:2px solid #007bff;margin:0;padding:10px 12px;font-size:15px;font-weight:600}.leaflet-popup-content>:not(h3){padding:0 12px 12px}.leaflet-popup-content p{color:#555;margin:4px 0}.leaflet-popup-content p:first-of-type{padding-top:12px}.leaflet-popup-content strong{color:#333;font-weight:600}.leaflet-popup-tip{box-shadow:0 4px 12px #00000026}.leaflet-popup-close-button{color:#666!important;width:auto!important;height:auto!important;padding:1px 5px!important;font-size:20px!important}.leaflet-popup-close-button:hover{background:#f0f0f0;border-radius:4px;color:#333!important}#tagContainer .official{color:#28a745;font-weight:600}.infoWindowIconContainer:empty{display:none!important}.swal2-icon.no-border{border:none!important}body.christmas-theme{--christmas-red:#c41e3a;--christmas-green:#165b33;--christmas-gold:gold;--christmas-dark-red:#8b1a2e;--christmas-light-green:#28a745;--christmas-snow:#f0f8ff}@keyframes snowfall{0%{opacity:1;transform:translateY(-10vh)translate(0)}to{opacity:.3;transform:translateY(110vh)translate(100px)}}@keyframes snowfall-2{0%{opacity:1;transform:translateY(-10vh)translate(0)}to{opacity:.3;transform:translateY(110vh)translate(-100px)}}body.christmas-theme:before,body.christmas-theme:after{content:"❄";color:#fffffff2;text-shadow:0 0 3px #fffc,0 0 8px #87cefa99;z-index:10000;pointer-events:none;font-size:28px;animation:10s linear infinite snowfall;position:fixed;top:-10vh}body.christmas-theme:before{animation-delay:0s;left:10%}body.christmas-theme:after{animation:12s linear 2s infinite snowfall-2;left:80%}.snowflake{color:#fffffff2;text-shadow:0 0 3px #fffc,0 0 8px #87cefa99;z-index:10000;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:26px;position:fixed;top:-10vh}.snowflake:first-child{font-size:24px;animation:11s linear 1s infinite snowfall;left:20%}.snowflake:nth-child(2){font-size:30px;animation:13s linear 3s infinite snowfall-2;left:40%}.snowflake:nth-child(3){font-size:22px;animation:9s linear 5s infinite snowfall;left:60%}.snowflake:nth-child(4){font-size:28px;animation:14s linear .5s infinite snowfall-2;left:90%}.snowflake:nth-child(5){font-size:20px;animation:10s linear 4s infinite snowfall;left:30%}.snowflake:nth-child(6){font-size:32px;animation:11s linear 2.5s infinite snowfall-2;left:70%}body.christmas-theme .sidebar-toggle{background:var(--christmas-red);box-shadow:0 2px 8px #c41e3a4d}body.christmas-theme .sidebar-toggle:hover{background:var(--christmas-dark-red)}body.christmas-theme .sidebar-header{background:linear-gradient(135deg, var(--christmas-red) 0%, var(--christmas-dark-red) 100%);border-bottom:3px solid var(--christmas-gold)}body.christmas-theme .sidebar-header h2{color:#fff;text-shadow:2px 2px 4px #0000004d;font-size:20px}body.christmas-theme .sidebar-header h2:before{content:"🎄 ";font-size:26px}body.christmas-theme .sidebar-help-button{color:var(--christmas-gold);background:#ffd7001a}body.christmas-theme .sidebar-help-button:hover{color:var(--christmas-gold);background:#ffd70033}body.christmas-theme .sidebar.expanded{background:linear-gradient(#fff5f5 0%,#ffe5e5 100%)}body.christmas-theme .history-fab{background:var(--christmas-red)}body.christmas-theme .history-fab:hover{background:var(--christmas-dark-red)}body.christmas-theme .history-panel{border-top:2px solid var(--christmas-gold);background:linear-gradient(270deg,#fff5f5 0%,#ffe5e5 100%)}body.christmas-theme .history-range,body.christmas-theme .history-thumb{background:var(--christmas-red)}body.christmas-theme .history-thumb:active{background:var(--christmas-dark-red)}body.christmas-theme .calendar-input::-webkit-calendar-picker-indicator{filter:invert(20%)sepia(94%)saturate(2384%)hue-rotate(335deg)brightness(85%)contrast(98%)}body.christmas-theme .calendar-input::-webkit-calendar-picker-indicator:hover{filter:invert(11%)sepia(80%)saturate(3173%)hue-rotate(335deg)brightness(103%)contrast(92%)}body.christmas-theme .sidebar-content{background:0 0}body.christmas-theme .sidebar-section{background:linear-gradient(135deg, var(--christmas-red) 0%, var(--christmas-dark-red) 100%);border-left:4px solid var(--christmas-gold);color:#fff}body.christmas-theme .sidebar-section h3{color:var(--christmas-gold)}body.christmas-theme .sidebar-section label{color:#fff}body.christmas-theme .sidebar-section div[style*=color],body.christmas-theme .turfer-name-setting div[style*="color: #666"]{color:#ffffffe6!important}body.christmas-theme .sidebar-button{background:var(--christmas-green);box-shadow:0 2px 4px #165b3333}body.christmas-theme .sidebar-button:hover{background:var(--christmas-light-green)}body.christmas-theme .search-suggestions{border:2px solid var(--christmas-gold);background:#fff}body.christmas-theme .search-suggestion-item{color:#333}body.christmas-theme .search-suggestion-item:hover,body.christmas-theme .search-suggestion-item.selected{background-color:#fff5f5}body.christmas-theme .search-suggestion-item i,body.christmas-theme .tag-count{color:var(--christmas-red)}body.christmas-theme .measure-count{color:#fff}body.christmas-theme .tag-control-btn.active,body.christmas-theme .measure-mode-btn.active{background:var(--christmas-green);color:#fff;border-color:var(--christmas-green)}body.christmas-theme .measure-mode-btn:hover{border-color:var(--christmas-green);color:var(--christmas-green)}body.christmas-theme .measure-control-btn{background:var(--christmas-green)}body.christmas-theme .measure-control-btn:hover{background:var(--christmas-light-green)}body.christmas-theme .measure-point-number{background:var(--christmas-red)}body.christmas-theme .measure-distance-display{background:linear-gradient(135deg, var(--christmas-red) 0%, var(--christmas-dark-red) 100%);border-left:4px solid var(--christmas-gold);color:#fff}body.christmas-theme .measure-distance-display strong{color:var(--christmas-gold)}body.christmas-theme .measure-distance-display,body.christmas-theme .measure-distance-display *{color:#fff!important}body.christmas-theme .tag-filter-toggle{background:linear-gradient(135deg, var(--christmas-red) 0%, var(--christmas-dark-red) 100%);color:#fff}body.christmas-theme .tag-filter-toggle:hover{background:linear-gradient(135deg, var(--christmas-dark-red) 0%, #6b1525 100%)}body.christmas-theme .tag-filter-content,body.christmas-theme .measure-tool-content{background:linear-gradient(135deg,#fff5f5 0%,#ffe5e5 100%)}body.christmas-theme .tag-filter-content *,body.christmas-theme .tag-checkbox-label .tag-name{color:#333!important}body.christmas-theme .tag-loading{color:#666!important}body.christmas-theme .route-optimizer-section h4{color:var(--christmas-red)!important}body.christmas-theme .route-optimizer-section>div[style*="color: #666"],body.christmas-theme .route-optimizer-section>div>label{color:#333!important}body.christmas-theme .measure-tool-toggle{background:linear-gradient(135deg, var(--christmas-red) 0%, var(--christmas-dark-red) 100%);color:#fff;border-color:var(--christmas-gold)}body.christmas-theme .measure-tool-toggle:hover{background:linear-gradient(135deg, var(--christmas-dark-red) 0%, #6b1525 100%)}body.christmas-theme .measure-routing-controls{background:linear-gradient(135deg, var(--christmas-red) 0%, var(--christmas-dark-red) 100%);color:#fff}body.christmas-theme .measure-routing-controls label,body.christmas-theme .measure-routing-controls span,body.christmas-theme .measure-routing-controls i,body.christmas-theme .measure-mode-btn i{color:#fff!important}body.christmas-theme .leaflet-popup-content-wrapper{border:3px solid var(--christmas-gold);box-shadow:0 4px 12px #c41e3a33}body.christmas-theme .leaflet-popup-content h3,body.christmas-theme .leaflet-popup-content .infoWindowMenu{border-bottom:2px solid var(--christmas-gold);background:linear-gradient(135deg, var(--christmas-red) 0%, var(--christmas-dark-red) 100%)!important;color:#fff!important}body.christmas-theme .leaflet-popup-content .infoWindowMenu *{color:#fff!important}body.christmas-theme .leaflet-popup-content .infoWindowMenu a{color:var(--christmas-gold)!important}body.christmas-theme .leaflet-popup-close-button{color:#fff!important}body.christmas-theme .leaflet-popup-close-button:hover{color:var(--christmas-gold)!important;background:#fff3!important}body.christmas-theme .help-tabs{background:linear-gradient(180deg, var(--christmas-red) 0%, var(--christmas-dark-red) 100%);border-right:2px solid var(--christmas-gold)}@media (width>=769px){body.christmas-theme .help-tabs{overflow-x:hidden}}body.christmas-theme .help-tab{color:#fffc;border-left-color:#0000}body.christmas-theme .help-tab:hover{color:#fff;background:#ffffff1a}body.christmas-theme .help-tab.active{color:var(--christmas-red);border-left-color:var(--christmas-gold);background:linear-gradient(135deg,#fff5f5 0%,#ffe5e5 100%);font-weight:600}body.christmas-theme .help-contents{background:linear-gradient(135deg,#fff5f5 0%,#ffe5e5 100%)}body.christmas-theme .help-section h3{color:var(--christmas-red)}body.christmas-theme .help-section a{color:var(--christmas-green);font-weight:500}body.christmas-theme .help-section a:hover{color:var(--christmas-light-green)}body.christmas-theme .help-christmas-tree{text-align:center;cursor:pointer;margin-top:auto;padding:15px;font-size:70px;transition:transform .2s}body.christmas-theme .help-christmas-tree:hover{transform:scale(1.05)}body.christmas-theme .help-christmas-tree.shake{animation:.5s ease-in-out tree-shake,.5s ease-in-out tree-blink}@keyframes tree-shake{0%,to{transform:translate(0)rotate(0)}10%{transform:translate(-10px)rotate(-5deg)}20%{transform:translate(10px)rotate(5deg)}30%{transform:translate(-10px)rotate(-5deg)}40%{transform:translate(10px)rotate(5deg)}50%{transform:translate(-10px)rotate(-5deg)}60%{transform:translate(10px)rotate(5deg)}70%{transform:translate(-8px)rotate(-4deg)}80%{transform:translate(8px)rotate(4deg)}90%{transform:translate(-4px)rotate(-2deg)}}@keyframes tree-blink{0%,to{filter:drop-shadow(0 4px 8px #0000004d)}20%{filter:drop-shadow(0 0 20px gold)hue-rotate()brightness(1.5)}40%{filter:drop-shadow(0 0 20px red)hue-rotate(120deg)brightness(1.5)}60%{filter:drop-shadow(0 0 20px #0f0)hue-rotate(240deg)brightness(1.5)}80%{filter:drop-shadow(0 0 20px gold)hue-rotate(360deg)brightness(1.5)}}body.christmas-theme .help-popup{overflow:hidden!important}.christmas-squirrel{pointer-events:none;z-index:10002;font-size:20px;position:absolute}.christmas-squirrel.shake-with-tree{animation:1s ease-in-out forwards squirrel-peek,.5s ease-in-out squirrel-shake!important}@keyframes squirrel-shake{0%,to{transform:scaleX(-1)translate(10px,-40px)translate(0)rotate(0)scale(1)}10%{transform:scaleX(-1)translate(10px,-40px)translate(-3px)rotate(-2deg)scale(1)}20%{transform:scaleX(-1)translate(10px,-40px)translate(3px)rotate(2deg)scale(1)}30%{transform:scaleX(-1)translate(10px,-40px)translate(-3px)rotate(-2deg)scale(1)}40%{transform:scaleX(-1)translate(10px,-40px)translate(3px)rotate(2deg)scale(1)}50%{transform:scaleX(-1)translate(10px,-40px)translate(-3px)rotate(-2deg)scale(1)}60%{transform:scaleX(-1)translate(10px,-40px)translate(3px)rotate(2deg)scale(1)}70%{transform:scaleX(-1)translate(10px,-40px)translate(-2px)rotate(-1deg)scale(1)}80%{transform:scaleX(-1)translate(10px,-40px)translate(2px)rotate(1deg)scale(1)}90%{transform:scaleX(-1)translate(10px,-40px)translate(-1px)rotate(-1deg)scale(1)}}@keyframes squirrel-peek{0%{opacity:0;transform:scaleX(-1)translate(25px,-40px)scale(0)}15%{opacity:1;transform:scaleX(-1)translate(10px,-40px)scale(1)}85%{opacity:1;transform:scaleX(-1)translate(10px,-40px)scale(1)}to{opacity:0;transform:scaleX(-1)translate(25px,-40px)scale(0)}}body.christmas-theme .swal2-popup{border:3px solid var(--christmas-gold)}body.christmas-theme .swal2-title{color:var(--christmas-red)}body.christmas-theme .swal2-confirm{background:var(--christmas-green)!important}body.christmas-theme .swal2-confirm:hover{background:var(--christmas-light-green)!important}body.christmas-theme .swal2-cancel{background:var(--christmas-red)!important}body.christmas-theme .swal2-cancel:hover{background:var(--christmas-dark-red)!important}@media (width<=768px){body.christmas-theme .help-tabs{border-right:none;border-bottom:2px solid var(--christmas-gold)}body.christmas-theme .help-tab.active{border-left:none;border-bottom-color:var(--christmas-gold)}body.christmas-theme .help-christmas-tree{display:none}}.christmas-toggle{background:var(--christmas-red,#c41e3a);color:#fff;border:3px solid var(--christmas-gold,gold);cursor:pointer;z-index:10001;width:60px;height:60px;transform-style:preserve-3d;border-radius:50%;justify-content:center;align-items:center;font-size:28px;transition:box-shadow .3s;display:flex;position:fixed;bottom:80px;right:20px;box-shadow:0 4px 12px #0000004d}.christmas-toggle.flipping{animation:.6s ease-in-out coin-flip}.christmas-toggle:hover{transform:scale(1.1);box-shadow:0 6px 16px #0006}.christmas-toggle:active:not(.flipping){transform:scale(.95)}@keyframes coin-flip{0%{transform:scale(1.1)rotateY(0)}50%{transform:scale(1.1)rotateY(90deg)}to{transform:scale(1.1)rotateY(180deg)}}body.christmas-theme .christmas-toggle{animation:2s ease-in-out infinite pulse-christmas}@keyframes pulse-christmas{0%,to{box-shadow:0 4px 12px #0000004d}50%{box-shadow:0 4px 20px #ffd70099}}.christmas-toggle.disappearing{animation:.8s ease-in-out forwards grinch-disappear}@keyframes grinch-disappear{0%{opacity:1;transform:scale(1)rotate(0)}20%{opacity:1;transform:scale(1.3)rotate(0)}40%{opacity:1;transform:scale(1.3)rotate(-10deg)}60%{opacity:1;transform:scale(1.3)rotate(10deg)}80%{opacity:.5;transform:scale(.5)rotate(720deg)}to{opacity:0;transform:scale(0)rotate(1080deg)}}
