.avatar{border-radius:var(--radius-full);object-fit:cover;flex-shrink:0;background:var(--color-bg-raised)}.avatar--fallback{display:flex;align-items:center;justify-content:center;color:var(--color-text-2)}.shell{display:flex;height:100%}.sidebar{width:var(--sidebar-width);flex-shrink:0;display:flex;flex-direction:column;background:var(--color-bg-deep);border-right:1px solid var(--color-border);padding:var(--space-4) 0}.sidebar-brand{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-5) var(--space-6)}.sidebar-logo{width:32px;height:32px;flex-shrink:0}.sidebar-name{font-weight:var(--font-weight-medium);font-size:var(--font-size-base)}.sidebar-nav{flex:1;display:flex;flex-direction:column;gap:2px;padding:0 var(--space-3)}.nav-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:10px;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-muted);transition:background var(--transition-fast),color var(--transition-fast)}.nav-item:hover{background:var(--color-bg-surface);color:var(--color-text)}.nav-item--active{background:var(--color-accent-soft);color:var(--color-text)}.nav-icon{font-size:16px;width:20px;text-align:center;position:relative}.notif-badge{position:absolute;top:-6px;right:-8px;min-width:16px;height:16px;padding:0 4px;box-sizing:border-box;border-radius:8px;background:var(--color-accent);color:#fff;font-size:10px;font-weight:var(--font-weight-bold, 700);line-height:16px;text-align:center;pointer-events:none}.sidebar-footer{padding:var(--space-4) var(--space-4) 0;border-top:1px solid var(--color-border);margin-top:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.sidebar-athlete{display:flex;align-items:center;gap:var(--space-2)}.athlete-avatar{width:28px;height:28px;border-radius:50%;object-fit:cover;flex-shrink:0}.athlete-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.sidebar-settings-btn{flex-shrink:0;display:flex;align-items:center;justify-content:center;color:var(--color-text-muted);border-radius:6px;padding:3px;transition:background var(--transition-fast),color var(--transition-fast)}.sidebar-settings-btn:hover{background:var(--color-bg-surface);color:var(--color-text)}.sidebar-settings-btn--active{color:var(--color-text)}.sidebar-logout{width:100%;justify-content:center;font-size:var(--font-size-xs)}.shell-main{flex:1;display:flex;flex-direction:column;overflow:hidden;padding-bottom:0}.topbar{display:none;position:fixed;top:0;left:0;right:0;height:58px;background:var(--color-tabbar-bg);backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);border-bottom:.5px solid var(--color-surface-shimmer);z-index:100;align-items:center;justify-content:space-between;padding:0 16px}.topbar-logo-link{display:flex;align-items:center;-webkit-tap-highlight-color:transparent}.topbar-logo{width:36px;height:36px;flex-shrink:0}.topbar-right{display:flex;align-items:center;gap:18px}.topbar-social-btn{display:flex;align-items:center;justify-content:center;color:var(--color-text-muted);-webkit-tap-highlight-color:transparent;transition:color var(--transition-fast)}.topbar-bell-btn{position:relative}.topbar-social-btn:hover{color:var(--color-text)}.topbar-social-btn--active{color:var(--color-accent)}.topbar-profile-btn{width:42px;height:42px;border-radius:50%;border:2px solid var(--color-accent);background:var(--color-bg-surface);display:flex;align-items:center;justify-content:center;color:var(--color-text-muted);flex-shrink:0;overflow:hidden;-webkit-tap-highlight-color:transparent}.topbar-profile-img{width:100%;height:100%;object-fit:cover}.tabbar{display:none;position:fixed;bottom:0;left:0;right:0;height:88px;background:var(--color-tabbar-bg);backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);border-top:.5px solid var(--color-surface-shimmer);justify-content:space-around;align-items:flex-start;padding-top:4px;z-index:100}.tab-item{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--color-text-muted);transition:color var(--transition-fast);padding:4px 12px;-webkit-tap-highlight-color:transparent}.tab-item--active{color:var(--color-text)}.tab-icon{line-height:1;display:flex;align-items:center;justify-content:center}.tab-label{font-size:10px;font-weight:500}@media(max-width:768px){.sidebar{display:none}.topbar{display:flex;height:calc(58px + env(safe-area-inset-top));padding-top:env(safe-area-inset-top)}.tabbar{display:flex;height:calc(58px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom)}.shell-main{padding-bottom:calc(58px + env(safe-area-inset-bottom));padding-top:calc(58px + env(safe-area-inset-top))}html[data-platform=ios] .tabbar{height:58px;padding-bottom:0}html[data-platform=ios] .shell-main{padding-bottom:58px}}.login-page{display:flex;align-items:center;justify-content:center;min-height:100dvh;background:var(--color-bg)}.auth-gate{display:flex;flex-direction:column;align-items:center;gap:0;text-align:center;padding:40px 32px;width:100%;max-width:393px}.ag-sport-icons{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:36px}.ag-sport-box{width:64px;height:64px;border-radius:20px;display:flex;align-items:center;justify-content:center}.ag-logo{font-size:30px;font-weight:700;letter-spacing:-.5px;line-height:1;margin-bottom:8px}.ag-tagline{font-size:15px;color:var(--color-text-muted);line-height:1.5;margin-bottom:48px}.ag-error{background:var(--color-sport-run-bg);border:.5px solid rgba(194,82,74,.45);color:var(--color-sport-run);border-radius:12px;padding:12px 14px;font-size:13px;line-height:1.45;margin:-24px 0 24px;text-align:left}.ag-connect-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;background:var(--color-strava);color:#fff;border:none;border-radius:16px;padding:16px;font-size:16px;font-weight:700;font-family:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:opacity .15s}.ag-connect-btn:hover{opacity:.88}.act-card{display:flex;align-items:center;padding:var(--space-4);background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);position:relative;overflow:hidden;transition:background var(--transition-fast);gap:var(--space-3);flex-shrink:0}.act-card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--color-surface-highlight),transparent)}.act-card:hover{background:var(--color-bg-overlay)}.act-subtitle{font-size:var(--font-size-xs);color:var(--color-text-2);font-weight:var(--font-weight-medium);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}.act-card--laps{flex-direction:column;align-items:stretch;gap:var(--space-3)}.act-card--laps .act-card-head{display:flex;align-items:center;gap:var(--space-3)}.act-laps{width:100%}.act-countdown{font-weight:var(--font-weight-bold);color:var(--color-text)}.act-card-badge{position:absolute;top:var(--space-3);right:var(--space-4);z-index:1}.act-card--badge .act-name{padding-right:52px}.act-tile{flex-shrink:0;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;overflow:hidden}.act-track{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.act-track svg{display:block}.act-info{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.act-name{font-weight:var(--font-weight-medium);font-size:var(--font-size-base);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.act-meta{font-size:var(--font-size-xs);color:var(--color-text-muted);display:flex;gap:var(--space-1);align-items:center}.act-type-label{font-weight:var(--font-weight-medium)}.act-stats{font-size:var(--font-size-sm);color:var(--color-text-2);display:flex;gap:var(--space-3);align-items:center;flex-wrap:nowrap;min-width:0;overflow:hidden}.act-stat{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:1;min-width:0}.sep{color:var(--color-text-muted);flex-shrink:0}.act-card.is-editing{padding-right:56px}.act-card-del{position:absolute;top:50%;right:12px;transform:translateY(-50%);width:32px;height:32px;border-radius:50%;background:var(--color-danger);color:#fff;font-size:18px;line-height:1;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-family:var(--font-family);padding:0;z-index:5;box-shadow:var(--shadow-card)}.home-page{padding-bottom:var(--space-10)}.home-greeting{font-size:34px;font-weight:700;letter-spacing:-.5px;line-height:var(--line-height-tight);margin-bottom:var(--space-5)}.section-title{font-size:20px;font-weight:600;letter-spacing:-.2px;margin-bottom:14px}.home-card{padding:var(--space-5);margin-bottom:var(--space-4);position:relative;overflow:hidden}.home-card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--color-surface-highlight),transparent)}.home-card-title{font-size:11px;font-weight:var(--font-weight-medium);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-3)}.home-chart-card{padding-bottom:var(--space-4)}.chart-summary{font-size:14px;color:var(--color-text-muted);margin-bottom:14px}.chart-summary strong{color:var(--color-text);font-weight:700}.chart-legend{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:14px}.legend-item{display:flex;align-items:center;gap:var(--space-1);font-size:13px;color:var(--color-text-muted)}.legend-dot{width:14px;height:6px;border-radius:2px;flex-shrink:0}.bar-chart-wrap{position:relative}.bar-chart-grid{position:absolute;top:0;left:0;right:0;bottom:24px;display:flex;flex-direction:column;justify-content:space-between;pointer-events:none}.grid-line{border-top:.5px solid var(--color-overscan-faint);position:relative;width:100%}.grid-label{position:absolute;left:0;top:3px;font-size:9px;color:var(--color-text-muted);opacity:.5}.bar-chart{display:flex;justify-content:space-between;align-items:flex-end;gap:6px;position:relative}.bar-col{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%}.bar-stack{width:100%;display:flex;flex-direction:column-reverse;border-radius:4px;overflow:hidden;gap:1px;min-width:4px}.bar-segment{width:100%;min-height:3px}.bar-empty-tick{width:100%;height:3px;background:var(--color-overscan-faint);border-radius:2px}.bar-label{font-size:10px;color:var(--color-text-muted);font-weight:var(--font-weight-medium);line-height:24px}.bar-label.today{color:var(--color-text);font-weight:700}.home-races-list{display:flex;flex-direction:column;gap:var(--space-2)}.home-races-empty{padding:var(--space-4) 0;text-align:center;font-size:var(--font-size-sm)}.race-cat-tag{display:inline-block;padding:2px 10px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.3px}.race-cat-1{background:#e0584f29;color:#e0584f}.race-cat-2{background:#d99a2b29;color:#d99a2b}.race-cat-3{background:#5fa8a029;color:#5fa8a0}.fm-modal{max-width:520px}.fm-body{padding:16px 20px 20px;display:flex;flex-direction:column;gap:18px;overflow-y:auto}.fm-section{display:flex;flex-direction:column;gap:8px}.fm-section-label{font-size:11px;font-weight:600;letter-spacing:.4px;text-transform:uppercase;color:var(--color-text-muted)}.fm-row{display:flex;flex-wrap:wrap;gap:6px}.fm-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.fm-header-actions{display:flex;align-items:center;gap:12px}.fm-clear{background:none;border:none;color:var(--color-text-muted);font-size:12px;font-family:var(--font-family);cursor:pointer;padding:4px 6px;border-radius:6px}.fm-clear:hover{color:var(--color-text);background:var(--color-bg-surface)}.fm-footer{padding:12px 20px 16px;border-top:.5px solid var(--color-surface-hairline);flex-shrink:0}.fm-apply{width:100%;background:var(--color-accent);border:none;color:#fff;font-size:14px;font-weight:600;padding:11px 16px;border-radius:10px;cursor:pointer;font-family:var(--font-family);-webkit-tap-highlight-color:transparent;transition:opacity var(--transition-fast)}.fm-apply:hover{opacity:.9}.fm-apply:active{opacity:.8}.fb-trigger{display:inline-flex;align-items:center;gap:8px;background:var(--color-bg-surface);border:.5px solid var(--color-border);border-radius:var(--radius-full);padding:7px 14px;color:var(--color-text);font-family:var(--font-family);font-size:13px;font-weight:600;cursor:pointer;transition:background .12s,border-color .12s}.fb-trigger:hover{background:var(--color-bg-overlay)}.fb-trigger.has-active{background:var(--color-accent-softer);border-color:var(--color-accent-line)}.fb-trigger-summary{color:var(--color-text-muted);font-weight:500;font-size:12px}.fb-trigger.has-active .fb-trigger-summary{color:var(--color-text)}.fb-trigger-chev{font-size:10px;opacity:.7}.fb-trigger-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--color-accent);color:#fff;font-size:11px;font-weight:700}.drs-outer{display:flex;flex-direction:column;gap:8px;flex:1 1 100%;width:100%;min-width:0}.drs-wrap{position:relative;height:20px;display:flex;align-items:center}.drs-track{position:absolute;left:0;right:0;height:4px;background:var(--color-bg-overlay);border-radius:2px;pointer-events:none}.drs-fill{position:absolute;height:100%;background:var(--color-accent);border-radius:2px}.drs-thumb{position:absolute;width:100%;height:100%;margin:0;padding:0;-moz-appearance:none;appearance:none;-webkit-appearance:none;background:transparent;pointer-events:none;outline:none}.drs-thumb::-webkit-slider-thumb{pointer-events:all;-moz-appearance:none;appearance:none;-webkit-appearance:none;width:16px;height:16px;border-radius:50%;background:var(--color-accent);cursor:pointer;border:2.5px solid var(--color-bg-deep);box-shadow:0 1px 5px var(--color-knob-shadow)}.drs-thumb::-moz-range-thumb{pointer-events:all;width:13px;height:13px;border-radius:50%;background:var(--color-accent);cursor:pointer;border:2px solid var(--color-bg-deep)}.drs-thumb::-webkit-slider-runnable-track{background:transparent}.drs-thumb::-moz-range-track{background:transparent;height:4px}.drs-values{display:flex;justify-content:space-between;font-size:11px;color:var(--color-text-muted);font-family:monospace}.drs-inputs{display:flex;gap:10px}.drs-input-field{flex:1 1 0;min-width:0;display:flex;align-items:center;gap:6px;background:var(--color-bg-surface);border:.5px solid var(--color-border);border-radius:8px;padding:6px 10px}.drs-input-label{font-size:11px;font-weight:600;letter-spacing:.3px;text-transform:uppercase;color:var(--color-text-muted)}.drs-input-field input{flex:1;min-width:0;background:none;border:none;outline:none;color:var(--color-text);font-size:13px;font-family:var(--font-family);-moz-appearance:textfield}.drs-input-field input::-webkit-outer-spin-button,.drs-input-field input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.drs-input-unit{font-size:11px;color:var(--color-text-muted)}.acts-page{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden;width:100%;max-width:var(--content-max-width);margin:0 auto}.acts-header{flex-shrink:0;padding:20px 32px 12px;border-bottom:.5px solid var(--color-border);background:var(--color-bg);display:flex;flex-direction:column;gap:10px}.acts-trigger-row{display:flex}.acts-trigger-row .fb-trigger{flex:1;justify-content:flex-start}.acts-trigger-row .fb-trigger-chev{margin-left:auto}.acts-search{width:100%}.acts-search-clear{background:none;border:none;color:var(--color-text-muted);font-size:18px;line-height:1;padding:0 4px;cursor:pointer;-webkit-tap-highlight-color:transparent}.acts-search-clear:hover{color:var(--color-text)}.acts-list{flex:1;overflow-y:auto;padding:16px 32px 32px;display:flex;flex-direction:column;gap:var(--space-2);-webkit-overflow-scrolling:touch}.acts-empty{color:var(--color-text-muted);text-align:center;padding:48px 16px}.acts-sentinel{height:1px}.acts-loading-more{display:flex;justify-content:center;padding:12px 0 8px}@media(max-width:768px){.acts-header{padding:12px 16px 10px}.acts-list{padding:12px 16px 24px}}.acts-date-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center;width:100%}.acts-date-field{flex:1;min-width:130px;display:flex;align-items:center;gap:8px;background:var(--color-bg-surface);border:.5px solid var(--color-border);border-radius:8px;padding:6px 10px}.acts-date-field>span{font-size:11px;font-weight:600;letter-spacing:.3px;text-transform:uppercase;color:var(--color-text-muted)}.acts-date-field input{flex:1;min-width:0;background:none;border:none;outline:none;color:var(--color-text);font-size:13px;font-family:var(--font-family);color-scheme:light dark}.acts-date-clear{background:none;border:none;color:var(--color-text-muted);font-size:12px;font-family:var(--font-family);cursor:pointer;padding:4px 8px;border-radius:6px;-webkit-tap-highlight-color:transparent}.acts-date-clear:hover{color:var(--color-text);background:var(--color-bg-surface)}.acts-other-wrap{position:relative;display:inline-block}.acts-other-menu{position:absolute;top:calc(100% + 4px);left:0;z-index:10;min-width:160px;max-height:280px;overflow-y:auto;padding:4px;background:var(--color-modal-bg-strong);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:.5px solid var(--color-border-strong);border-radius:8px;box-shadow:var(--shadow-dropdown)}.acts-other-item{display:block;width:100%;text-align:left;background:none;border:none;color:var(--color-text);font-family:var(--font-family);font-size:13px;padding:7px 10px;border-radius:6px;cursor:pointer;transition:background .12s}.acts-other-item:hover{background:var(--color-bg-surface)}.acts-other-item.active{background:var(--color-accent-soft);color:var(--color-text)}.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.maplibregl-canvas{left:0;position:absolute;top:0}.maplibregl-map:fullscreen{height:100%;width:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.maplibregl-ctrl-top-left{left:0;top:0}.maplibregl-ctrl-top-right{right:0;top:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px #0000001a}@media(forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;padding:0;width:29px}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media(forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}.maplibregl-ctrl button:not(:disabled):hover{background-color:#0000000d}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}@media(forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}@media(forced-colors:active)and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}@media(forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}@media(forced-colors:active)and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}@media(forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}@media(forced-colors:active)and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media(forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}}@media(forced-colors:active)and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media(forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}@media(forced-colors:active)and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:#ffffff80;margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;color:#000;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{background-color:#ffffff80;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:#0000000d}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (forced-colors:active)and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.maplibregl-ctrl-attrib a{color:#000000bf;text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:#ffffffbf;border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px}.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.maplibregl-popup-close-button:hover{background-color:#0000000d}.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px #0000001a;padding:15px 10px;pointer-events:auto;position:relative}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{left:0;position:absolute;top:0;transition:opacity .2s;will-change:transform}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.maplibregl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px #00000059;box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:#0006;color:#fff;display:flex;font-size:1.4em;top:0;right:0;bottom:0;left:0;justify-content:center;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media(hover:none),(max-width:480px){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{height:100%!important;left:0!important;position:fixed!important;top:0!important;width:100%!important;z-index:99999}.activity-map-wrap{position:relative;border-radius:var(--radius-lg);overflow:hidden;background:var(--color-bg-overlay)}.activity-map-container{width:100%}.map-layer-picker{position:absolute;top:var(--space-3);right:var(--space-3);z-index:1000}.map-layer-btn{background:var(--color-glass-tint);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-full);padding:4px var(--space-3);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background var(--transition-fast)}.map-layer-btn:hover{background:var(--color-glass-tint-strong)}.map-layer-menu{position:absolute;top:calc(100% + 4px);right:0;display:flex;flex-direction:column;background:var(--color-glass-tint-blur);border:1px solid var(--color-border);border-radius:var(--radius-md);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);overflow:hidden;min-width:110px}.map-layer-item{background:transparent;border:0;text-align:left;padding:6px var(--space-3);color:var(--color-text);font-size:var(--font-size-xs);cursor:pointer;transition:background var(--transition-fast)}.map-layer-item:hover{background:var(--color-bg-overlay)}.map-layer-item.is-active{background:var(--color-surface-highlight);font-weight:var(--font-weight-medium)}.map-fs-btn{position:absolute;bottom:var(--space-3);right:var(--space-3);z-index:1000;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;background:var(--color-glass-tint);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-full);font-size:15px;line-height:1;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background var(--transition-fast)}.map-fs-btn:hover{background:var(--color-glass-tint-strong)}.map-locate-btn{position:absolute;bottom:calc(var(--space-3) + 40px);right:var(--space-3);z-index:1000;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;background:var(--color-glass-tint);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-full);cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background var(--transition-fast)}.map-locate-btn:hover{background:var(--color-glass-tint-strong)}.map-locate-btn.is-busy{color:var(--color-accent)}.map-locate-btn svg{width:18px;height:18px}.am-location-marker{pointer-events:none;width:30px;height:30px}.am-location-core,.am-location-pulse{position:absolute;left:50%;top:50%;width:16px;height:16px;margin:-8px 0 0 -8px;border-radius:50%}.am-location-core{background:#2a7fff;border:3px solid #fff;box-shadow:0 0 0 1px #00000047,0 2px 6px #00000073}.am-location-pulse{background:#2a7fff59;animation:am-location-pulse 2.4s ease-out infinite}@keyframes am-location-pulse{0%{transform:scale(1);opacity:.7}70%,to{transform:scale(2.6);opacity:0}}@media(prefers-reduced-motion:reduce){.am-location-pulse{animation:none;opacity:0}}.activity-map-wrap.is-fullscreen{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100vh;border-radius:0;z-index:9999}.activity-map-wrap:fullscreen{width:100vw;height:100vh;border-radius:0}.activity-map-wrap .maplibregl-canvas-container{background:var(--color-bg)}.ichart-wrap{position:relative;width:100%;background:var(--color-bg-overlay);border-radius:var(--radius-md);overflow:hidden}.ichart-scroll{position:relative;width:100%;overflow-x:auto;overflow-y:hidden;cursor:crosshair;touch-action:pan-x}.ichart-scroll::-webkit-scrollbar{height:6px}.ichart-scroll::-webkit-scrollbar-thumb{background:var(--color-border-strong);border-radius:3px}.ichart-scroll::-webkit-scrollbar-track{background:transparent}.ichart-cursor{position:absolute;top:0;width:1px;background:var(--color-text);opacity:.6;pointer-events:none}.ichart-selection{position:absolute;top:0;background:#5bae7c2e;border-left:1px solid rgba(91,174,124,.7);border-right:1px solid rgba(91,174,124,.7);pointer-events:none}.ichart-tooltip{position:absolute;top:6px;transform:translate(-50%);background:var(--color-glass-tint-blur);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:4px 8px;font-size:11px;pointer-events:none;white-space:nowrap;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:5}.ichart-tooltip-val{font-weight:var(--font-weight-bold);color:var(--color-text)}.ichart-tooltip-x{color:var(--color-text-muted);font-size:10px;margin-top:1px}.ichart-ylabels{position:absolute;top:0;right:4px;bottom:18px;display:flex;flex-direction:column;justify-content:space-between;pointer-events:none;font-size:10px;font-weight:var(--font-weight-medium);color:var(--color-text-2);text-shadow:0 0 3px var(--color-bg);padding:6px 0;z-index:4}.ichart-reset{position:absolute;top:4px;left:4px;z-index:6;background:var(--color-glass-tint);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-full);width:22px;height:22px;font-size:13px;line-height:1;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center}.ichart-reset:hover{background:var(--color-glass-tint-strong)}.ichart-empty{width:100%;background:var(--color-bg-overlay);border-radius:var(--radius-md)}.lapsbar-wrap{position:relative;width:100%;padding-top:80px}.lapsbar-scroll{overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;overscroll-behavior-x:contain;touch-action:pan-x}.lapsbar-row{display:flex;align-items:flex-end;width:100%;gap:2px;padding:20px 2px 0;box-sizing:border-box}.lapsbar-bar{position:relative;min-width:8px;border-radius:3px 3px 0 0;cursor:pointer;transition:filter var(--transition-fast)}.lapsbar-bar:hover,.lapsbar-bar.is-hover{filter:brightness(1.15)}.lapsbar-num{position:absolute;top:-16px;left:0;width:100%;text-align:center;font-size:9px;color:var(--color-text-muted);pointer-events:none}.lapsbar-tooltip{position:absolute;top:0;transform:translate(-50%);background:var(--color-glass-tint-strong);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:8px 10px;font-size:11px;pointer-events:none;white-space:nowrap;z-index:10;min-width:160px;box-shadow:var(--shadow-tooltip)}.lapsbar-tt-title{font-weight:var(--font-weight-bold);color:var(--color-text);margin-bottom:4px;border-bottom:1px solid var(--color-border);padding-bottom:4px}.lapsbar-tt-rows{display:flex;flex-direction:column;gap:2px}.lapsbar-tt-row{display:flex;justify-content:space-between;gap:var(--space-3)}.lapsbar-tt-k{color:var(--color-text-muted)}.lapsbar-tt-v{color:var(--color-text);font-weight:var(--font-weight-medium)}.act-detail{padding-bottom:var(--space-10)}.chart-section{margin-bottom:var(--space-4);padding:var(--space-4)}.chart-section-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-muted);margin-bottom:var(--space-3);text-transform:uppercase;letter-spacing:.05em;font-size:11px}.chart-section-hint{font-weight:var(--font-weight-regular);opacity:.7;letter-spacing:.03em;text-transform:none}.chart-scroll,.laps-table{overflow-x:auto}.laps-table table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.laps-table th,.laps-table td{padding:var(--space-2) var(--space-3);text-align:left;border-bottom:1px solid var(--color-border)}.laps-table th{color:var(--color-text-muted);font-weight:var(--font-weight-medium)}.laps-th-unit{display:block;font-size:.78em;font-weight:var(--font-weight-normal);opacity:.7;line-height:1.1}.segments-list{display:flex;flex-direction:column;gap:1px}.segment-row{display:flex;justify-content:space-between;align-items:center;padding:var(--space-2) 0;border-bottom:1px solid var(--color-border);font-size:var(--font-size-sm)}.segment-name{flex:1;margin-right:var(--space-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.segment-right{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.segment-row{cursor:pointer;transition:background var(--transition-fast)}.segment-row:hover{background:var(--color-bg-overlay);margin:0 calc(-1 * var(--space-4));padding-left:var(--space-4);padding-right:var(--space-4)}.segment-row--open{color:var(--color-text)}.segment-chevron{font-size:11px;color:var(--color-text-muted);margin-left:4px}.leaderboard{padding:var(--space-2) 0 var(--space-3);border-bottom:1px solid var(--color-border)}.lb-row{display:flex;align-items:center;gap:var(--space-3);padding:4px 0;font-size:var(--font-size-sm)}.lb-rank{width:28px;flex-shrink:0}.lb-name{flex:1}.lb-time{flex-shrink:0}.joint-list{display:flex;flex-direction:column;gap:var(--space-3)}.joint-row{display:flex;align-items:center;gap:var(--space-3)}.joint-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;flex-shrink:0}.joint-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.joint-meta{margin-top:2px}.joint-section{margin-bottom:var(--space-5);padding:var(--space-3) var(--space-4)}.joint-section>summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-1) 0}.joint-section>summary::-webkit-details-marker{display:none}.joint-section>summary:before{content:"▸";display:inline-block;color:var(--color-text-muted);font-size:.75em;transition:transform .12s ease;flex-shrink:0}.joint-section[open]>summary:before{transform:rotate(90deg)}.joint-summary-label{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-left:auto}.joint-section .joint-list{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-border)}.joint-avatar-strip{display:flex;padding-left:4px}.joint-avatar--strip{width:28px;height:28px;margin-left:-4px;border:2px solid var(--color-bg);box-shadow:0 0 0 .5px var(--color-border)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:var(--space-2);padding:var(--space-4);margin-bottom:var(--space-4);background:transparent;border:none}.stat-item{padding:var(--space-3);background:var(--color-bg-overlay);border-radius:var(--radius-md)}.stat-label{margin-bottom:2px}.stat-value{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold)}.laps-empty{padding:var(--space-3) 0;color:var(--color-text-muted);font-size:var(--font-size-sm);font-style:italic}.ad-topbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-bottom:var(--space-2)}.ad-topbar .back-btn{margin-bottom:0}.ad-strava-btn{display:inline-flex;align-items:center;background:var(--color-strava-2);color:#fff;border:none;border-radius:4px;padding:6px 12px;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;text-decoration:none;font-family:inherit;white-space:nowrap}.ad-strava-btn:hover{background:var(--color-strava-hover)}.laps-details{margin-top:var(--space-3)}.laps-details>summary,.segments-summary{cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none;display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) 0;color:var(--color-text-muted);font-size:var(--font-size-sm)}.laps-details>summary::-webkit-details-marker,.segments-summary::-webkit-details-marker{display:none}.laps-details>summary:before,.segments-summary:before{content:"▸";display:inline-block;font-size:11px;transition:transform var(--transition-fast);width:12px}.laps-details[open]>summary:before,details[open]>.segments-summary:before{transform:rotate(90deg)}.ad-comment-empty{padding:var(--space-2) 0 var(--space-3)}.ad-comment-list{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-3)}.ad-msg-row{display:flex;justify-content:flex-start}.ad-msg-row--mine{justify-content:flex-end}.ad-bubble{max-width:78%;padding:var(--space-2) var(--space-3);border-radius:14px 14px 14px 4px;background:var(--color-glass-tint);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:.5px solid var(--color-border-strong);box-shadow:var(--shadow-glass),inset 0 1px 0 var(--color-surface-shimmer);color:var(--color-text)}.ad-bubble--mine{border-radius:14px 14px 4px;background:linear-gradient(var(--color-accent-soft),var(--color-accent-soft)),var(--color-glass-tint)}.ad-bubble-author{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-accent);margin-bottom:2px}.ad-bubble-body{white-space:pre-wrap;word-break:break-word}.ad-bubble-meta{display:flex;align-items:center;gap:var(--space-2);margin-top:3px;font-size:var(--font-size-xs)}.ad-bubble-time{color:var(--color-text-muted)}.ad-bubble-act{background:none;border:none;padding:0;cursor:pointer;font-size:var(--font-size-xs);color:var(--color-text-muted)}.ad-bubble-act:hover{color:var(--color-text)}.ad-comment-edit{width:80%}.ad-comment-actions{display:flex;gap:var(--space-3);margin-top:var(--space-2)}.ad-comment-compose{display:flex;align-items:flex-end;gap:var(--space-2);margin-top:var(--space-3)}.ad-comment-input{width:100%;resize:none;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-surface);color:var(--color-text);font:inherit;margin-bottom:var(--space-2)}.ad-comment-compose .ad-comment-input{flex:1;width:auto;margin-bottom:0}.ad-comment-send{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;border-radius:50%;background:var(--color-accent);color:#fff;cursor:pointer}.ad-comment-send:hover{background:var(--color-accent-hover)}.ad-comment-send:disabled{opacity:.45;cursor:default}.btn-sm{padding:4px 10px;font-size:var(--font-size-sm)}.cal-page{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.cal-page-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:24px 32px 12px;flex-wrap:nowrap}.cal-athlete-select{flex:1 1 auto;min-width:0;position:relative}.cal-athlete-trigger{display:flex;align-items:center;gap:6px;width:100%;max-width:320px;background:var(--color-bg-surface);border:.5px solid var(--color-border);border-radius:10px;padding:9px 14px;color:var(--color-text);font-family:var(--font-family);font-size:14px;font-weight:600;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.cal-athlete-trigger:hover:not(:disabled){background:var(--color-bg-deep)}.cal-athlete-trigger:disabled{cursor:default;opacity:.85}.cal-athlete-select.coach-mode .cal-athlete-trigger{border-color:var(--color-accent);color:var(--color-text)}.cal-athlete-label{flex:1;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-athlete-chev{font-size:12px;color:var(--color-text-muted)}.cal-athlete-menu{position:absolute;top:calc(100% + 6px);left:0;z-index:20;min-width:240px;max-width:320px;background:var(--color-bg-raised);border:.5px solid var(--color-border);border-radius:12px;padding:6px;box-shadow:0 8px 24px #00000040;display:flex;flex-direction:column;gap:2px}.cal-athlete-item{display:flex;align-items:center;gap:10px;background:transparent;border:none;border-radius:8px;padding:8px 10px;color:var(--color-text);font-family:var(--font-family);font-size:14px;font-weight:500;text-align:left;cursor:pointer;transition:background var(--transition-fast)}.cal-athlete-item:hover{background:var(--color-bg-surface)}.cal-athlete-item.active{background:var(--color-bg-surface);color:var(--color-accent);font-weight:600}.cal-athlete-avatar{width:24px;height:24px;border-radius:50%;object-fit:cover;flex-shrink:0}.cal-page-header .cal-view-toggle{flex-shrink:0;margin-left:auto}@media(max-width:720px){.cal-page-header{padding:16px 16px 8px}.cal-athlete-trigger{max-width:none}}.cal-view{flex:1;display:flex;min-height:0;overflow:hidden}.cal-act-list{margin-top:24px;display:flex;flex-direction:column;gap:var(--space-4)}.cal-day-group{display:flex;flex-direction:column;gap:var(--space-2)}.cal-day-heading{font-size:13px;font-weight:var(--font-weight-bold);color:var(--color-text-2);padding-bottom:2px}.cal-act-list .act-meta{display:none}.cal-left{flex:1;min-width:0;overflow-y:auto;padding:28px 32px}.cal-month-view,.wv-wrap{touch-action:pan-y}.wv-wrap.dragging{touch-action:none}.cal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.cal-month{font-size:22px;font-weight:600}.cal-nav{display:flex;gap:8px}.cal-btn{width:34px;height:34px;border-radius:50%;background:var(--color-bg-surface);border:none;color:var(--color-text);font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-family:var(--font-family)}.cal-btn:hover{background:var(--color-bg-overlay)}.cal-wk{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;margin-bottom:8px}.cal-wk span{font-size:12px;color:var(--color-text-muted);font-weight:600;letter-spacing:.4px}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.cal-day{min-height:88px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;border-radius:10px;font-size:14px;font-weight:500;cursor:pointer;position:relative;gap:4px;padding:8px 10px;border:.5px solid var(--color-border);background:transparent}.cal-day:hover{background:var(--color-bg-surface)}.cal-day.today{background:var(--color-accent);color:#fff;border-color:transparent}.cal-day.selected{outline:2px solid var(--color-text-2);outline-offset:-2px}.cal-day.dim{color:var(--color-text-muted);opacity:.55}.cal-dots{display:flex;gap:4px;position:absolute;bottom:8px;left:10px}.cal-dots .cd{width:6px;height:6px;border-radius:50%}.day-title{font-size:18px;font-weight:600;margin-bottom:16px}.day-panel-add{margin-bottom:16px}.sched-item{display:flex;align-items:center;gap:12px;padding:12px;background:var(--color-bg-surface);border:.5px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:8px}.sched-item .si-dot{width:4px;height:36px;border-radius:2px;flex-shrink:0}.sched-item .si-info{flex:1}.sched-item .si-name{font-size:14px;font-weight:600}.sched-item .si-meta{font-size:12px;color:var(--color-text-2);margin-top:2px}.sched-item .si-del{background:none;border:none;color:var(--color-text-muted);font-size:18px;cursor:pointer;padding:4px 8px;font-family:var(--font-family)}.sched-item .si-del:hover{color:var(--color-danger-text)}.race-item .si-name{font-size:14px;font-weight:600}.act-row{display:flex;align-items:center;gap:14px;padding:12px 0;border-bottom:.5px solid var(--color-surface-hairline);cursor:pointer}.act-row:last-child{border-bottom:none}.act-row:hover{opacity:.85}.color-dot{width:4px;align-self:stretch;border-radius:2px;flex-shrink:0}.act-icon{width:42px;height:42px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden;font-size:20px}.act-info{flex:1;min-width:0}.act-name{font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.act-meta{font-size:12px;color:var(--color-text-2);margin-top:2px}.day-empty{font-size:14px;color:var(--color-text-muted);padding:40px 0;text-align:center}.qs-modal{max-width:380px}.qs-tabs{display:flex;gap:4px;padding:12px 16px 0}.qs-tab{flex:1;background:var(--color-bg-surface);border:.5px solid var(--color-border);border-radius:10px;padding:9px 0;color:var(--color-text-muted);font-family:var(--font-family);font-size:13px;font-weight:600;cursor:pointer;transition:all .12s}.qs-tab.active{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.qs-body{padding:14px 16px 4px;display:flex;flex-direction:column;gap:12px;flex:1 1 auto;min-height:0;overflow-y:auto}.qs-row{display:flex;gap:6px}.qs-sports{gap:6px;flex-wrap:wrap}.qs-sport{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:5px;background:var(--color-bg-surface);border:.5px solid var(--color-border);border-radius:10px;padding:7px 12px;color:var(--color-text-muted);font-family:var(--font-family);font-size:13px;font-weight:600;cursor:pointer;transition:all .12s}.qs-sport.active{background:var(--color-bg-deep)}.qs-other-wrap{position:relative;flex:0 0 auto}.qs-other-btn{gap:4px}.qs-other-chev{font-size:10px;opacity:.7}.qs-other-menu{position:absolute;top:calc(100% + 4px);right:0;min-width:100%;z-index:10;background:var(--color-modal-bg-strong);border:.5px solid var(--color-border);border-radius:10px;padding:4px;display:flex;flex-direction:column;gap:2px;box-shadow:var(--shadow-dropdown);white-space:nowrap}.qs-other-item{background:none;border:none;color:var(--color-text);padding:8px 12px;border-radius:8px;font-family:var(--font-family);font-size:13px;text-align:left;cursor:pointer;transition:background .12s}.qs-other-item:hover{background:var(--color-bg-surface)}.qs-other-item.active{background:var(--color-bg-surface);color:var(--color-accent);font-weight:600}.qs-field{display:flex;flex-direction:column;gap:4px}.qs-field label{font-size:12px;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em}.qs-hint{text-transform:none;letter-spacing:0;font-weight:400;opacity:.7}.qs-field-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.qs-ai-toggle{gap:6px;cursor:pointer}.qs-ai-toggle .toggle-label{font-size:11px}.qs-ai-toggle .toggle-pill{width:30px;height:17px}.qs-ai-toggle .toggle-pill:after{width:13px;height:13px}.qs-ai-toggle input:checked+.toggle-pill:after{left:14px}.qs-input{background:var(--color-bg-surface);border:.5px solid var(--color-border);border-radius:10px;padding:10px 14px;color:var(--color-text);font-family:var(--font-family);font-size:14px;outline:none}.qs-input::placeholder{color:var(--color-text-muted)}.qs-textarea{resize:vertical;min-height:56px;line-height:1.35;font-family:var(--font-family)}.qs-tri-variants{display:flex;flex-wrap:wrap;gap:6px}.qs-tri-chip{flex:0 0 auto;border:.5px solid var(--color-border);background:transparent;color:var(--color-text-muted);padding:6px 10px;border-radius:999px;font-family:var(--font-family);font-size:12px;font-weight:500;cursor:pointer;transition:color .12s,background .12s}.qs-tri-chip:hover{color:var(--color-text)}.qs-tri-chip.active{background:var(--color-bg-surface);color:var(--color-text);font-weight:600}.qs-cat-chips{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.qs-cat-chip{border:.5px solid var(--color-border);background:transparent;color:var(--color-text-muted);padding:7px 10px;border-radius:999px;font-family:var(--font-family);font-size:12px;font-weight:500;cursor:pointer;transition:color .12s,background .12s,border-color .12s}.qs-cat-chip:hover{color:var(--color-text)}.qs-cat-chip.active{background:var(--color-bg-surface);color:var(--color-text);font-weight:600;border-color:var(--color-accent)}.qs-tri-distances{display:flex;flex-direction:column;gap:8px}.qs-tri-row{display:grid;grid-template-columns:56px 96px auto;align-items:center;gap:10px}.qs-tri-row .qs-input{padding:8px 10px;font-size:13px}.qs-tri-leg{font-size:13px;font-weight:500;color:var(--color-text)}.qs-tri-unit{font-size:12px;color:var(--color-text-muted);text-align:left}.qs-actions{display:flex;gap:8px;padding:12px 16px 16px;border-top:.5px solid var(--color-border);flex-shrink:0}.qs-btn{flex:1;border-radius:10px;padding:11px 0;font-family:var(--font-family);font-size:14px;font-weight:600;cursor:pointer;border:.5px solid transparent;transition:opacity .12s,background .12s}.qs-btn:disabled{opacity:.45;cursor:not-allowed}.qs-btn-primary{background:var(--color-accent);color:#fff}.qs-btn-ghost{background:transparent;border-color:var(--color-border);color:var(--color-text-muted)}.qs-btn-ghost:hover{color:var(--color-text);background:var(--color-bg-surface)}.cal-view-toggle{display:flex;background:var(--color-bg-surface);border-radius:10px;padding:3px;width:fit-content;gap:2px}.cal-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:transparent;color:var(--color-text-muted);border-radius:8px;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.cal-icon-btn:hover{color:var(--color-text)}.cal-icon-btn.active{background:var(--color-bg-overlay);color:var(--color-text)}.wv-header{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-bottom:8px}.wv-header-col{text-align:center;cursor:pointer;padding:8px 4px;border-radius:10px}.wv-header-col:hover{background:var(--color-bg-surface)}.wv-day-label{font-size:12px;color:var(--color-text-muted);font-weight:600;letter-spacing:.4px}.wv-day-label.today{color:var(--color-text)}.wv-day-num{font-size:17px;font-weight:600;color:var(--color-text-2);margin-top:4px;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center}.wv-day-num.today{background:var(--color-accent);color:#fff;border-radius:50%}.wv-cols{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}@keyframes wv-slide-next{0%{transform:translate(40px);opacity:.35}to{transform:translate(0);opacity:1}}@keyframes wv-slide-prev{0%{transform:translate(-40px);opacity:.35}to{transform:translate(0);opacity:1}}.wv-cols.wv-slide-next{animation:wv-slide-next .3s cubic-bezier(.22,.61,.36,1)}.wv-cols.wv-slide-prev{animation:wv-slide-prev .3s cubic-bezier(.22,.61,.36,1)}@media(prefers-reduced-motion:reduce){.wv-cols.wv-slide-next,.wv-cols.wv-slide-prev{animation:none}}.wv-col{display:flex;flex-direction:column;gap:6px;min-height:100px}.wv-col .wv-header-col{margin-bottom:0}.wv-tile-slot{display:flex;flex-direction:column;gap:0}.wv-dropzone{height:4px;border-radius:4px;transition:background .1s,height .1s,border-color .1s}.wv-dropzone.empty{height:2px}.wv-cols.dragging .wv-dropzone{height:18px;border:1.5px dashed rgba(74,158,199,.55);background:#4a9ec70f}.wv-cols.dragging .wv-dropzone.empty{height:22px}.wv-cols.dragging .wv-dropzone.over{height:60px;background:#4a9ec738;border:2px dashed var(--color-sport-swim);border-radius:10px}.wv-cell.dragged{opacity:.22}.wv-ghost{position:fixed;transform:translate(-50%,-110%);pointer-events:none;z-index:1000;width:76px}.wv-cell--ghost{box-shadow:var(--shadow-modal);background:var(--color-bg-raised);border:1px solid var(--color-surface-shimmer);opacity:.96}.wv-rows{display:flex;flex-direction:column;gap:6px}.wv-row{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.wv-cell{padding:10px 8px;border-radius:10px;text-align:center;cursor:pointer;display:grid;grid-template-rows:30px auto auto;gap:7px;align-items:center;justify-items:center;position:relative;min-height:104px;-webkit-tap-highlight-color:transparent}.wv-icon{display:flex;align-items:center;justify-content:center}.wv-icon svg{width:26px;height:26px}.wv-line{font-size:14px;line-height:1.2;color:inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%;text-align:center;font-weight:500}.wv-line+.wv-line{font-size:13px;opacity:.85;font-weight:400}.wv-icon+.wv-line{margin-top:4px}.wv-cell:has(.wv-line--solo){grid-template-rows:30px 1fr 1fr}.wv-line--solo{grid-row:2 / 4;align-self:center;margin-top:0}.wv-cell.status-race{box-shadow:inset 0 0 0 2px var(--color-race-gold)}.wv-race-dot{width:5px;height:5px;border-radius:50%;background:var(--color-danger-text);margin:2px auto 0}.wv-add{display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:8px;color:var(--color-text-muted);font-size:18px;height:32px;background:none;border:1px dashed var(--color-border);font-family:var(--font-family);width:100%;-webkit-tap-highlight-color:transparent;transition:background var(--transition-fast),color var(--transition-fast)}.wv-add:hover{color:var(--color-text);background:var(--color-bg-surface);border-style:solid}.wv-cell .wv-del{display:none;position:absolute;top:-6px;right:-6px;width:20px;height:20px;border-radius:50%;background:var(--color-danger);color:#fff;font-size:13px;line-height:20px;text-align:center;cursor:pointer;z-index:10;border:none;font-family:var(--font-family);padding:0}.wv-cell.editing .wv-del{display:block}.wv-cell .wv-done{display:none;position:absolute;top:-6px;left:-6px;width:20px;height:20px;border-radius:50%;background:var(--color-success);color:#fff;font-size:12px;line-height:20px;text-align:center;cursor:pointer;z-index:10;border:none;font-family:var(--font-family);padding:0}.wv-cell.editing .wv-done{display:block}.wv-cell .wv-dup{display:none;position:absolute;bottom:-6px;right:-6px;width:20px;height:20px;border-radius:50%;background:var(--color-accent);color:#fff;cursor:pointer;z-index:10;border:none;padding:0;align-items:center;justify-content:center}.wv-cell.editing .wv-dup{display:flex}.wv-week-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.wv-week-label{font-size:20px;font-weight:600}.wv-list{margin-top:16px;border-top:.5px solid var(--color-border);padding-top:12px;display:flex;flex-direction:column;gap:4px}.wv-list-day{margin-bottom:4px}.wv-list-day-label{font-size:11px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.4px;padding:4px 0 2px}.wv-list-item{display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:8px;margin-bottom:3px}.wv-list-bar{width:3px;align-self:stretch;border-radius:2px;flex-shrink:0;background:currentColor;opacity:.5}.wv-list-icon{width:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.wv-list-info{flex:1;min-width:0}.wv-list-name{font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wv-list-meta{font-size:11px;opacity:.7;margin-top:1px}.wv-list-del{background:none;border:none;color:currentColor;opacity:.4;font-size:16px;cursor:pointer;padding:0 2px;line-height:1;font-family:var(--font-family);flex-shrink:0}.wv-list-del:hover{opacity:.9}.wv-list-item.status-gray{background:var(--color-todo-bg);color:var(--color-todo)}.wv-list-item.status-green{background:#5bae7c1f;color:var(--color-success-2)}.wv-list-item.status-blue{background:#4a9ec71f;color:var(--color-sport-swim)}.wv-list-item.status-yellow{background:var(--color-race-gold-bg);color:var(--color-race-gold)}.wv-list-item.status-race{background:var(--color-danger-bg);color:var(--color-danger-text)}@media(min-width:769px){.wv-list{display:none}}.wv-cell.has-legs{grid-template-rows:1fr 1fr;gap:0;min-height:176px;min-width:0}.wv-cell.has-legs .wv-top{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;width:100%;min-width:0;overflow:hidden}.wv-legs{display:flex;flex-direction:column;width:100%;height:100%;justify-content:center;align-items:stretch;gap:2px;border-top:1px solid var(--color-race-gold-line);min-width:0;overflow:hidden}.wv-leg{font-size:13px;font-weight:600;line-height:1.3;white-space:nowrap;text-align:center;overflow:hidden;text-overflow:ellipsis}.wv-legs--single .wv-leg{font-size:11px}.act-card.race-wrap{flex-direction:column;align-items:stretch;gap:0;padding:0}.race-wrap .race-wrap-header{display:flex;align-items:center;gap:8px;padding:8px 8px 2px;cursor:pointer;position:relative}.race-wrap-tile{width:60px;height:60px;background:var(--color-race-gold-bg);border-radius:var(--radius-md)}.race-wrap-cards{border-top:1px solid var(--color-race-gold-line);display:flex;flex-direction:column;gap:3px;padding:6px 1px 1px 6px}.race-wrap-cards .act-card{background:var(--color-bg-overlay)}.race-wrap-cards .act-stats{gap:6px}.act-card--planned-preview{flex-direction:column;align-items:stretch;gap:var(--space-3);text-decoration:none;color:inherit}.act-card--planned-preview .pwc-row{display:flex;align-items:center;gap:var(--space-3)}.pwc-desc{font-size:12px;line-height:1.3;color:var(--color-text-muted);margin-top:2px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.act-card--planned-preview .pwc-preview{width:100%;line-height:0}.pwc-generating{width:100%;display:flex;flex-direction:column;gap:6px;margin-top:4px}.pwc-shimmer{height:40px;border-radius:6px;background:linear-gradient(100deg,var(--color-bg-surface) 30%,var(--color-bg-deep) 50%,var(--color-bg-surface) 70%);background-size:200% 100%;animation:pwc-shimmer-slide 1.2s ease-in-out infinite}@keyframes pwc-shimmer-slide{0%{background-position:150% 0}to{background-position:-50% 0}}.pwc-generating-label{font-size:11px;line-height:1;color:var(--color-text-muted)}.pwc-dots i{font-style:normal;animation:pwc-dot-blink 1.4s infinite both}.pwc-dots i:nth-child(2){animation-delay:.2s}.pwc-dots i:nth-child(3){animation-delay:.4s}@keyframes pwc-dot-blink{0%,80%,to{opacity:.2}40%{opacity:1}}@media(prefers-reduced-motion:reduce){.pwc-shimmer{animation:none}.pwc-dots i{animation:none;opacity:.6}}.act-card.act-card--planned-preview.is-editing.has-dup{padding-right:96px}.act-card-dup{position:absolute;top:50%;right:52px;transform:translateY(-50%);width:32px;height:32px;border-radius:50%;background:var(--color-bg-raised);color:var(--color-text);border:1px solid var(--color-border-strong);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;z-index:5;box-shadow:var(--shadow-card)}.act-card-dup:hover{background:var(--color-bg-surface)}@media(max-width:768px){.cal-page{overflow-y:auto}.cal-view{flex-direction:column;flex:none;overflow:visible}.cal-left{width:100%;flex:none;overflow:visible;padding:16px}.cal-day{aspect-ratio:1;min-height:0;padding:0;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:13px;border:none;background:none}.cal-day.today{border-color:transparent}.cal-dots{position:absolute;bottom:3px;left:50%;transform:translate(-50%);gap:2px}.cal-dots .cd{width:4px;height:4px}.cal-month{font-size:18px}.cal-btn{width:30px;height:30px;font-size:16px}.cal-icon-btn{width:32px;height:32px}.wv-week-label{font-size:15px}.wv-week-nav{margin-bottom:12px}.wv-header-col{padding:4px 2px}.wv-day-label{font-size:11px}.wv-day-num{font-size:13px;margin-top:2px;width:24px;height:24px}.wv-rows{gap:3px}.wv-row{gap:4px}.wv-cell{padding:4px 2px;border-radius:6px;grid-template-rows:20px 13px 13px;gap:0;min-height:0}.wv-cell.has-legs{grid-template-rows:1fr 1fr;min-height:110px}.wv-cell.has-legs .wv-top{gap:1px}.wv-icon svg{width:18px;height:18px}.wv-line{font-size:10px}.wv-line+.wv-line{font-size:10px}.wv-icon+.wv-line{margin-top:0}.wv-cell:has(.wv-line--solo){grid-template-rows:20px 13px 13px}.wv-legs{gap:1px}.wv-leg{font-size:10px;line-height:1.2}.wv-legs--single .wv-leg{font-size:9px}.wv-add{height:24px;font-size:16px;border:none;border-radius:6px}.day-title{font-size:16px;margin-bottom:12px}}.cw-summary{display:flex;flex-direction:column;gap:8px;padding:10px 12px;border:.5px solid var(--color-border);border-radius:12px;background:var(--color-bg-surface);min-width:0}.cw-summary-label{font-size:13px;font-weight:700;color:var(--color-text)}.cw-summary-head{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}.cw-summary-title{display:flex;align-items:baseline;gap:8px;min-width:0;overflow:hidden}.cw-week-tag{font-size:13px;font-weight:700;white-space:nowrap}.cw-summary-title:has(.cw-week-tag) .cw-summary-label{font-size:12px;font-weight:500;color:var(--color-text-muted);white-space:nowrap}.cw-tag-select{position:relative;flex-shrink:0}.cw-tag-circle{width:16px;height:16px;padding:0;border-radius:50%;border:1.5px solid var(--color-border);background:transparent;cursor:pointer;display:block;transition:border-color var(--transition-fast),background var(--transition-fast)}.cw-tag-circle:hover{border-color:var(--color-text-2)}.cw-tag-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:30;min-width:140px;background:var(--color-bg-raised);border:.5px solid var(--color-border);border-radius:10px;padding:5px;box-shadow:0 8px 24px #00000040;display:flex;flex-direction:column;gap:1px}.cw-tag-item{display:flex;align-items:center;gap:9px;background:transparent;border:none;border-radius:7px;padding:7px 9px;color:var(--color-text);font-family:var(--font-family);font-size:13px;font-weight:500;text-align:left;cursor:pointer;transition:background var(--transition-fast)}.cw-tag-item:hover{background:var(--color-bg-surface)}.cw-tag-item.active{background:var(--color-bg-surface);font-weight:600}.cw-tag-dot{width:11px;height:11px;border-radius:50%;flex-shrink:0}.cw-tag-dot-none{background:transparent;border:1.5px solid var(--color-border)}.cw-tag-clear{color:var(--color-text-muted)}.cw-bars{display:flex;flex-direction:column;gap:6px}.cw-bar-row{display:flex;flex-direction:column}.cw-bar-row--total{margin-top:4px;padding-top:8px;border-top:.5px solid var(--color-border)}.cw-bar{position:relative;height:22px;border-radius:5px;background:var(--color-bg-deep);overflow:hidden}.cw-bar-fill{position:absolute;top:0;left:0;bottom:0;transition:width var(--transition-fast)}.cw-bar-content{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 8px;pointer-events:none}.cw-bar-label,.cw-bar-vals{font-size:12px;color:#fff;text-shadow:0 0 2px rgba(0,0,0,.6),0 1px 1px rgba(0,0,0,.5);white-space:nowrap}.cw-bar-label{font-weight:700}.cw-bar-vals{font-weight:600;font-variant-numeric:tabular-nums}.cw-comment{margin-top:4px;width:100%;min-height:52px;resize:vertical;background:var(--color-bg-deep);border:.5px solid var(--color-border);border-radius:8px;padding:7px 9px;color:var(--color-text);font-family:var(--font-family);font-size:12px;line-height:1.35;outline:none}.cw-comment::placeholder{color:var(--color-text-muted)}.cw-comment:focus{border-color:var(--color-accent)}.cal-week-summary{margin-top:16px}@media(min-width:769px){.cw-view{flex:1;min-width:0;overflow-y:auto;padding:16px 24px 48px}.cw-sentinel{height:1px;flex-shrink:0}.cw-weeks{display:flex;flex-direction:column;gap:14px}.cw-week-row{display:grid;grid-template-columns:1.5fr repeat(7,1fr);gap:8px;align-items:stretch}.cw-day{display:flex;flex-direction:column;gap:5px;padding:6px;border:.5px solid var(--color-border);border-radius:12px;min-width:0;min-height:120px}.cw-day-head{display:flex;align-items:baseline;justify-content:space-between;gap:6px;cursor:pointer;padding:2px 4px;border-radius:8px}.cw-day-head:hover{background:var(--color-bg-surface)}.cw-day-dow{font-size:11px;font-weight:600;letter-spacing:.4px;color:var(--color-text-muted);text-transform:uppercase}.cw-day-num{font-size:15px;font-weight:700;color:var(--color-text-2);width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.cw-day-head.today .cw-day-dow{color:var(--color-text)}.cw-day-num.today{background:var(--color-accent);color:#fff;border-radius:50%}.cw-day-cards{display:flex;flex-direction:column;gap:6px;min-width:0}.cw-day-cards .act-card{min-width:0;padding:8px;gap:8px}.cw-day-cards .act-card .act-name{font-size:12px}.cw-day-cards .act-card .act-meta{display:none}.cw-day-cards .act-card .act-stats{display:grid;grid-template-columns:1fr 1fr;column-gap:8px;row-gap:1px;font-size:11px;overflow:visible}.cw-day-cards .act-card .act-stats .sep{display:none}.cw-day-cards .act-card.race-wrap{padding:0}.cw-day-cards .pwc-desc{font-size:11px}.cw-add{margin-top:auto}.cw-card-wrap{position:relative;min-width:0}.cw-card-wrap.is-dragging{opacity:.4;pointer-events:none}.cw-drag-handle{position:absolute;top:4px;right:4px;z-index:3;display:flex;align-items:center;justify-content:center;width:20px;height:22px;padding:0;border:none;border-radius:6px;background:var(--color-bg-overlay);color:var(--color-text-muted);cursor:grab;opacity:.4;touch-action:none;transition:opacity var(--transition-fast),background var(--transition-fast),color var(--transition-fast)}.cw-card-wrap:hover .cw-drag-handle{opacity:.85}.cw-drag-handle:hover{background:var(--color-bg-raised);color:var(--color-text);opacity:1}.cw-drag-handle:active{cursor:grabbing}.cw-dropzone{height:0;margin:-3px 0;border-radius:6px;transition:height .1s,background .1s,border-color .1s}.cw-view.cw-dragging .cw-dropzone{height:16px;margin:0;border:1.5px dashed rgba(74,158,199,.55);background:#4a9ec70f}.cw-view.cw-dragging .cw-dropzone.over{height:44px;background:#4a9ec738;border:2px dashed var(--color-sport-swim)}.cw-day.cw-drop-active{outline:2px dashed var(--color-sport-swim);outline-offset:-2px;background:#4a9ec70f}.cw-drag-ghost{position:fixed;z-index:4000;pointer-events:none;transform:translate(12px,12px);display:flex;align-items:center;gap:6px;max-width:220px;padding:6px 10px;border-radius:8px;background:var(--color-bg-raised);border:1px solid var(--color-surface-shimmer);box-shadow:var(--shadow-modal);font-size:12px;font-weight:600;color:var(--color-text)}.cw-drag-ghost-icon{display:inline-flex;flex-shrink:0}.cw-drag-ghost-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cw-day-cards .act-card-dup{display:none}.cw-day-cards .act-card.act-card--planned-preview.is-editing.has-dup{padding-right:56px}.cw-card-menu{position:fixed;z-index:4100;transform:translate(-100%,8px);min-width:140px;padding:4px;border-radius:10px;background:var(--color-bg-raised);border:1px solid var(--color-border-strong);box-shadow:var(--shadow-dropdown)}.cw-card-menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border:none;border-radius:6px;background:transparent;color:var(--color-text);font-family:var(--font-family);font-size:13px;font-weight:500;text-align:left;cursor:pointer}.cw-card-menu-item:hover{background:var(--color-bg-surface)}.cw-card-menu-item--danger{color:var(--color-danger-text)}}@media(min-width:769px){.yp-view{flex:1;min-width:0;overflow-y:auto;padding:16px 24px 48px}.yp-sentinel{height:1px;flex-shrink:0}.yp-months{display:flex;flex-direction:column;gap:14px}.yp-month-row{display:grid;grid-template-columns:132px repeat(5,1fr);gap:8px;align-items:stretch;padding-top:14px;border-top:.5px solid var(--color-border)}.yp-month-row:first-child{border-top:none;padding-top:0}.yp-month-label{display:flex;flex-direction:column;justify-content:flex-start;padding-top:2px;position:sticky;top:0}.yp-month-name{font-size:17px;font-weight:700;color:var(--color-text);line-height:1.1}.yp-month-year{font-size:13px;font-weight:600;color:var(--color-text-muted)}.yp-current .yp-month-name{color:var(--color-accent)}.yp-week-cell{display:flex;flex-direction:column;gap:6px;min-height:120px;padding:9px 10px;background:var(--color-bg-surface);border:.5px solid var(--color-border);border-radius:10px}.yp-week-pad{background:transparent;border:none;min-height:0}.yp-week-head{display:flex;align-items:flex-start;justify-content:space-between;gap:6px}.yp-week-title{display:flex;flex-direction:column;gap:1px;min-width:0}.yp-week-range{font-size:11px;font-weight:600;color:var(--color-text-muted);white-space:nowrap}.yp-week-title:has(.cw-week-tag) .yp-week-range{font-weight:500;opacity:.75}.yp-races{display:flex;flex-direction:column;gap:4px}.yp-race-chip{display:flex;align-items:center;gap:5px;width:100%;padding:3px 7px;border-radius:6px;background:var(--color-race-gold-bg);border:.5px solid var(--color-race-gold);color:var(--color-race-gold);font-family:var(--font-family);font-size:11px;font-weight:700;text-align:left;cursor:pointer;transition:background var(--transition-fast)}.yp-race-chip:hover{background:var(--color-race-gold);color:#fff}.yp-race-chip svg{flex-shrink:0}.yp-race-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.yp-comment{margin-top:auto;width:100%;min-height:40px;resize:vertical;background:var(--color-bg-deep);border:.5px solid var(--color-border);border-radius:8px;padding:6px 8px;color:var(--color-text);font-family:var(--font-family);font-size:12px;line-height:1.35;outline:none}.yp-comment::placeholder{color:var(--color-text-muted)}.yp-comment:focus{border-color:var(--color-accent)}}.desktop-only{display:flex}.mobile-only{display:none}.desktop-only-inline{display:inline}@media(max-width:768px){.desktop-only,.desktop-only-inline{display:none!important}.mobile-only{display:flex}}.lib-view{flex:1;overflow:hidden}.lib-left{width:408px;flex-shrink:0;border-right:.5px solid var(--color-border);display:flex;flex-direction:column;overflow:hidden}.lib-left-top{padding:16px 16px 10px;border-bottom:.5px solid var(--color-border);flex-shrink:0;display:flex;flex-direction:column;gap:8px}.lib-left-top-row{display:flex;align-items:center;gap:8px}.lib-left-top-row .fb-trigger{flex:1;justify-content:flex-start}.lib-left-top-row .fb-trigger-chev{margin-left:auto}.wf-new-btn{flex-shrink:0;font-size:13px;padding:7px 12px;display:flex;align-items:center;gap:6px}.lib-count{font-size:11px;color:var(--color-text-muted);letter-spacing:.3px}.lib-list{flex:1;overflow-y:auto;padding:10px 12px}.lib-right{flex:1;overflow-y:auto;min-width:0}.lib-placeholder{color:var(--color-text-muted);font-size:14px;padding:60px 0;text-align:center}.fp-row{display:flex;gap:5px;flex-wrap:wrap}.search-bar{display:flex;align-items:center;gap:8px;background:var(--color-bg-surface);border-radius:var(--radius-md);padding:9px 12px;border:.5px solid var(--color-border)}.search-bar input{flex:1;background:none;border:none;outline:none;color:var(--color-text);font-size:13px;font-family:var(--font-family)}.search-bar input::placeholder{color:var(--color-text-muted)}.wf-search-row{width:100%}.wf-search-clear{background:none;border:none;color:var(--color-text-muted);font-size:18px;line-height:1;padding:0 4px;cursor:pointer;-webkit-tap-highlight-color:transparent}.wf-search-clear:hover{color:var(--color-text)}.mob-list-view .wf-search-row.mob-search{margin:0 16px;width:auto}.wt-tile{background:var(--color-bg-surface);border:.5px solid var(--color-border);border-radius:var(--radius-md);padding:10px 12px;margin-bottom:8px;cursor:pointer;transition:background var(--transition-fast)}.wt-tile:hover{background:var(--color-bg-overlay)}.wt-tile.active{outline:1.5px solid var(--color-accent);outline-offset:-1.5px;background:var(--color-accent-soft)}.wt-top{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:2px}.wt-name{font-size:14px;font-weight:600;line-height:1.3}.wt-dur{font-size:11px;color:var(--color-text-muted);white-space:nowrap;flex-shrink:0}.wt-desc{font-size:11px;color:var(--color-text-2);margin-bottom:6px;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.wt-preview{margin:6px 0;height:44px;border-radius:6px;overflow:hidden;background:var(--color-bg-deep)}.wt-foot{display:flex;align-items:center;justify-content:space-between;margin-top:4px}.wt-sport{font-size:11px;font-weight:600;letter-spacing:.3px}.wt-vis{font-size:10px;color:var(--color-text-muted);letter-spacing:.5px;text-transform:uppercase}.wd-wrap{padding:0;display:flex;flex-direction:column}.wd-topbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:12px 24px;border-bottom:.5px solid var(--color-border);flex-shrink:0}.wd-back{background:none;border:1px solid var(--color-border);color:var(--color-text-2);padding:7px 12px;border-radius:var(--radius-sm);font-size:12px;cursor:pointer;font-family:var(--font-family);letter-spacing:.3px}.wd-back:hover{color:var(--color-text)}.wd-actions{display:flex;gap:6px;flex-wrap:wrap}.wd-act-btn{background:none;border:1px solid var(--color-border);color:var(--color-text-2);padding:7px 12px;border-radius:var(--radius-sm);font-size:12px;cursor:pointer;font-family:var(--font-family);letter-spacing:.3px;text-decoration:none;display:inline-flex;align-items:center}.wd-act-btn:hover{color:var(--color-text);border-color:var(--color-border-strong)}.wd-act-delete{color:var(--color-danger-text)}.wd-act-delete:hover{border-color:var(--color-danger-text)}.wd-act-done{color:var(--color-success);border-color:var(--color-success-glow)}.wd-act-done:hover{background:var(--color-success-soft-bg);border-color:var(--color-success)}.wd-sport-bar{height:3px}.wd-name{font-size:26px;font-weight:700;letter-spacing:-.4px;padding:16px 24px 4px;line-height:1.2}.wd-desc{font-size:13px;color:var(--color-text-2);line-height:1.5;padding:0 24px 14px}.wd-cat-section{padding:4px 24px 14px;display:flex;flex-direction:column;gap:6px}.wd-cat-label{font-size:11px;font-weight:600;letter-spacing:.4px;text-transform:uppercase;color:var(--color-text-muted)}.wd-cat-chips{display:flex;gap:5px;flex-wrap:wrap}.wd-profile-wrap{margin:0 24px 4px;background:var(--color-bg-deep);border-radius:var(--radius-md);overflow:hidden;border:.5px solid var(--color-border)}.wd-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:16px 24px;border-bottom:.5px solid var(--color-border)}.wd-stats.is-swim{grid-template-columns:repeat(2,1fr)}.wd-stat{background:var(--color-bg-surface);border:.5px solid var(--color-border);border-radius:var(--radius-md);padding:10px 12px;text-align:center}.wd-sv{font-size:18px;font-weight:700}.wd-sl{font-size:10px;color:var(--color-text-muted);margin-top:3px;letter-spacing:.3px}.wd-section{padding:16px 24px;border-bottom:.5px solid var(--color-border)}.wd-section:last-child{border-bottom:none}.wd-section-title{font-size:11px;color:var(--color-text-muted);letter-spacing:.8px;font-weight:600;margin-bottom:12px;text-transform:uppercase}.wd-raw-details>summary{list-style:none;-webkit-user-select:none;user-select:none}.wd-raw-details>summary::-webkit-details-marker{display:none}.wd-raw-details>summary:before{content:"▸";display:inline-block;margin-right:6px;transition:transform .15s;color:var(--color-text-muted)}.wd-raw-details[open]>summary:before{transform:rotate(90deg)}.wd-raw-pre{margin:0;padding:12px 14px;background:var(--color-bg-deep);border:.5px solid var(--color-border);border-radius:var(--radius-md);font-family:ui-monospace,Menlo,Consolas,monospace;font-size:12px;line-height:1.55;color:var(--color-text-2);white-space:pre-wrap;word-wrap:break-word;max-height:400px;overflow-y:auto}.bst-wrap{display:flex;flex-direction:column;gap:4px}.bst-reps{background:#4caf500d;border:.5px solid rgba(76,175,80,.2);border-radius:var(--radius-md);overflow:hidden;margin-bottom:4px}.bst-reps-header{display:flex;align-items:center;gap:8px;padding:7px 12px;border-bottom:.5px solid rgba(76,175,80,.15);background:#4caf5014}.bst-reps-count{font-size:15px;font-weight:700;color:var(--color-zone-3)}.bst-reps-label{font-size:11px;color:var(--color-text-2);font-weight:600;letter-spacing:.3px;text-transform:uppercase}.bst-reps-children{padding:8px 10px;display:flex;flex-direction:column;gap:4px}.bst-block{display:flex;align-items:center;gap:10px;padding:8px 10px;background:var(--color-bg-surface);border-radius:var(--radius-sm);border-left:3px solid var(--color-border)}.bst-block-content{display:flex;align-items:center;gap:8px;flex:1;flex-wrap:wrap;min-width:0}.bst-metric{font-size:10px;font-weight:600;color:var(--color-text-2)}.bst-target{font-size:13px;font-weight:600;flex:1}.bst-dur{font-size:12px;color:var(--color-text-2);font-family:monospace}.bst-zone-label{font-size:10px;font-weight:600;letter-spacing:.5px;white-space:nowrap}.wd-zone-row{display:flex;gap:16px;align-items:flex-start}.wd-zone-left{flex:1;min-width:0}.wd-zone-right{display:flex;flex-direction:column;gap:7px;width:110px;flex-shrink:0}.wd-zone-btn{width:100%;box-sizing:border-box;background:none;border:1px solid var(--color-border);color:var(--color-text-2);padding:6px 8px;border-radius:var(--radius-sm);font-size:11px;cursor:pointer;font-family:var(--font-family);letter-spacing:.3px;text-decoration:none;display:flex;align-items:center;justify-content:center}.wd-zone-btn:hover{color:var(--color-text);border-color:var(--color-border-strong)}.wd-zone-date{width:100%;box-sizing:border-box;background:var(--color-bg-surface);border:.5px solid var(--color-border);border-radius:var(--radius-sm);padding:6px 8px;color:var(--color-text);font-size:11px;font-family:var(--font-family);outline:none;color-scheme:dark}.wd-zone-date:focus{border-color:var(--color-border-strong)}.wd-zone-sched-btn{width:100%;padding:6px 8px;background:var(--color-accent);border:none;border-radius:var(--radius-sm);color:#fff;font-size:11px;font-weight:600;font-family:var(--font-family);cursor:pointer}.wd-zone-sched-btn:disabled{opacity:.5;cursor:not-allowed}.wd-zone-sched-done{font-size:12px;color:var(--color-zone-3);font-weight:600;text-align:center;padding:4px 0}.zone-breakdown{display:flex;flex-direction:column;gap:6px}.zb-row{display:grid;grid-template-columns:28px 1fr 50px;align-items:center;gap:10px}.zb-name{font-size:10px;font-weight:700;letter-spacing:.5px;text-align:right}.zb-bar-wrap{height:6px;background:var(--color-surface-hairline);border-radius:3px;overflow:hidden}.zb-bar{height:100%;border-radius:3px;opacity:.9}.zb-time{font-size:11px;color:var(--color-text-2);text-align:right;font-family:monospace}.builder-title{font-size:16px;font-weight:700;margin-bottom:16px;padding:20px 24px 0}.builder-field{margin-bottom:14px;padding:0 24px}.builder-field label{display:block;font-size:12px;font-weight:600;color:var(--color-text-muted);margin-bottom:6px}.builder-field input,.builder-field textarea{width:100%;box-sizing:border-box;background:var(--color-bg-surface);border:.5px solid var(--color-border);border-radius:10px;padding:10px 14px;color:var(--color-text);font-size:14px;font-family:var(--font-family);outline:none}.builder-field textarea{resize:vertical;min-height:60px}.builder-field input:focus,.builder-field textarea:focus{border-color:var(--color-border-strong)}.type-opts{display:flex;gap:8px}.type-opt{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 6px;border-radius:var(--radius-md);background:var(--color-bg-surface);border:1.5px solid transparent;cursor:pointer;font-size:12px;color:var(--color-text-2);transition:all .12s}.type-opt:hover{border-color:var(--color-border);color:var(--color-text)}.type-opt.sel{border-color:var(--color-accent);color:var(--color-text);background:var(--color-accent-soft)}.type-opt-icon{font-size:20px}.b-dur-display{font-size:12px;color:var(--color-text-muted);margin-top:6px}.builder-blocks{padding:0 24px;margin-bottom:4px}.bl-card{background:var(--color-bg-surface);border:.5px solid var(--color-border);border-radius:var(--radius-md);padding:7px 10px;margin-bottom:5px;border-left-width:2.5px;transition:opacity .15s}.bl-row{display:flex;align-items:center;gap:5px}.bl-drag{color:var(--color-text-muted);font-size:15px;cursor:grab;flex-shrink:0;-webkit-user-select:none;user-select:none;padding:4px 6px;margin:-4px -6px}.bl-badge{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:3px 7px;border-radius:10px;flex-shrink:0}.bl-badge-step{background:#4a9ec733;color:var(--color-sport-swim)}.bl-badge-ramp{background:#e8c83233;color:var(--color-zone-4)}.bl-badge-reps{background:#4caf5033;color:var(--color-zone-3)}.bl-metric-cycle{background:var(--color-bg-surface);border:.5px solid var(--color-border);border-radius:6px;color:var(--color-text-2);font-size:11px;font-weight:700;padding:5px 7px;cursor:pointer;font-family:var(--font-family);flex-shrink:0}.bl-metric-cycle:hover{color:var(--color-text)}.bl-ci{flex:1;min-width:0;width:0;background:var(--color-bg-overlay);border:.5px solid var(--color-border);border-radius:7px;padding:7px 4px;color:var(--color-text);font-size:13px;font-weight:500;outline:none;font-family:var(--font-family);text-align:center}.bl-ci::placeholder{color:var(--color-text-muted)}.bl-ci:focus{border-color:var(--color-border-strong)}.bl-arrow{color:var(--color-text-muted);font-size:11px;flex-shrink:0}.bl-mode-btn{background:var(--color-overscan-faint);border:.5px solid var(--color-border);border-radius:6px;color:var(--color-text-muted);font-size:10px;font-weight:700;padding:5px 6px;cursor:pointer;font-family:var(--font-family);flex-shrink:0}.bl-mode-btn:hover{color:var(--color-text)}.bl-del{background:none;border:none;color:var(--color-text-muted);font-size:18px;cursor:pointer;padding:0 2px;line-height:1;flex-shrink:0;font-family:var(--font-family)}.bl-del:hover{color:var(--color-danger-text)}.bl-count-inp{width:34px;background:var(--color-bg-overlay);border:.5px solid var(--color-border);border-radius:7px;padding:6px 3px;color:var(--color-text);font-size:15px;font-weight:700;outline:none;font-family:var(--font-family);text-align:center}.bl-x-label{font-size:12px;color:var(--color-text-2);flex-shrink:0}.bl-children{border-left:2px solid rgba(76,175,80,.2);padding-left:8px;margin-top:6px}.bl-add-row{display:flex;gap:5px;margin-top:5px}.bl-add-btn{flex:1;padding:7px 4px;background:var(--color-overscan-faint);border:1px dashed var(--color-surface-shimmer);border-radius:8px;color:var(--color-text-muted);font-size:11px;font-weight:600;cursor:pointer;font-family:var(--font-family);text-align:center;transition:color .12s,border-color .12s}.bl-add-btn:hover{color:var(--color-text);border-color:var(--color-border-strong)}.detail-actions{display:flex;gap:10px;margin-top:20px;padding:0 24px 24px}.btn-primary-full{flex:1;padding:12px;border-radius:var(--radius-md);border:none;background:var(--color-strava);color:#fff;font-size:14px;font-weight:700;font-family:var(--font-family);cursor:pointer}.btn-primary-full:hover{opacity:.9}.btn-primary-full:disabled{opacity:.5;cursor:not-allowed}.btn-secondary-full{flex:1;padding:12px;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-bg-surface);color:var(--color-text);font-size:14px;font-weight:600;font-family:var(--font-family);cursor:pointer}.btn-secondary-full:hover:not(:disabled){background:var(--color-bg-overlay)}.btn-secondary-full:disabled{opacity:.5;cursor:not-allowed}.mob-layout{flex:1;flex-direction:column;overflow:hidden}.mob-list-view{display:flex;flex-direction:column;height:100%;overflow:hidden}.mob-header{display:flex;align-items:center;gap:8px;padding:12px 16px 8px;flex-shrink:0}.mob-header .fb-trigger{flex:1;justify-content:flex-start}.mob-header .fb-trigger-chev{margin-left:auto}.mob-count{font-size:11px;color:var(--color-text-muted);padding:6px 16px 4px;flex-shrink:0}.mob-tiles{flex:1;overflow-y:auto;padding:8px 12px}.mob-detail-view{flex:1;flex-direction:column;overflow-y:auto;display:flex}.mob-back-bar{padding:12px 16px;border-bottom:.5px solid var(--color-border);flex-shrink:0}.mob-back-btn{background:none;border:1px solid var(--color-border);color:var(--color-text-2);padding:7px 14px;border-radius:var(--radius-sm);font-size:13px;cursor:pointer;font-family:var(--font-family)}.mob-sched-row{display:flex;gap:10px;align-items:center}.mob-date-input{flex:1;background:var(--color-bg-surface);border:.5px solid var(--color-border);border-radius:var(--radius-md);padding:10px 14px;color:var(--color-text);font-size:14px;font-family:var(--font-family);outline:none;color-scheme:dark}.mob-date-input:focus{border-color:var(--color-border-strong)}.mob-sched-btn{padding:10px 18px;background:var(--color-accent);border:none;border-radius:var(--radius-md);color:#fff;font-size:14px;font-weight:600;font-family:var(--font-family);cursor:pointer;white-space:nowrap}.mob-sched-btn:disabled{opacity:.5;cursor:not-allowed}.mob-sched-done{font-size:14px;color:var(--color-zone-3);font-weight:600;padding:10px 0}.sched-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-overlay-dim);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:200}.sched-modal{background:var(--color-bg-deep);border:.5px solid var(--color-border);border-radius:var(--radius-lg);padding:24px;width:280px;display:flex;flex-direction:column;gap:12px;box-shadow:var(--shadow-modal)}.sched-modal-title{font-size:13px;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.6px}.sched-modal-name{font-size:16px;font-weight:700;line-height:1.3}.sched-modal-date{width:100%;box-sizing:border-box;background:var(--color-bg-deep);border:.5px solid var(--color-border);border-radius:var(--radius-md);padding:10px 12px;color:var(--color-text);font-size:14px;font-family:var(--font-family);outline:none;color-scheme:dark}.sched-modal-date:focus{border-color:var(--color-border-strong)}.sched-modal-actions{display:flex;gap:8px;margin-top:4px}.sched-modal-cancel{flex:1;padding:10px;background:none;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-2);font-size:13px;font-weight:600;font-family:var(--font-family);cursor:pointer}.sched-modal-cancel:hover{color:var(--color-text)}.sched-modal-confirm{flex:2;padding:10px;background:var(--color-accent);border:none;border-radius:var(--radius-md);color:#fff;font-size:13px;font-weight:700;font-family:var(--font-family);cursor:pointer}.sched-modal-confirm:hover{opacity:.9}.sched-modal-confirm:disabled{opacity:.45;cursor:not-allowed}.races-page{flex:1;overflow-y:auto;padding:24px 28px}.races-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.races-header h1{font-size:18px;font-weight:700}.race-item{display:flex;align-items:center;gap:12px;padding:12px;background:var(--color-danger-bg);border:.5px solid var(--color-danger-line);border-radius:var(--radius-md);margin-bottom:8px}.race-item .si-dot{width:4px;height:36px;border-radius:2px;flex-shrink:0;background:var(--color-danger-text)}.race-item .si-info{flex:1}.race-item .si-name{font-size:14px;font-weight:600;color:var(--color-text)}.race-item .si-meta{font-size:12px;color:var(--color-text-2);margin-top:2px}.race-item .si-del{background:none;border:none;color:var(--color-text-muted);font-size:18px;cursor:pointer;padding:4px 8px;font-family:var(--font-family)}.race-item .si-del:hover{color:var(--color-danger-text)}.add-race-btn{background:var(--color-danger-soft);border:.5px solid var(--color-danger-glow);color:var(--color-danger-text);border-radius:var(--radius-md);padding:8px 14px;font-size:12px;font-weight:600;cursor:pointer;font-family:var(--font-family);transition:background .12s}.add-race-btn:hover{background:#e0525238}.race-form{background:var(--color-bg-surface);border:.5px solid var(--color-border);border-radius:var(--radius-md);padding:16px;margin-bottom:16px}.race-form label{display:block;font-size:11px;color:var(--color-text-muted);margin:12px 0 4px;text-transform:uppercase;letter-spacing:.05em}.race-form label:first-child{margin-top:0}.race-form input{width:100%;box-sizing:border-box;background:var(--color-bg-overlay);border:.5px solid var(--color-border);border-radius:8px;color:var(--color-text);font-size:13px;padding:8px 10px;font-family:var(--font-family);outline:none}.race-form input:focus{border-color:var(--color-border-strong)}.race-form-actions{display:flex;gap:8px;margin-top:14px}.races-max{max-width:540px}.wp{position:relative;min-width:36px;height:64px;overflow:hidden;border-radius:8px;background:var(--color-bg-surface)}.wp-track{height:100%;overflow-y:scroll;scroll-snap-type:y mandatory;scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;touch-action:pan-y;padding-top:14px;padding-bottom:14px;mask-image:linear-gradient(to bottom,transparent 0%,black 22%,black 78%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,transparent 0%,black 22%,black 78%,transparent 100%)}.wp-track::-webkit-scrollbar{display:none;width:0;height:0}.wp-item{height:36px;display:flex;align-items:center;justify-content:center;scroll-snap-align:center;font-variant-numeric:tabular-nums;font-size:18px;font-weight:500;color:var(--color-text);user-select:none;-webkit-user-select:none}.wp-highlight{position:absolute;top:50%;left:0;right:0;height:36px;margin-top:-18px;border-top:1px solid var(--color-border-strong);border-bottom:1px solid var(--color-border-strong);pointer-events:none}.settings-page{flex:1;overflow-y:auto;padding:24px 28px}.settings-page h1{font-size:18px;font-weight:700;margin-bottom:20px}.sm-section{margin-bottom:20px}.sm-label{font-size:12px;font-weight:600;color:var(--color-text-muted);margin-bottom:8px;letter-spacing:.2px}.sm-input-row{display:flex;align-items:center;gap:10px;margin-bottom:10px}.sm-input-label{font-size:13px;color:var(--color-text-2);width:180px;flex-shrink:0}.sm-input{flex:1;background:var(--color-bg-surface);border:.5px solid var(--color-border);border-radius:8px;padding:8px 12px;color:var(--color-text);font-size:14px;font-family:var(--font-family);outline:none}.sm-input:focus{border-color:var(--color-border-strong)}.sm-select{flex:1;background:var(--color-bg-surface);border:.5px solid var(--color-border);border-radius:8px;padding:8px 12px;color:var(--color-text);font-size:14px;font-family:var(--font-family);outline:none}.sm-minsec{display:flex;align-items:center;gap:6px;flex:1}.sm-minsec-field{flex:1;min-width:0}.sm-minsec-sep{font-size:16px;color:var(--color-text-2);font-weight:600}.sm-wheel-cluster{display:flex;align-items:center;gap:6px;flex-shrink:0;width:84px}.sm-wheel-cluster .wp{flex:1 1 0;min-width:0}.sm-wheel-colon{font-size:18px;font-weight:600;color:var(--color-text-2);padding-bottom:2px;flex:0 0 auto}.sm-wheel-suffix{font-size:13px;color:var(--color-text-2);font-variant-numeric:tabular-nums;flex:0 0 36px}.sm-toggle-row{display:flex;margin-bottom:10px}.sm-save-btn{width:100%;padding:12px;border-radius:var(--radius-md);border:none;background:var(--color-accent);color:#fff;font-size:14px;font-weight:700;font-family:var(--font-family);cursor:pointer;margin-top:8px}.sm-save-btn:hover{opacity:.9}.sm-save-btn:disabled{opacity:.5;cursor:default}.sm-input-warn{font-size:12px;color:var(--color-zone-4);margin:-4px 0 12px 190px;line-height:1.4}@media(max-width:540px){.sm-input-warn{margin-left:0}}.sm-badge{font-size:12px;color:var(--color-success-2);margin-top:6px}.sm-sync-row{display:flex;flex-direction:column;gap:6px;margin-top:10px}.sm-sync-btn{align-self:flex-start;font-size:13px;padding:8px 14px}.sm-sync-result{font-size:12px;color:var(--color-text-2)}.sm-sync-error{font-size:12px;color:var(--color-danger, #e25555)}.settings-max{max-width:520px}.sm-prefs{margin-top:18px;padding-top:16px;border-top:.5px solid var(--color-border)}.sm-pref-row{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px}.sm-pref-row:last-child{margin-bottom:0}.sm-pref-row .toggle-pill{margin-top:1px}.sm-pref-text{display:flex;flex-direction:column;gap:2px;min-width:0}.sm-pref-name{font-size:14px;color:var(--color-text)}.sm-pref-desc{font-size:12px;color:var(--color-text-muted);line-height:1.35}.sm-menu{display:flex;flex-direction:column;background:var(--color-bg-surface);border:.5px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.sm-menu-item{display:flex;align-items:center;gap:14px;width:100%;padding:14px 16px;background:none;border:none;border-top:.5px solid var(--color-border);color:var(--color-text);font-family:var(--font-family);text-align:left;cursor:pointer}.sm-menu-item:first-child{border-top:none}.sm-menu-item:hover{background:var(--color-bg-raised)}.sm-menu-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:34px;height:34px;border-radius:9px;background:var(--color-bg-raised);color:var(--color-text-2)}.sm-menu-text{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.sm-menu-label{font-size:15px;font-weight:600}.sm-menu-sub{font-size:12px;color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sm-menu-chevron{flex-shrink:0;color:var(--color-text-muted)}.sm-detail-header{margin-bottom:4px}.sm-back-btn{display:inline-flex;align-items:center;gap:2px;padding:4px 8px 4px 2px;margin-left:-4px;background:none;border:none;color:var(--color-text-2);font-family:var(--font-family);font-size:14px;cursor:pointer}.sm-back-btn:hover{color:var(--color-text)}.sm-detail-title{margin-bottom:18px!important}.sm-menu-avatar{flex-shrink:0}.sm-subback-btn{display:inline-flex;align-items:center;gap:2px;padding:4px 8px 4px 2px;margin:0 0 12px -4px;background:none;border:none;color:var(--color-text-2);font-family:var(--font-family);font-size:14px;cursor:pointer}.sm-subback-btn:hover{color:var(--color-text)}.sm-coachee-head{display:flex;align-items:center;gap:10px;margin-bottom:18px}.sm-coachee-name{font-size:16px;font-weight:600}@media(max-width:540px){.sm-input-row{flex-wrap:nowrap;align-items:center;gap:12px}.sm-input-label{width:auto;flex:1 1 auto;min-width:0;margin-bottom:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sm-select,.sm-input,.sm-minsec{width:auto;flex:0 0 auto}}.admin-page{flex:1;overflow-y:auto;padding:24px 28px}.admin-page h1{font-size:18px;font-weight:700;margin-bottom:16px}.admin-tabs{display:flex;gap:6px;margin-bottom:20px}.config-table{width:100%;border-collapse:collapse;font-size:13px}.config-table td{padding:8px 12px;border-bottom:.5px solid var(--color-border);vertical-align:middle}.config-table td:first-child{width:200px;color:var(--color-text-muted)}.config-table tr:last-child td{border-bottom:none}.audit-table{width:100%;border-collapse:collapse;font-size:13px;min-width:500px}.audit-table th{padding:8px 12px;text-align:left;border-bottom:.5px solid var(--color-border);font-size:11px;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.audit-table td{padding:8px 12px;border-bottom:.5px solid var(--color-overscan-faint);color:var(--color-text-2)}.audit-table td:nth-child(2){color:var(--color-text);font-weight:500}.athlete-admin-list{display:flex;flex-direction:column;gap:6px}.athlete-admin-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;background:var(--color-bg-surface);border:.5px solid var(--color-border);border-radius:var(--radius-md)}.athlete-admin-name{font-size:14px;font-weight:600}.athlete-admin-sub{font-size:12px;color:var(--color-text-muted);margin-top:2px}code{font-family:monospace;font-size:12px;background:var(--color-bg-overlay);padding:1px 5px;border-radius:4px}.table-wrap{overflow-x:auto}.admin-max{max-width:700px}.admin-wide{max-width:1100px}.webhook-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.webhook-hint{font-size:12px;color:var(--color-text-muted);flex:1 1 auto}.webhook-h3{font-size:12px;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin:16px 0 8px;display:flex;align-items:baseline;gap:10px}.webhook-h3-sub{font-size:11px;font-weight:400;color:var(--color-text-muted);text-transform:none;letter-spacing:normal}.webhook-error{color:var(--color-danger-text);font-family:monospace;font-size:12px;max-width:300px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.badge-ok{background:var(--color-success-bg);color:var(--color-success-soft);border:.5px solid var(--color-success-line)}.badge-warn{background:var(--color-warning-bg);color:var(--color-warning);border:.5px solid var(--color-warning-line)}.apps-page{padding:var(--space-6);max-width:900px}.apps-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-5);margin-top:var(--space-5)}.app-card{display:flex;flex-direction:column;gap:10px;padding:0;background:none;border:none;cursor:pointer;text-align:left;-webkit-tap-highlight-color:transparent;transition:opacity var(--transition-fast)}.app-card:disabled:not(.is-locked){opacity:.5;cursor:not-allowed}.app-card-preview{position:relative;width:100%;aspect-ratio:1 / 1;border-radius:var(--radius-lg);overflow:hidden;background:var(--color-app-tile-bg);box-shadow:var(--shadow-card),inset 0 1px #ffffff0f;transition:transform .15s ease}.app-card:hover .app-card-preview{transform:scale(1.03)}.app-card:active .app-card-preview{transform:scale(.98)}.app-card-shot{width:100%;height:100%;object-fit:cover;display:block}.app-card-logofill{width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:14%}.app-card-logofill img{max-width:100%;max-height:100%;object-fit:contain}.app-card.is-locked .app-card-preview{filter:grayscale(.85);opacity:.5}.app-card.is-locked:hover .app-card-preview,.app-card.is-locked:active .app-card-preview{transform:none}.app-card.is-locked .app-card-name{color:var(--color-text-muted)}.app-card-badge{position:absolute;top:8px;right:8px;padding:2px 8px;font-size:10px;font-weight:var(--font-weight-medium);letter-spacing:.5px;text-transform:uppercase;background:var(--color-accent);color:#fff;border-radius:var(--radius-full);box-shadow:var(--shadow-card);pointer-events:none}.app-card-name{font-size:15px;font-weight:var(--font-weight-medium);color:var(--color-text);line-height:1.2}@media(max-width:768px){.apps-page{padding:var(--space-4);overflow-y:auto;height:100%;-webkit-overflow-scrolling:touch}.apps-grid{gap:var(--space-4)}.app-card-name{font-size:13px}}.soc-page{flex:1;overflow-y:auto;padding:var(--space-6);max-width:760px;width:100%}.soc-tabs{display:flex;gap:4px;border-bottom:1px solid var(--color-border);margin:0 0 var(--space-5)}.soc-tab{position:relative;background:none;border:none;padding:10px 16px;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-muted);cursor:pointer;border-bottom:2px solid transparent;transition:color var(--transition-fast),border-color var(--transition-fast)}.soc-tab:hover{color:var(--color-text-2)}.soc-tab--active{color:var(--color-text);border-bottom-color:var(--color-accent)}.soc-tab-badge{display:inline-block;margin-left:6px;min-width:18px;height:18px;padding:0 5px;font-size:11px;line-height:18px;font-weight:var(--font-weight-medium);color:#fff;background:var(--color-accent);border-radius:var(--radius-full);text-align:center}.soc-search{position:relative;display:flex;align-items:center;background:var(--color-bg-surface);border:.5px solid var(--color-border);border-radius:12px;padding:4px 12px;margin-bottom:var(--space-4)}.soc-search:focus-within{border-color:var(--color-border-strong)}.soc-search-icon{display:flex;align-items:center;color:var(--color-text-muted);margin-right:8px}.soc-search-input{flex:1;background:transparent;border:none;outline:none;padding:8px 0;color:var(--color-text);font-size:14px;font-family:var(--font-family)}.soc-search-clear{background:none;border:none;color:var(--color-text-muted);font-size:18px;width:22px;height:22px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:var(--radius-full)}.soc-search-clear:hover{background:var(--color-bg-raised);color:var(--color-text)}.soc-section{display:flex;flex-direction:column;gap:var(--space-5)}.soc-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.soc-row{display:flex;align-items:center;gap:12px;padding:10px 12px;background:var(--color-bg-surface);border:.5px solid var(--color-border);border-radius:10px}.soc-row-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.soc-row-name{font-size:14px;font-weight:var(--font-weight-medium);color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.soc-row-sub{font-size:12px;color:var(--color-text-muted);display:flex;align-items:center;gap:6px;flex-wrap:wrap}.soc-row-sub--stack{flex-direction:column;align-items:flex-start;gap:4px}.soc-row--clickable{cursor:pointer}.soc-row--clickable:hover{background:var(--color-bg-raised)}.soc-row--pending{border-left:3px solid var(--color-accent)}.soc-rowsub-faint{color:var(--color-text-muted);font-style:italic}.soc-pendingmark{color:var(--color-text-2);font-weight:var(--font-weight-medium)}.soc-pendingmark--incoming{color:var(--color-accent)}.soc-row-actions{display:flex;gap:6px;flex-shrink:0}.soc-group{display:flex;flex-direction:column;gap:8px}.soc-group-title{font-size:13px;font-weight:var(--font-weight-medium);color:var(--color-text-muted);letter-spacing:.3px;text-transform:uppercase;margin:0;display:flex;align-items:center;gap:8px}.soc-group-count{font-size:11px;color:var(--color-text-2);background:var(--color-bg-raised);padding:1px 7px;border-radius:var(--radius-full);text-transform:none;letter-spacing:0}.soc-rolepill{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;font-size:11px;font-weight:var(--font-weight-medium);border-radius:var(--radius-full);border:.5px solid var(--color-border);background:var(--color-bg-surface);color:var(--color-text-2);line-height:16px}.soc-rolepill svg{flex-shrink:0}.soc-rolepill--grant{background:var(--color-accent-soft);color:var(--color-text);border-color:transparent}.soc-rolepill--base{background:transparent;color:var(--color-text-muted)}.soc-grant-summary{display:inline-flex;align-items:center;flex-wrap:wrap;gap:5px}.soc-grant-lead{font-size:11px;color:var(--color-text-muted)}.soc-empty{padding:24px 12px;text-align:center;color:var(--color-text-muted);font-size:13px}.soc-empty--inline{padding:12px;text-align:left}.soc-error{padding:10px 12px;background:var(--color-bg-surface);border:.5px solid var(--color-border);border-left:3px solid var(--color-danger, #e25555);border-radius:10px;color:var(--color-text);font-size:13px}.soc-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-overlay-dim);backdrop-filter:blur(8px) saturate(140%);-webkit-backdrop-filter:blur(8px) saturate(140%);display:flex;align-items:center;justify-content:center;z-index:100;padding:var(--space-4)}.soc-modal{background:var(--color-modal-bg, var(--color-bg-raised));border:.5px solid var(--color-border);border-radius:16px;padding:20px 22px;max-width:380px;width:100%;box-shadow:var(--shadow-glass)}.soc-modal-title{margin:0 0 8px;font-size:16px;font-weight:var(--font-weight-medium);color:var(--color-text)}.soc-modal-body{margin:0 0 16px;font-size:13px;color:var(--color-text-2);line-height:1.45}.soc-modal-actions{display:flex;gap:8px;margin-top:14px}.soc-modal-actions .btn{flex:1}.soc-modal-cancel{display:block;width:100%;text-align:center;margin-top:10px}.soc-grant-toggles{display:flex;flex-direction:column;gap:14px;margin-bottom:4px}.soc-grant-row{display:flex;align-items:flex-start;gap:12px}.soc-grant-row .toggle-pill{margin-top:1px}.soc-grant-text{display:flex;flex-direction:column;gap:2px;min-width:0}.soc-grant-name{font-size:14px;color:var(--color-text)}.soc-grant-desc{font-size:12px;color:var(--color-text-muted);line-height:1.4}.soc-grant-readonly{margin-bottom:4px}.btn.btn-danger{background:var(--color-danger, #e25555);color:#fff;border:none}.btn.btn-danger:hover:not(:disabled){filter:brightness(1.05)}.soc-pending-wrap{display:flex;flex-direction:column;gap:var(--space-4);margin-bottom:var(--space-2)}.notif-page{max-width:720px;margin:0 auto}.notif-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4)}.notif-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold, 700);margin:0}.notif-actions{display:flex;gap:var(--space-2);flex-shrink:0}.notif-action-btn{font-size:var(--font-size-sm);padding:var(--space-1) var(--space-3)}.notif-hint{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);margin-bottom:var(--space-4);border:1px solid var(--color-accent);border-radius:12px;background:var(--color-accent-soft, var(--color-bg-surface));color:var(--color-text)}.notif-hint>svg{flex-shrink:0;color:var(--color-accent)}.notif-hint-text{flex:1;min-width:0;font-size:var(--font-size-sm);line-height:1.4}.notif-hint-link{color:var(--color-accent);font-weight:var(--font-weight-medium, 600);text-decoration:underline}.notif-hint-close{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:6px;background:transparent;color:var(--color-text-muted);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background var(--transition-fast),color var(--transition-fast)}.notif-hint-close:hover{background:var(--color-bg-surface);color:var(--color-text)}.notif-empty,.notif-empty-state{color:var(--color-text-muted)}.notif-empty-state{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-6) var(--space-3);text-align:center}.notif-empty-state svg{opacity:.4}.notif-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.notif-row{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:12px;background:var(--color-bg-raised);transition:background var(--transition-fast),border-color var(--transition-fast)}.notif-row--link{cursor:pointer}.notif-row--link:hover{background:var(--color-bg-surface)}.notif-row--unread{border-left:3px solid var(--color-accent);background:var(--color-accent-soft, var(--color-bg-surface))}.notif-dot{flex-shrink:0;width:8px;height:8px;margin-top:6px;border-radius:50%;background:var(--color-accent)}.notif-body{flex:1;min-width:0}.notif-row-title{font-weight:var(--font-weight-medium, 600);color:var(--color-text)}.notif-row--unread .notif-row-title{font-weight:var(--font-weight-bold, 700)}.notif-row-text{color:var(--color-text-2);font-size:var(--font-size-sm);margin-top:2px;word-break:break-word}.notif-row-time{color:var(--color-text-muted);font-size:var(--font-size-xs, 12px);margin-top:var(--space-1)}.notif-del{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:8px;background:transparent;color:var(--color-text-muted);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background var(--transition-fast),color var(--transition-fast)}.notif-del:hover{background:var(--color-bg-surface);color:var(--color-danger, var(--color-text))}.diagnostics-page{padding:24px;max-width:960px;margin:0 auto}.diagnostics-page .page-header h1{margin:0 0 8px}.diagnostics-page .muted{color:var(--color-text-muted);font-size:.92rem}.diagnostics-page code{background:var(--color-bg-overlay);padding:1px 5px;border-radius:3px;font-size:.88em}.probe-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;margin:24px 0}.probe-btn{background:var(--color-bg-surface);color:var(--color-text);border:1px solid var(--color-border);padding:12px 16px;border-radius:6px;font:inherit;cursor:pointer;text-align:left}.probe-btn:hover:not(:disabled){border-color:var(--color-strava)}.probe-btn:disabled{opacity:.5;cursor:not-allowed}.probe-btn--ghost{background:transparent}.probe-log h2{margin:24px 0 12px}.probe-entry{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:6px;padding:10px 14px;margin-bottom:8px}.probe-entry summary{cursor:pointer;display:grid;grid-template-columns:220px 1fr 100px 80px;gap:12px;align-items:center;font-size:.92rem}.probe-entry summary>*{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.probe-when{color:var(--color-text-muted);font-family:monospace}.probe-probe{color:var(--color-text)}.probe-status{font-weight:600}.probe-duration{color:var(--color-text-muted);text-align:right}.status-ok{color:var(--color-success-2)}.status-not_found{color:var(--color-zone-4)}.status-budget_exceeded{color:var(--color-zone-5)}.status-auth_error,.status-error,.status-err{color:var(--color-danger-text)}.probe-entry pre{background:var(--color-bg-overlay);padding:10px;border-radius:4px;overflow:auto;font-size:.82rem;margin:10px 0 6px;max-height:320px}.probe-request{font-family:monospace;font-size:.78rem}:root{color-scheme:dark;--color-bg: #032143;--color-bg-deep: #021a36;--color-bg-raised: #082752;--color-bg-surface: rgba(253, 253, 253, .06);--color-bg-overlay: rgba(253, 253, 253, .1);--color-text: #fdfdfd;--color-text-2: #bebdc9;--color-text-muted: #6f7180;--color-border: rgba(253, 253, 253, .1);--color-border-strong: rgba(253, 253, 253, .25);--color-overlay-dim: rgba(0, 0, 0, .35);--color-modal-bg: rgba(2, 26, 54, .55);--color-modal-bg-strong: rgba(2, 26, 54, .92);--color-glass-tint: rgba(3, 33, 67, .85);--color-glass-tint-strong: rgba(3, 33, 67, .95);--color-glass-tint-blur: rgba(3, 33, 67, .92);--color-tabbar-bg: rgba(2, 26, 54, .85);--color-surface-highlight: rgba(253, 253, 253, .12);--color-surface-shimmer: rgba(255, 255, 255, .08);--color-surface-hairline: rgba(255, 255, 255, .06);--color-overscan-faint: rgba(255, 255, 255, .04);--color-knob-shadow: rgba(0, 0, 0, .45);--chart-threshold-line: rgba(253, 253, 253, .25);--chart-grid: rgba(180, 187, 200, .18);--chart-tick-label: rgba(180, 187, 200, .7);--shadow-glass: 0 4px 24px rgba(0, 0, 0, .3);--shadow-card: 0 2px 8px rgba(0, 0, 0, .35);--shadow-dropdown: 0 6px 20px rgba(0, 0, 0, .45);--shadow-tooltip: 0 4px 12px rgba(0, 0, 0, .4);--shadow-modal: 0 20px 60px rgba(0, 0, 0, .45);--color-accent: #6e0405;--color-accent-hover: rgba(110, 4, 5, .6);--color-accent-soft: rgba(110, 4, 5, .2);--color-accent-softer: rgba(110, 4, 5, .18);--color-accent-line: rgba(110, 4, 5, .4);--color-accent-glow: rgba(110, 4, 5, .18);--color-sport-swim: #4a9ec7;--color-sport-bike: #5bae7c;--color-sport-run: #c2524a;--color-sport-gym: #9b8abf;--color-sport-hike: #82b840;--color-sport-ski: #a0c8e8;--color-sport-multi: #c7a34a;--color-sport-swim-bg: rgba(74, 158, 199, .15);--color-sport-bike-bg: rgba(91, 174, 124, .15);--color-sport-run-bg: rgba(194, 82, 74, .15);--color-sport-gym-bg: rgba(155, 138, 191, .15);--color-sport-hike-bg: rgba(130, 184, 64, .15);--color-sport-multi-bg: rgba(199, 163, 74, .15);--color-zone-1: #808080;--color-zone-2: #4a9ec7;--color-zone-3: #4caf50;--color-zone-4: #e8c832;--color-zone-5: #e87820;--color-zone-6: #c82828;--color-zone-7: #9333ea;--color-success: #2A9E5C;--color-success-2: #5BAE7C;--color-success-soft: #6FCF7D;--color-success-bg: rgba(80, 180, 100, .15);--color-success-line: rgba(80, 180, 100, .3);--color-success-glow: rgba(42, 158, 92, .45);--color-success-soft-bg: rgba(42, 158, 92, .12);--color-danger: #9E2A2A;--color-danger-text: #E05252;--color-danger-bg: rgba(224, 82, 82, .08);--color-danger-line: rgba(224, 82, 82, .25);--color-danger-soft: rgba(224, 82, 82, .15);--color-danger-glow: rgba(224, 82, 82, .3);--color-warning: #E0AA52;--color-warning-bg: rgba(224, 170, 82, .15);--color-warning-line: rgba(224, 170, 82, .3);--color-race-gold: #C7A34A;--color-race-gold-bg: rgba(199, 163, 74, .12);--color-race-gold-line: rgba(199, 163, 74, .25);--color-todo: #6F7180;--color-todo-bg: rgba(111, 113, 128, .15);--color-strava: #FC4C02;--color-strava-2: #fc5200;--color-strava-hover: #ff6e1a;--color-app-tile-bg: #082752;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", sans-serif;--font-size-xs: 11px;--font-size-sm: 13px;--font-size-base: 15px;--font-size-lg: 17px;--font-size-xl: 20px;--font-size-2xl: 24px;--font-size-3xl: 30px;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-bold: 700;--line-height-tight: 1.2;--line-height-normal: 1.5;--radius-sm: 6px;--radius-md: 16px;--radius-lg: 22px;--radius-full: 9999px;--backdrop-blur: blur(16px);--transition-fast: .12s ease;--transition-normal: .2s ease;--transition-slow: .35s ease;--sidebar-width: 220px;--tabbar-height: 60px;--content-max-width: 900px}[data-theme=light]{color-scheme:light;--color-bg: #ffffff;--color-bg-deep: #ffffff;--color-bg-raised: #ffffff;--color-bg-surface: rgba(0, 0, 0, .04);--color-bg-overlay: rgba(0, 0, 0, .07);--color-text: #0a0a0a;--color-text-2: #2a2a2a;--color-text-muted: #606060;--color-border: rgba(0, 0, 0, .16);--color-border-strong: rgba(0, 0, 0, .36);--color-overlay-dim: rgba(0, 0, 0, .32);--color-modal-bg: rgba(255, 255, 255, .85);--color-modal-bg-strong: rgba(255, 255, 255, .96);--color-glass-tint: rgba(255, 255, 255, .85);--color-glass-tint-strong: rgba(255, 255, 255, .95);--color-glass-tint-blur: rgba(255, 255, 255, .92);--color-tabbar-bg: rgba(255, 255, 255, .88);--color-surface-highlight: rgba(0, 0, 0, .14);--color-surface-shimmer: rgba(0, 0, 0, .06);--color-surface-hairline: rgba(0, 0, 0, .08);--color-overscan-faint: rgba(0, 0, 0, .04);--color-knob-shadow: rgba(0, 0, 0, .3);--chart-threshold-line: rgba(0, 0, 0, .55);--chart-grid: rgba(0, 0, 0, .14);--chart-tick-label: rgba(0, 0, 0, .65);--shadow-glass: 0 4px 24px rgba(0, 0, 0, .12);--shadow-card: 0 2px 8px rgba(0, 0, 0, .16);--shadow-dropdown: 0 6px 20px rgba(0, 0, 0, .22);--shadow-tooltip: 0 4px 12px rgba(0, 0, 0, .24);--shadow-modal: 0 20px 60px rgba(0, 0, 0, .26)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-moz-tab-size:2;tab-size:2}body{line-height:var(--line-height-normal);-webkit-font-smoothing:antialiased}img,video,svg{display:block;max-width:100%}button,input,select,textarea{font:inherit}button{cursor:pointer;border:none;background:none}a{color:inherit;text-decoration:none}ul,ol{list-style:none}.type-filter{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm)}.activity-list{display:flex;flex-direction:column;gap:var(--space-3)}.activity-card{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4);transition:background var(--transition-fast)}.activity-card:hover{background:var(--color-bg-overlay)}.activity-card-header{display:flex;justify-content:space-between}.activity-type{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.04em}.activity-name{font-weight:var(--font-weight-medium)}.activity-stats{display:flex;gap:var(--space-2)}.back-btn{margin-bottom:var(--space-2)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:1px;background:var(--color-border);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.stat-item{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-4);background:var(--color-bg-surface)}.stat-value{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold)}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:var(--color-border);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.cal-weekday{padding:var(--space-2);text-align:center;background:var(--color-bg-overlay)}.cal-cell{min-height:80px;padding:var(--space-2);background:var(--color-bg-surface);display:flex;flex-direction:column;gap:var(--space-1)}.cal-cell--empty{background:transparent}.cal-day-num{font-size:var(--font-size-xs);color:var(--color-text-muted)}.cal-entry{font-size:10px;padding:2px 4px;border-radius:var(--radius-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:768px){.cal-cell{min-height:50px}}.workout-list{display:flex;flex-direction:column;gap:var(--space-3)}.workout-card{padding:var(--space-4)}.workout-name{font-weight:var(--font-weight-medium)}.race-list{display:flex;flex-direction:column;gap:var(--space-3)}.race-card{padding:var(--space-4)}.race-name{font-weight:var(--font-weight-medium)}.add-race-form{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);margin-bottom:var(--space-6)}.settings-form{display:flex;flex-direction:column;gap:var(--space-6)}.settings-section{padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-4)}.settings-section-title{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);margin-bottom:var(--space-2)}.form-row{display:flex;flex-direction:column;gap:var(--space-2)}.form-row--checkbox{flex-direction:row;align-items:center;justify-content:space-between}.form-label{font-size:var(--font-size-sm);color:var(--color-text-muted)}.form-input{background:var(--color-bg-overlay);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm);transition:border-color var(--transition-fast)}.form-input:focus{outline:none;border-color:var(--color-accent)}.config-table{width:100%;border-collapse:collapse}.config-table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border)}.audit-table{width:100%;border-collapse:collapse;min-width:600px}.audit-table th,.audit-table td{padding:var(--space-2) var(--space-3);text-align:left;border-bottom:1px solid var(--color-border)}.athlete-list-admin{display:flex;flex-direction:column;gap:var(--space-2)}html,body,#root{height:100%}html{background-color:var(--color-bg)}body{font-family:var(--font-family);font-size:var(--font-size-base);font-weight:var(--font-weight-normal);color:var(--color-text);background-color:var(--color-bg);touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}html{overscroll-behavior:none}input,textarea,select,[contenteditable]{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}select{-moz-appearance:none;appearance:none;-webkit-appearance:none;background-color:var(--color-bg-surface);color:var(--color-text);border:.5px solid var(--color-border);border-radius:10px;padding:9px 34px 9px 12px;font-family:var(--font-family);font-size:14px;line-height:1.2;cursor:pointer;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='%23bebdc9' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><path d='M6 9l6 6 6-6'/></svg>");background-repeat:no-repeat;background-position:right 12px center;background-size:13px}select:focus-visible{outline:none;border-color:var(--color-border-strong)}select option,select optgroup{background-color:var(--color-bg-raised);color:var(--color-text)}[data-theme=light] select{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='%232a2a2a' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><path d='M6 9l6 6 6-6'/></svg>")}.ai-msg,.wt-desc,.selectable,.selectable *{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}img,svg{-webkit-user-drag:none;user-drag:none}svg text{font-family:var(--font-family);font-variant-numeric:tabular-nums}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-full)}@media(pointer:coarse){::-webkit-scrollbar{display:none;width:0;height:0}*{scrollbar-width:none}}.surface{background:var(--color-bg-surface);border:.5px solid var(--color-border);border-radius:var(--radius-lg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:var(--shadow-glass);position:relative;overflow:hidden}.surface:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--color-surface-highlight),transparent);pointer-events:none}.text-muted{color:var(--color-text-muted)}.text-sm{font-size:var(--font-size-sm)}.text-xs{font-size:var(--font-size-xs)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:var(--space-2)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.sport-bike{color:var(--color-sport-bike)}.sport-run{color:var(--color-sport-run)}.sport-swim{color:var(--color-sport-swim)}.sport-gym{color:var(--color-sport-gym)}.page{flex:1;overflow-y:auto;padding:var(--space-6);max-width:var(--content-max-width);margin:0 auto;width:100%}.page-header{margin-bottom:var(--space-6)}.page-title{font-size:34px;font-weight:700;letter-spacing:-.5px;line-height:var(--line-height-tight);margin-bottom:20px}.btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);transition:opacity var(--transition-fast),background var(--transition-fast)}.btn-primary{background:var(--color-accent);color:#fff}.btn-primary:hover{background:var(--color-accent-hover)}.btn-ghost{background:var(--color-bg-surface);color:var(--color-text);border:1px solid var(--color-border)}.btn-ghost:hover{background:var(--color-bg-overlay)}.btn-accent{background:var(--color-accent);color:#fff}.btn-accent:hover{opacity:.88}@keyframes spin{to{transform:rotate(360deg)}}.spinner{width:24px;height:24px;border:2px solid var(--color-border);border-top-color:var(--color-sport-swim);border-radius:50%;animation:spin .7s linear infinite}.loading-center{display:flex;align-items:center;justify-content:center;flex:1;min-height:200px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-4);min-height:200px;color:var(--color-text-muted);text-align:center}.empty-state-icon{font-size:48px;opacity:.4}.badge{display:inline-flex;align-items:center;padding:2px var(--space-2);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);background:var(--color-bg-overlay)}.filter-chip{padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);background:var(--color-bg-surface);border:1px solid var(--color-border);color:var(--color-text-muted);cursor:pointer;transition:all var(--transition-fast)}.filter-chip:hover{color:var(--color-text);background:var(--color-bg-overlay)}.filter-chip--active,.filter-chip.active{background:var(--color-accent-soft);color:var(--color-text);border-color:var(--color-accent-line)}.picker-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-overlay-dim);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:200;padding:16px}.picker-modal{width:100%;max-width:420px;max-height:75vh;background:var(--color-modal-bg);backdrop-filter:blur(28px) saturate(180%);-webkit-backdrop-filter:blur(28px) saturate(180%);border:.5px solid var(--color-border-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-modal),inset 0 1px 0 var(--color-surface-shimmer);display:flex;flex-direction:column;overflow:hidden}.picker-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 12px;border-bottom:.5px solid var(--color-border)}.picker-title{font-size:16px;font-weight:600}.picker-close{background:none;border:none;color:var(--color-text-muted);font-size:20px;cursor:pointer;line-height:1;padding:0 4px;font-family:var(--font-family)}.picker-close:hover{color:var(--color-text)}.btn-icon{background:none;border:none;color:var(--color-text-muted);cursor:pointer;font-size:18px;padding:2px 4px;line-height:1;transition:color var(--transition-fast)}.btn-icon:hover{color:var(--color-text)}.form-input{background:var(--color-bg-overlay);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm);font-family:var(--font-family);width:100%}.form-input:focus{outline:none;border-color:var(--color-accent-hover)}@supports (padding: env(safe-area-inset-bottom)){.safe-bottom{padding-bottom:env(safe-area-inset-bottom)}}.toggle{display:inline-flex;align-items:center;gap:10px;font-size:var(--font-size-sm);color:var(--color-text);cursor:pointer;-webkit-user-select:none;user-select:none}.toggle input{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.toggle .toggle-pill{position:relative;display:inline-block;width:36px;height:20px;background:var(--color-bg-overlay);border:1px solid var(--color-border);border-radius:12px;transition:background .16s ease,border-color .16s ease;flex-shrink:0}.toggle .toggle-pill:after{content:"";position:absolute;top:1px;left:1px;width:16px;height:16px;background:var(--color-text);border-radius:50%;transition:left .16s ease,background .16s ease;box-shadow:0 1px 3px var(--color-knob-shadow)}.toggle input:checked+.toggle-pill{background:var(--color-accent);border-color:var(--color-accent)}.toggle input:checked+.toggle-pill:after{left:17px;background:#fff}.toggle input:disabled+.toggle-pill{opacity:.5;cursor:not-allowed}.toggle input:focus-visible+.toggle-pill{outline:2px solid var(--color-accent);outline-offset:2px}.toggle .toggle-label{line-height:1.3;color:var(--color-text-2)}
