:root{--bg-page:#0d0820;--bg-panel:#1a1a2e;--bg-panel-soft:rgba(13,8,32,.75);--bg-glass:rgba(13,8,32,.6);--bg-chip:hsla(0,0%,100%,.05);--bg-chip-hover:hsla(0,0%,100%,.11);--border:hsla(0,0%,100%,.14);--border-soft:hsla(0,0%,100%,.08);--border-accent:rgba(107,84,245,.35);--accent:#6b54f5;--accent-soft:rgba(107,84,245,.15);--accent-hover:#7e68ff;--purple-300:#bfa3ff;--purple-200:#ddd0ff;--text:#fff;--text-dim:hsla(0,0%,100%,.78);--text-faint:hsla(0,0%,100%,.55);--good:#5cffa8;--bad:#ff5670;--radius-xs:6px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:26px;--shadow-md:0 4px 12px rgba(0,0,0,.5);--shadow-lg:0 8px 40px rgba(0,0,0,.55);--glow:0 0 40px rgba(107,84,245,.45);--glow-sm:0 0 16px rgba(107,84,245,.3);--blur-panel:blur(14px) saturate(180%);--blur-modal:blur(20px) saturate(180%);--blur-chrome:blur(9px) saturate(170%);--t-fast:0.18s ease;--t-med:0.3s ease;--ease-spring:cubic-bezier(0.16,1,0.3,1);--t-modal:0.26s cubic-bezier(0.16,1,0.3,1);--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--topbar-h:calc(56px + var(--safe-top));--font-display:"Druk Wide","Arial Black",Impact,sans-serif;--font-body:"Mustica Pro",system-ui,-apple-system,sans-serif;interpolate-size:allow-keywords}@font-face{font-display:swap;font-family:Druk Wide;font-style:normal;font-weight:700;src:url(assets/fonts/DrukWideBold.woff2) format("woff2")}@font-face{font-display:swap;font-family:Mustica Pro;font-style:normal;font-weight:400 700;src:url(assets/fonts/MusticaPro-SemiBold.woff2) format("woff2")}*,:after,:before{box-sizing:border-box}body,html{height:100%;margin:0;overflow:hidden}body{background:var(--bg-page);color:var(--text);font-family:var(--font-body);font-size:14px;touch-action:pan-x pan-y;user-select:none;-webkit-user-select:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}button{font-family:inherit}#current-layer-name,#other-settings-header,#style-header,.about-section-header,.custom-colormap-item,.faq-item h3,.gate-filter-title,.group-heading,.keyboard-section-title,.layer-item,.mapping-settings-header,.menu-item-text,.preset-item,.product-heading,.settings-label,.side-menu-item,.tilt-label,.toggle-text,.unit-system-title,.upload-section-heading{font-weight:600;letter-spacing:.01em}.visually-hidden{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border:0;white-space:nowrap}#map-shell{background:hsla(0,0%,100%,.16);bottom:0;display:grid;gap:1px;grid-template-columns:1fr;grid-template-rows:1fr;left:0;position:absolute;right:0;top:var(--topbar-h);width:100%}.radar-panel{background:#060411;min-height:0;min-width:0;overflow:hidden;position:relative}.radar-map-surface{height:100%;inset:0;position:absolute;width:100%}.radar-panel-secondary{display:none}#map-shell[data-panel-layout=dual]{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:1fr}#map-shell[data-panel-layout=dual][data-panel-orientation=horizontal]{grid-template-columns:1fr;grid-template-rows:repeat(2,minmax(0,1fr))}#map-shell[data-panel-layout=dual] .radar-panel[data-panel-index="2"]{display:block}.radar-panel:after{border:3px solid transparent;box-shadow:none;content:"";inset:0;pointer-events:none;position:absolute;transition:border-color var(--t-fast),box-shadow var(--t-fast);z-index:6}#map-shell[data-panel-layout=dual] .radar-panel.is-active:after{border-color:var(--accent);box-shadow:inset 0 0 0 1px hsla(0,0%,100%,.35),inset 0 0 34px rgba(107,84,245,.35)}#map-shell[data-panel-layout=dual] .radar-panel{cursor:pointer}#map-shell[data-panel-layout=dual] .radar-panel .mapboxgl-ctrl-bottom-left{transform:translate(10px,-6px)}#map-shell[data-panel-layout=dual] .radar-panel[data-panel-index="2"] .mapboxgl-ctrl-bottom-left{transform:translate(10px,-70px)}#map-shell[data-panel-layout=dual]:not([data-panel-orientation=horizontal]) .radar-panel[data-panel-index="2"] .mapboxgl-ctrl-bottom-left{transform:translate(10px,-6px)}.radar-panel-inspector{inset:0;opacity:0;pointer-events:none;position:absolute;transition:opacity var(--t-med);visibility:hidden;z-index:4}.radar-panel-inspector.active{opacity:1;visibility:visible}.radar-panel-inspector-crosshair{background-color:rgba(0,0,0,.2);border:2px solid hsla(0,0%,100%,.9);border-radius:50%;box-shadow:0 0 4px rgba(0,0,0,.5);height:16px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:16px}.radar-panel-inspector-crosshair:after,.radar-panel-inspector-crosshair:before{background-color:hsla(0,0%,100%,.9);box-shadow:0 0 2px rgba(0,0,0,.5);content:"";position:absolute}.radar-panel-inspector-crosshair:before{height:2px;left:-8px;top:50%;transform:translateY(-50%);width:28px}.radar-panel-inspector-crosshair:after{height:28px;left:50%;top:-8px;transform:translateX(-50%);width:2px}.radar-panel-inspector-info{backdrop-filter:var(--blur-panel);-webkit-backdrop-filter:var(--blur-panel);background:var(--bg-glass);border:1px solid var(--border-soft);border-radius:999px;box-shadow:var(--shadow-md);color:#fff;font-size:12px;font-weight:700;left:50%;line-height:1.3;max-width:min(180px,calc(100% - 28px));padding:5px 12px;position:absolute;text-align:center;top:calc(50% + 24px);transform:translateX(-50%);white-space:nowrap}.radar-panel-inspector-beam,.radar-panel-inspector-value{display:block;overflow:hidden;text-overflow:ellipsis}.radar-panel-inspector-beam{color:var(--text-faint);font-size:10px;font-weight:600}.mapboxgl-ctrl-attrib{background-color:rgba(0,0,0,.001);border-radius:var(--radius-md)!important;color:#fff;font-size:11px}.mapboxgl-ctrl-bottom-left{transform:translate(10px,-70px)}.mapboxgl-ctrl-attrib a{color:#fff}.mapboxgl-popup-content{background:var(--bg-panel);border-radius:var(--radius-xs);box-shadow:0 2px 10px rgba(0,0,0,.5);box-shadow:0 4px 10px rgba(0,0,0,.4);font-family:var(--font-body);-ms-overflow-style:none}.mapboxgl-popup,.mapboxgl-popup-content{max-width:500px!important}.mapboxgl-popup-close-button{display:none!important}#top-control-bar{align-items:center;backdrop-filter:var(--blur-panel);-webkit-backdrop-filter:var(--blur-panel);background:var(--bg-glass);border:none;border-bottom:1px solid var(--border-soft);border-radius:0 0 var(--radius-md) var(--radius-md);box-shadow:0 6px 30px rgba(0,0,0,.45);display:flex;gap:12px;height:var(--topbar-h);left:0;margin:0;padding:var(--safe-top) 16px 0;position:absolute;top:0;transition:border-radius var(--t-med);width:100%;z-index:1000}#top-control-bar.with-colorbar{border-bottom:none;border-radius:0}#menu-toggle{align-items:center;background:transparent;border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;display:flex;font:inherit;gap:6px;margin-left:1px;padding:4px 6px;transition:background-color var(--t-fast)}#menu-toggle:hover{background:hsla(0,0%,100%,.06)}#menu-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.menu-logo{display:block;height:26px;object-fit:contain;width:auto}#select-station-text{color:#fff;font-size:18px;font-weight:700;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:opacity var(--t-med)}#top-info{align-items:center;display:flex;flex-direction:column;justify-content:center;margin:0 auto;opacity:0;transition:opacity var(--t-med),transform var(--t-med)}#top-info.has-station{opacity:1}#top-info.no-station{opacity:0;pointer-events:none}#station-info-line1{align-items:center;display:flex}.status-indicator{background-color:transparent;border-radius:50%;height:.7em;margin-right:8px;transition:opacity var(--t-med),background-color var(--t-med);width:.7em}.status-indicator.operational{animation:blink 1.5s infinite;background-color:lime}.status-indicator.out-of-service{animation:blink 1.5s infinite;background-color:var(--bad)}@keyframes blink{0%,to{opacity:1}50%{opacity:.5}}#top-station-id{font-size:20px;font-weight:800;letter-spacing:.01em}#top-vcp{color:#fff;font-size:14px;line-height:1.2;text-align:center}#station-info-line2{margin-top:0;opacity:0;transition:opacity .3s ease-in-out}#station-info-line2.show{opacity:1}#top-info.no-station #station-info-line2{display:none}#colorbar{background-color:#0a0713;border-bottom:1px solid var(--border);border-radius:0 0 var(--radius-md) var(--radius-md);height:14px;left:0;opacity:0;pointer-events:none;position:absolute;top:var(--topbar-h);transform:translateY(-100%);transition:opacity var(--t-med),transform var(--t-med);width:100%;z-index:999}#colorbar.show{opacity:1;pointer-events:auto;transform:translateY(0)}#colorbar-tooltip{background:var(--bg-panel-soft);border:1px solid var(--border);border-radius:var(--radius-sm);color:#fff;font-size:12px;font-weight:700;left:50%;opacity:0;padding:4px 8px;pointer-events:none;position:absolute;top:18px;transform:translateX(-50%) translateY(-5px);transition:opacity var(--t-fast),transform var(--t-fast);white-space:nowrap;z-index:1001}#colorbar-tooltip.show{opacity:1;transform:translateX(-50%) translateY(0)}#colorbar.discrete{background:none!important}.cb-strip{display:flex;height:100%;width:100%}.cb-segment{flex:1}.radar-panel-colorbar{background-color:#0a0713;border-bottom:1px solid var(--border);display:none;height:14px;left:0;pointer-events:auto;position:absolute;right:0;top:0;z-index:1000}.radar-panel-colorbar .cb-tooltip{background:var(--bg-panel-soft);border:1px solid var(--border);border-radius:var(--radius-sm);color:#fff;font-size:12px;font-weight:700;left:50%;opacity:0;padding:4px 8px;pointer-events:none;position:absolute;top:18px;transform:translateX(-50%) translateY(-5px);transition:opacity var(--t-fast),transform var(--t-fast);white-space:nowrap;z-index:1001}.radar-panel-colorbar .cb-tooltip.show{opacity:1;transform:translateX(-50%) translateY(0)}.radar-panel-colorbar.discrete{background:none}#map-shell[data-panel-layout=dual] .radar-panel[data-panel-index="1"] .radar-panel-colorbar,#map-shell[data-panel-layout=dual] .radar-panel[data-panel-index="2"] .radar-panel-colorbar{display:block}#map-shell[data-panel-layout=dual]~#colorbar{display:none}#control-bar{backdrop-filter:var(--blur-panel);-webkit-backdrop-filter:var(--blur-panel);background:var(--bg-glass);border:1px solid var(--border-soft);border-radius:999px;bottom:calc(14px + var(--safe-bottom));box-shadow:0 8px 30px rgba(0,0,0,.45);height:58px;left:14px;max-width:calc(100vw - 89px);padding:0 16px 0 18px;position:absolute;transition:opacity var(--t-med),transform var(--t-med);width:auto;z-index:1000}#control-bar,#control-bar ul{align-items:center;display:flex;margin:0}#control-bar ul{gap:10px;list-style:none;max-width:100%;min-width:0;padding:0}.sli{display:inline-flex}.current-layer-item{align-items:flex-start;align-self:stretch;cursor:pointer;flex:0 1 auto;flex-direction:column;justify-content:center;margin-right:4px;max-width:min(58vw,420px);min-width:0;padding-right:10px}#control-bar .sli:not(.current-layer-item){flex:0 0 auto}@media (min-width:721px){#map-shell[data-panel-layout=dual]:not([data-panel-orientation=horizontal])~#control-bar{max-width:calc(50vw - 28px)}#map-shell[data-panel-layout=dual]:not([data-panel-orientation=horizontal])~#control-bar .current-layer-item{max-width:min(34vw,300px)}}#current-layer-name{color:#fff;cursor:pointer;font-size:13px;font-weight:700;margin:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;transition:color var(--t-fast),opacity var(--t-fast),transform var(--t-fast);white-space:nowrap}@keyframes layer-content-in{0%{opacity:0;transform:translateX(14px)}to{opacity:1;transform:translateX(0)}}.current-layer-item.layer-content-in{animation:layer-content-in .26s cubic-bezier(.22,1,.36,1) both}@media (prefers-reduced-motion:reduce){.current-layer-item.layer-content-in{animation:none}}#current-layer-name:focus-visible{border-radius:2px;outline:2px solid var(--accent);outline-offset:4px}#current-layer-subtext{color:var(--text-dim);cursor:pointer;font-size:12px;font-variant-numeric:tabular-nums;margin:3px 0 0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#current-layer-age{color:var(--text-dim);font-weight:700}.layer-age-tag{color:#ff5a5a;font-weight:700}.control-button{align-items:center;background:var(--bg-chip);border:1px solid var(--border-soft);border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:16px;height:38px;justify-content:center;padding:0;touch-action:manipulation;transition:background-color var(--t-fast),color var(--t-fast),transform var(--t-fast);width:38px;-webkit-tap-highlight-color:transparent}.control-button i{font-size:16px}.control-play{background:var(--accent);border-color:transparent;box-shadow:var(--glow-sm)}.control-play i{margin-left:1px}@media (hover:hover){.control-button:hover:not(:disabled){background:var(--bg-chip-hover);transform:translateY(-1px)}}.control-button:active:not(:disabled){transform:translateY(0)}.control-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.control-button:disabled{background:var(--border);color:#fff;cursor:not-allowed;opacity:.7}.control-button.active{background:var(--accent);color:#fff}@media (hover:hover){.control-button.active:hover:not(:disabled){background:var(--accent-hover)}}.user-location-dot{height:18px;position:relative;width:18px}.user-location-core{background:#347cef;border:2.5px solid #fff;border-radius:50%;box-shadow:0 0 8px rgba(52,124,239,.9),0 1px 3px rgba(0,0,0,.5)}.user-location-core,.user-location-pulse{height:16px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:16px}.user-location-pulse{animation:user-loc-pulse 2s ease-out infinite;background:rgba(52,124,239,.45);border-radius:50%}@keyframes user-loc-pulse{0%{opacity:.7;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(3.2)}}@media (prefers-reduced-motion:reduce){.user-location-pulse{animation:none;opacity:0}}#inspector-overlay{bottom:60px;left:0;opacity:0;pointer-events:none;position:absolute;right:0;top:var(--topbar-h);transition:opacity var(--t-med);visibility:hidden;z-index:500}#inspector-overlay.active{opacity:1;visibility:visible}#map-shell[data-panel-layout=dual]~#inspector-info.active,#map-shell[data-panel-layout=dual]~#inspector-overlay.active{opacity:0;visibility:hidden}.inspector-crosshair{background-color:rgba(0,0,0,.2);border:2px solid hsla(0,0%,100%,.9);border-radius:50%;box-shadow:0 0 4px rgba(0,0,0,.5);height:16px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:16px}.inspector-crosshair:after,.inspector-crosshair:before{background-color:hsla(0,0%,100%,.9);box-shadow:0 0 2px rgba(0,0,0,.5);content:"";position:absolute}.inspector-crosshair:before{height:2px;left:-8px;top:50%;transform:translateY(-50%);width:28px}.inspector-crosshair:after{height:28px;left:50%;top:-8px;transform:translateX(-50%);width:2px}#inspector-info{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:var(--bg-panel-soft);border:1px solid var(--border-soft);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);color:#fff;font-size:13px;font-weight:500;left:50%;line-height:1.4;opacity:0;padding:6px 14px;pointer-events:none;position:absolute;text-align:center;top:calc(50% + 24px);transform:translateX(-50%);transition:opacity var(--t-med);visibility:hidden;z-index:501}#inspector-info.active{opacity:1;visibility:visible}#inspector-value{display:block}#inspector-beam-height{color:var(--text-faint);display:block;font-size:11px}#inspector-outlook{color:var(--purple-200);display:block;font-size:11px;font-weight:700;letter-spacing:.03em}#inspector-outlook:empty{display:none}#bottom-layer-popup{backdrop-filter:var(--blur-modal);-webkit-backdrop-filter:var(--blur-modal);background:var(--bg-glass);border:1px solid var(--border-soft);border-radius:var(--radius-xl);bottom:calc(75px + var(--safe-bottom));box-shadow:var(--shadow-lg);height:auto;left:14px;max-height:calc(100vh - 155px - var(--safe-bottom) - var(--safe-top));max-width:calc(100vw - 76px);opacity:0;overflow:hidden;pointer-events:none;position:fixed;top:auto;transform:translateY(28px) scale(.97);transition:opacity .34s var(--ease-spring),transform .34s var(--ease-spring);visibility:visible;width:320px;will-change:opacity,transform;z-index:9999}#bottom-layer-popup.is-hidden{visibility:hidden}#bottom-layer-popup>section{box-sizing:border-box;overflow-y:auto;overscroll-behavior:contain;padding:14px;scrollbar-color:var(--border-soft) transparent;scrollbar-gutter:stable both-edges;scrollbar-width:thin}#bottom-layer-popup>section::-webkit-scrollbar{width:6px}#bottom-layer-popup>section::-webkit-scrollbar-thumb{background:var(--border-soft);border-radius:3px}#bottom-layer-popup.show{opacity:1;pointer-events:auto;transform:translateY(0) scale(1);transition:opacity .34s var(--ease-spring),transform .34s var(--ease-spring);visibility:visible}#bottom-layer-popup.is-closing{opacity:0;transform:translateY(30px) scale(.97)}#bottom-layer-popup::-webkit-scrollbar{width:6px}#bottom-layer-popup::-webkit-scrollbar-thumb{background:var(--border-soft);border-radius:3px}#bottom-layer-list{display:flex;flex-direction:column;gap:4px;margin-bottom:14px}@keyframes xw-panel-child-in{0%{opacity:0;transform:translateY(18px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes xw-panel-child-out{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(18px) scale(.97)}}#bottom-layer-popup.is-opening #bottom-layer-list>*,#bottom-layer-popup.is-opening #colormap-view.show>*,#bottom-layer-popup.is-opening #layer-view>.panel-header,#bottom-layer-popup.is-opening #layer-view>.tilt-section,#bottom-layer-popup.is-opening #radar-settings-view.show>*,#bottom-layer-popup.is-opening .global-controls-container{animation:xw-panel-child-in .34s var(--ease-spring) both}#bottom-layer-popup #colormap-view.view-enter>*,#bottom-layer-popup #layer-view.view-enter #bottom-layer-list>*,#bottom-layer-popup #layer-view.view-enter>.panel-header,#bottom-layer-popup #layer-view.view-enter>.tilt-section,#bottom-layer-popup #radar-settings-view.view-enter>*{animation:xw-panel-child-in .36s var(--ease-spring) both}#bottom-layer-popup.is-closing #bottom-layer-list>*,#bottom-layer-popup.is-closing #colormap-view>*,#bottom-layer-popup.is-closing #radar-settings-view>*,#bottom-layer-popup.is-closing .global-controls-container{animation:xw-panel-child-out .22s ease both}#bottom-layer-popup #colormap-view.view-enter>:nth-child(2),#bottom-layer-popup #layer-view.view-enter #bottom-layer-list>:nth-child(2),#bottom-layer-popup #layer-view.view-enter>.tilt-section,#bottom-layer-popup #radar-settings-view.view-enter>:nth-child(2),#bottom-layer-popup.is-opening #bottom-layer-list>:nth-child(2),#bottom-layer-popup.is-opening #colormap-view.show>:nth-child(2),#bottom-layer-popup.is-opening #layer-view>.tilt-section,#bottom-layer-popup.is-opening #radar-settings-view.show>:nth-child(2){animation-delay:18ms}#bottom-layer-popup #colormap-view.view-enter>:nth-child(3),#bottom-layer-popup #layer-view.view-enter #bottom-layer-list>:nth-child(3),#bottom-layer-popup #radar-settings-view.view-enter>:nth-child(3),#bottom-layer-popup.is-opening #bottom-layer-list>:nth-child(3),#bottom-layer-popup.is-opening #colormap-view.show>:nth-child(3),#bottom-layer-popup.is-opening #radar-settings-view.show>:nth-child(3){animation-delay:36ms}#bottom-layer-popup #colormap-view.view-enter>:nth-child(4),#bottom-layer-popup #layer-view.view-enter #bottom-layer-list>:nth-child(4),#bottom-layer-popup #radar-settings-view.view-enter>:nth-child(4),#bottom-layer-popup.is-opening #bottom-layer-list>:nth-child(4),#bottom-layer-popup.is-opening #colormap-view.show>:nth-child(4),#bottom-layer-popup.is-opening #radar-settings-view.show>:nth-child(4){animation-delay:54ms}@media (max-width:720px){#bottom-layer-popup #colormap-view.view-enter>*,#bottom-layer-popup #layer-view.view-enter #bottom-layer-list>*,#bottom-layer-popup #layer-view.view-enter>.panel-header,#bottom-layer-popup #layer-view.view-enter>.tilt-section,#bottom-layer-popup #radar-settings-view.view-enter>*,#bottom-layer-popup.is-closing #bottom-layer-list>*,#bottom-layer-popup.is-closing #colormap-view>*,#bottom-layer-popup.is-closing #radar-settings-view>*,#bottom-layer-popup.is-closing .global-controls-container,#bottom-layer-popup.is-opening #bottom-layer-list>*,#bottom-layer-popup.is-opening #colormap-view.show>*,#bottom-layer-popup.is-opening #layer-view>.panel-header,#bottom-layer-popup.is-opening #layer-view>.tilt-section,#bottom-layer-popup.is-opening #radar-settings-view.show>*,#bottom-layer-popup.is-opening .global-controls-container,#colormap-view.show .custom-colormap-item,#colormap-view.show .preset-item,.global-tilt-dropdown.show .global-tilt-option,.layer-item .check,.unit-system-dropdown.show .unit-system-option{animation:none!important}}.group-heading{color:#fff;margin:8px 0 4px}.group-heading,.layer-item{font-size:13px;font-weight:700}.layer-item{align-items:center;background:var(--bg-chip);border:1px solid var(--border);border-radius:var(--radius-lg);color:var(--purple-200);cursor:pointer;display:flex;margin-bottom:5px;padding:10px 15px;transition:background-color var(--t-fast),color var(--t-fast),border-color var(--t-fast),transform var(--t-fast),box-shadow var(--t-fast);user-select:none}.layer-item i{font-size:16px;margin-right:10px}.layer-item>i:first-child{margin-left:2px}.layer-item:hover:not(.active){background:var(--bg-chip-hover);box-shadow:0 4px 10px rgba(107,84,245,.18);transform:translateY(-1px)}.layer-item.active{background:var(--accent);border-color:var(--border-accent);box-shadow:0 4px 14px rgba(107,84,245,.4);color:#fff}.layer-item.active:hover{background:var(--accent-hover)}.layer-item:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.layer-item .check{align-items:center;color:#fff;display:flex;flex:0 0 auto;justify-content:center;margin-left:auto;margin-right:0}.layer-item>i:first-child{flex:0 0 auto}.layer-item .check i{font-size:14px;margin:0}.layer-item .check{animation:xw-check-in var(--t-fast) ease both}@keyframes xw-check-in{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}#bottom-layer-list .layer-item:last-child{margin-bottom:0}.global-controls-container{display:flex;gap:14px;margin-bottom:14px}.settings-section,.tilt-section{display:flex;flex:1;flex-direction:column}.settings-label,.tilt-label{margin-bottom:6px}.color-palettes-button,.global-tilt-selector{align-items:center;background:var(--bg-chip);border:1px solid var(--border);border-radius:var(--radius-md);color:#fff;cursor:pointer;display:flex;font-size:13px;font-weight:700;gap:6px;justify-content:space-between;padding:8px 12px;position:relative;transition:background-color var(--t-fast),transform var(--t-fast)}.global-tilt-selector .chevron{color:var(--text-faint)}.color-palettes-button:hover,.global-tilt-selector:hover{background:var(--bg-chip-hover)}.color-palettes-button:focus-visible,.global-tilt-selector:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.global-tilt-selector{position:relative}.global-tilt-selector .chevron{font-size:11px;transition:transform var(--t-fast)}.global-tilt-selector.open .chevron{transform:rotate(180deg)}.global-tilt-selector.disabled{background:var(--border);color:#fff;cursor:not-allowed;opacity:.7}.global-tilt-dropdown{backdrop-filter:var(--blur-panel);-webkit-backdrop-filter:var(--blur-panel);background:rgba(13,8,32,.82);border:1px solid var(--border-soft);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);left:-2px;opacity:0;padding:6px;pointer-events:none;position:absolute;right:-2px;top:calc(100% + 6px);transform:translateY(-14px) scale(.96);transform-origin:top center;will-change:opacity,transform;z-index:70000}.global-tilt-dropdown,.global-tilt-dropdown.show{transition:opacity .28s ease,transform .28s var(--ease-spring)}.global-tilt-dropdown.show{opacity:1;pointer-events:auto;transform:translateY(0) scale(1)}.global-tilt-dropdown.is-closing{opacity:0;transform:translateY(-14px) scale(.96)}@keyframes xw-dropdown-row-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes xw-dropdown-row-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-4px)}}.global-tilt-dropdown.show .global-tilt-option,.unit-system-dropdown.show .unit-system-option{animation:xw-dropdown-row-in .3s var(--ease-spring) both}.global-tilt-dropdown.is-closing .global-tilt-option,.unit-system-dropdown.is-closing .unit-system-option{animation:xw-dropdown-row-out var(--t-fast) ease both}.global-tilt-option{background:transparent;border-radius:var(--radius-xs);color:var(--text-dim);cursor:pointer;font-size:13px;font-weight:600;margin-bottom:2px;padding:7px 10px;text-align:left;transition:background-color var(--t-fast),color var(--t-fast),transform var(--t-fast)}.global-tilt-option:last-child{margin-bottom:0}.global-tilt-option:hover{background:var(--bg-chip-hover);transform:translateY(-1px)}.global-tilt-option.active{background:var(--accent-soft);border:1px solid var(--border-accent);color:#fff}.gate-filter-container{margin-bottom:16px}.gate-filter-title{margin-top:0}#radar-settings-view .frames-section,#radar-settings-view .gate-filter-container,#radar-settings-view .settings-section,#radar-settings-view .unit-system-container{margin-bottom:12px}#radar-settings-view .group-heading{margin-bottom:6px}.gate-filter-values{color:var(--text-dim);font-size:14px;font-weight:700;margin-bottom:10px}.range-slider{height:30px;position:relative;width:100%}.range-slider:before{background:hsla(0,0%,100%,.12);border-radius:2px;content:"";height:4px;left:0;position:absolute;top:14px;width:100%}.range-slider input{-webkit-appearance:none;appearance:none;background:transparent;height:18px;left:0;margin:0;outline:none;padding:0;pointer-events:none;position:absolute;top:6px;width:100%}.range-slider input::-webkit-slider-thumb{-webkit-appearance:none;background:var(--accent);border:2px solid #fff;border-radius:50%;box-shadow:0 2px 6px rgba(0,0,0,.4);cursor:pointer;height:18px;pointer-events:all;width:18px}.range-slider input::-moz-range-thumb{-moz-appearance:none;background:var(--accent);border:2px solid #fff;border-radius:50%;box-shadow:0 2px 6px rgba(0,0,0,.4);cursor:pointer;height:18px;pointer-events:all;width:18px}.range-slider input::-moz-range-track{-moz-appearance:none;background:none;border:0}.opacity-values{color:var(--text-dim);font-size:14px;font-weight:700;margin-bottom:8px}.single-slider{height:24px;position:relative;width:100%}.single-slider input{-webkit-appearance:none;appearance:none;background:transparent;height:18px;left:0;margin:0;outline:none;padding:0;position:absolute;top:4px;width:100%}.single-slider:before{background:hsla(0,0%,100%,.12);border-radius:2px;content:"";height:4px;left:0;position:absolute;top:11px;width:100%}.single-slider input::-webkit-slider-thumb{-webkit-appearance:none;background:var(--accent);border:2px solid #fff;border-radius:50%;box-shadow:0 2px 6px rgba(0,0,0,.4);cursor:pointer;height:18px;width:18px}.single-slider input::-moz-range-thumb{-moz-appearance:none;background:var(--accent);border:2px solid #fff;border-radius:50%;box-shadow:0 2px 6px rgba(0,0,0,.4);cursor:pointer;height:18px;width:18px}.single-slider input::-moz-range-track{-moz-appearance:none;background:none;border:0}#station-info-blur{backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);background:rgba(6,4,16,.45);display:none;inset:0;opacity:0;position:fixed;transition:opacity .26s ease;z-index:2000}#station-info-popup{backdrop-filter:var(--blur-modal);-webkit-backdrop-filter:var(--blur-modal);background:var(--bg-panel-soft);border:1px solid var(--border-soft);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);color:#fff;display:none;font-family:var(--font-body);left:50%;padding:14px;position:fixed;top:50%;transform:translate(-50%,-50%);transition:opacity .26s var(--ease-spring),transform .26s var(--ease-spring);width:min(90vw,340px);z-index:2001}.sip-header{align-items:center;border-bottom:1px solid var(--border-soft);display:flex;gap:10px;margin-bottom:10px;padding-bottom:10px}.sip-titles{flex:1;min-width:0}.sip-title{font-size:15px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sip-subtitle{color:var(--text-faint);font-size:12px}.sip-close{align-items:center;background:var(--bg-chip);border:none;border-radius:50%;color:var(--text-dim);cursor:pointer;display:flex;flex:none;height:28px;justify-content:center;transition:background var(--t-fast),color var(--t-fast);width:28px}.sip-close:hover{background:var(--bg-chip-hover);color:#fff}.sip-rows{display:grid;gap:5px 12px;grid-template-columns:auto 1fr;list-style:none;margin:0;padding:0}.sip-label{align-self:baseline;color:var(--text-faint);font-size:11px;letter-spacing:.03em;text-transform:uppercase;white-space:nowrap}.sip-value{align-self:baseline;font-size:13px;text-align:right;word-break:break-word}#outlook-legend{background-color:#0a0713;border-bottom:1px solid var(--border);border-radius:0 0 var(--radius-md) var(--radius-md);left:0;opacity:0;pointer-events:none;position:absolute;top:var(--topbar-h);transform:translateY(-100%);transition:opacity var(--t-med),transform var(--t-med),top var(--t-med);width:100%;z-index:998}#outlook-legend.below-colorbar{top:70px}#outlook-legend.show{opacity:1;pointer-events:auto;transform:translateY(0)}#colorbar.legend-attached{border-bottom:none;border-radius:0}#map-shell[data-panel-layout=dual]~#outlook-legend{top:70px}.ol-row{align-items:stretch;display:flex;height:14px}.ol-row:last-of-type{border-radius:0 0 var(--radius-md) var(--radius-md);overflow:hidden}.ol-seg{cursor:default;flex:1}.ol-tooltip{background:var(--bg-panel-soft);border:1px solid var(--border);border-radius:var(--radius-sm);color:#fff;display:block;font-size:12px;font-weight:700;left:0;opacity:0;padding:4px 8px;pointer-events:none;position:absolute;top:0;transform:translate(var(--tt-x,0),var(--tt-y,0)) translateX(-50%) translateY(-3px);transition:opacity var(--t-fast),transform .15s ease-out;white-space:nowrap;z-index:1001}.ol-tooltip.show{opacity:1;transform:translate(var(--tt-x,0),var(--tt-y,0)) translateX(-50%) translateY(0)}#toast-container{bottom:86px;flex-direction:column;left:50%;pointer-events:none;position:fixed;transform:translateX(-50%);z-index:3000}#toast-container,.toast{align-items:center;display:flex}.toast{backdrop-filter:var(--blur-panel);-webkit-backdrop-filter:var(--blur-panel);background:var(--bg-glass);border:1px solid var(--border-soft);border-radius:999px;box-shadow:var(--shadow-lg);color:#fff;font-family:var(--font-body);font-size:13px;font-weight:600;gap:8px;letter-spacing:.01em;max-width:min(86vw,420px);opacity:0;padding:9px 16px;transform:translateY(14px) scale(.94);transition:opacity .26s var(--ease-spring),transform .26s var(--ease-spring)}.toast.show{opacity:1;transform:translateY(0) scale(1)}.toast__text.swap{animation:toast-text-swap .2s var(--ease-spring)}@keyframes toast-text-swap{0%{opacity:.2;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.toast__icon{align-items:center;color:var(--purple-200);display:flex;flex:none;font-size:12px;justify-content:center}.toast--off .toast__icon{color:var(--text-dim)}.toast--error .toast__icon{color:#ff5252}.toast__text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.slider-step-labels{color:var(--text-faint);display:flex;font-size:10px;justify-content:space-between;margin-top:2px;padding:0 2px;user-select:none}.unit-system-container{margin-bottom:14px}.unit-system-title{margin-top:0}.unit-system-selector{align-items:center;background:var(--bg-chip);border:1px solid var(--border);border-radius:var(--radius-md);color:#fff;cursor:pointer;display:flex;font-size:13px;font-weight:700;gap:6px;justify-content:space-between;padding:8px 12px;position:relative}.frames-section .unit-system-selector .chevron,.unit-system-selector .chevron{color:var(--text-faint)}.unit-system-selector:hover{background:var(--bg-chip-hover)}.unit-system-selector:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.unit-system-selector .chevron{font-size:11px;transition:transform var(--t-fast)}.unit-system-selector.open .chevron{transform:rotate(180deg)}.unit-system-dropdown{background:var(--bg-chip);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);left:0;opacity:0;padding:6px;pointer-events:none;position:absolute;right:0;top:calc(100% + 6px);transform:translateY(-14px) scale(.96);transform-origin:top center;will-change:opacity,transform;z-index:10}.unit-system-dropdown,.unit-system-dropdown.show{transition:opacity .28s ease,transform .28s var(--ease-spring)}.unit-system-dropdown.show{opacity:1;pointer-events:auto;transform:translateY(0) scale(1)}.unit-system-dropdown.is-closing{opacity:0;transform:translateY(-14px) scale(.96)}.unit-system-option{border-radius:var(--radius-xs);color:var(--text-dim);cursor:pointer;font-size:13px;font-weight:600;margin-bottom:2px;padding:7px 10px;transition:background-color var(--t-fast),color var(--t-fast),transform var(--t-fast)}.unit-system-option:last-child{margin-bottom:0}.unit-system-option:hover{background:var(--bg-chip-hover);transform:translateY(-1px)}.unit-system-option.active{background:var(--accent);color:#fff}.camera-popup-blur{backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);background:rgba(0,0,0,.65);display:none;inset:0;position:fixed;transition:opacity .3s ease;z-index:9998}.camera-popup-container{backdrop-filter:var(--blur-panel);-webkit-backdrop-filter:var(--blur-panel);background:var(--bg-glass);border:1px solid var(--border-soft);border-radius:var(--radius-lg,18px);box-shadow:0 20px 60px rgba(0,0,0,.55);left:50%;max-height:85vh;max-width:700px;overflow:hidden;position:fixed;top:50%;transform:translate(-50%,-50%);transition:opacity .3s ease,transform .3s ease;width:90%;z-index:9999}.camera-popup-header{align-items:center;display:flex;gap:12px;justify-content:space-between;padding:12px 12px 12px 18px}.camera-popup-title{font-size:15px;font-weight:700;letter-spacing:.01em;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.camera-popup-container #close-camera-popup{align-items:center;background:var(--bg-chip);border:1px solid var(--border-soft);border-radius:50%;color:#fff;cursor:pointer;display:flex;flex:0 0 auto;font-size:15px;height:34px;justify-content:center;padding:0;transition:background var(--t-fast),transform var(--t-fast);width:34px;-webkit-tap-highlight-color:transparent}@media (hover:hover){.camera-popup-container #close-camera-popup:hover{background:var(--bg-chip-hover);transform:rotate(90deg)}}.camera-content{position:relative;width:100%}.camera-content .video-container{aspect-ratio:16/9;background:#000;min-height:200px;position:relative;width:100%}.camera-content .video-container:has(.video-js),.camera-content .video-container:has(img.camera-still){aspect-ratio:auto}.camera-content .video-js{height:auto!important;opacity:0;width:100%!important}.camera-spinner-container{align-items:center;background:#000;display:flex;inset:0;justify-content:center;position:absolute;transition:opacity .6s ease}.camera-spinner{animation:camera-spin 1s linear infinite;height:50px;width:50px}.camera-spinner .camera-path{animation:camera-dash 1.5s ease-in-out infinite;stroke:var(--accent);stroke-dasharray:90,150;stroke-dashoffset:0;stroke-linecap:round}@keyframes camera-spin{to{transform:rotate(1turn)}}@keyframes camera-dash{0%{stroke-dasharray:1,150;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}to{stroke-dasharray:90,150;stroke-dashoffset:-124}}#layer-view{opacity:1;transform:translateX(0);transition:opacity .32s var(--ease-spring),transform .32s var(--ease-spring);will-change:opacity,transform}#layer-view.slide-out{opacity:0;transform:translateX(-28px)}#bottom-layer-popup{height:min(460px,calc(100vh - 155px - var(--safe-bottom) - var(--safe-top)))}#bottom-layer-popup>section{inset:0;position:absolute}#layer-view{padding-bottom:4px}#colormap-view,#radar-settings-view{display:none;opacity:0;transform:translateX(28px);transition:opacity .32s var(--ease-spring),transform .32s var(--ease-spring);will-change:opacity,transform}#colormap-view.show,#radar-settings-view.show{opacity:1;transform:translateX(0)}.colormap-header{margin-bottom:20px}.colormap-header,.panel-header{align-items:center;display:flex}.panel-header{gap:10px;justify-content:space-between;margin-bottom:14px}.panel-title{color:#fff;font-family:var(--font-display);font-size:15px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.panel-title--right{margin-left:auto}.panel-header-actions{align-items:center;display:flex;gap:8px}.panel-header-actions .back-button{margin-right:0}.panel-icon-btn{align-items:center;background:var(--bg-chip);border:1px solid var(--border-soft);border-radius:50%;color:var(--text-dim);cursor:pointer;display:flex;font-size:15px;height:34px;justify-content:center;transition:background var(--t-fast),color var(--t-fast);width:34px}.panel-icon-btn:hover{background:var(--bg-chip-hover);color:#fff}.frames-section{margin-bottom:16px}.back-button{align-items:center;background:var(--bg-chip);border:1px solid var(--border);border-radius:var(--radius-lg);color:var(--purple-200);cursor:pointer;display:flex;font-family:inherit;font-size:13px;font-weight:700;gap:6px;margin-right:15px;padding:8px 12px;transition:background-color var(--t-fast)}.back-button:hover{background:var(--bg-chip-hover)}.colormap-title{color:#fff;font-size:18px;font-weight:700;margin-left:auto;margin-right:4px}.product-section{margin-bottom:18px}.product-heading{border-bottom:1px solid var(--border-soft);color:var(--purple-300);font-family:var(--font-display);font-size:10px;font-weight:700;letter-spacing:.08em;margin:0 0 9px;padding-bottom:6px;text-transform:uppercase}.preset-grid{display:grid;gap:8px;grid-template-columns:1fr;margin-bottom:8px}.preset-item{background:var(--bg-chip);border:1px solid var(--border);border-radius:var(--radius-md);color:#fff;cursor:pointer;display:block;font-family:inherit;font-size:13px;font-weight:700;height:48px;margin-bottom:0;overflow:hidden;padding:0;position:relative;transform:translateY(0) scale(1);transition:transform .28s var(--ease-spring),border-color .28s,box-shadow .28s,filter .28s;will-change:transform}.preset-item:hover{border-color:var(--border-accent);box-shadow:var(--bg-chip-hover) 0 0 0 100vmax inset,0 6px 16px rgba(107,84,245,.22);filter:saturate(1.08);transform:translateY(-5px) scale(1.025)}.preset-item.active{border-color:var(--accent);box-shadow:var(--glow-sm),0 0 0 1px var(--accent) inset}.preset-item.active:hover{box-shadow:var(--glow),0 0 0 1px var(--accent) inset}.preset-item:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.preset-name{bottom:7px;color:#fff;left:12px;overflow:hidden;pointer-events:none;position:absolute;right:40px;text-overflow:ellipsis;text-shadow:0 1px 3px rgba(0,0,0,.9),0 0 2px rgba(0,0,0,.7);white-space:nowrap;z-index:2}.custom-colormap-item:after,.preset-item:after{background:linear-gradient(0deg,rgba(9,6,22,.82) 0,rgba(9,6,22,.35) 34%,rgba(9,6,22,0) 62%);content:"";inset:0;pointer-events:none;position:absolute;z-index:1}.preset-gradient{border:none;border-radius:inherit;flex-shrink:0;height:100%;inset:0;margin:0;position:absolute;transform:scale(1);transition:transform .28s var(--ease-spring),filter .28s;width:100%;will-change:transform}.preset-item:hover .preset-gradient{filter:brightness(1.08) saturate(1.12);transform:scale(1.07)}.preset-checkmark{color:var(--purple-200);filter:drop-shadow(0 1px 3px rgba(0,0,0,.9));font-size:21px;margin:0;opacity:0;position:absolute;right:10px;top:8px;transform:scale(.6);transition:opacity var(--t-med),transform .3s var(--ease-spring);z-index:3}.preset-item.active .preset-checkmark{opacity:1;transform:scale(1)}.custom-colormap-item{background:var(--bg-chip);border:1px solid var(--border);border-radius:var(--radius-md);color:#fff;cursor:pointer;display:block;font-size:13px;font-weight:700;height:48px;margin-bottom:8px;overflow:hidden;padding:0;position:relative;transform:translateY(0) scale(1);transition:transform .28s var(--ease-spring),border-color .28s,box-shadow .28s,filter .28s;will-change:transform}.custom-colormap-item:hover{border-color:var(--border-accent);box-shadow:var(--bg-chip-hover) 0 0 0 100vmax inset,0 6px 16px rgba(107,84,245,.22);filter:saturate(1.08);transform:translateY(-5px) scale(1.025)}.custom-colormap-item.active{border-color:var(--accent);box-shadow:var(--glow-sm),0 0 0 1px var(--accent) inset}.custom-colormap-item.active:hover{box-shadow:var(--glow),0 0 0 1px var(--accent) inset}.custom-colormap-name{bottom:7px;color:#fff;font-size:13px;font-weight:700;left:12px;overflow:hidden;pointer-events:none;position:absolute;right:62px;text-overflow:ellipsis;text-shadow:0 1px 3px rgba(0,0,0,.9),0 0 2px rgba(0,0,0,.7);white-space:nowrap;z-index:2}.custom-gradient{border:none;border-radius:inherit;flex-shrink:0;height:100%;inset:0;margin:0;position:absolute;transform:scale(1);transition:transform .28s var(--ease-spring),filter .28s;width:100%;will-change:transform}.custom-colormap-item:hover .custom-gradient{filter:brightness(1.08) saturate(1.12);transform:scale(1.07)}.custom-checkmark{color:var(--purple-200);filter:drop-shadow(0 1px 3px rgba(0,0,0,.9));font-size:17px;margin:0;position:absolute;right:34px;top:8px;transition:opacity var(--t-med);z-index:3}.custom-colormap-remove{align-items:center;background:rgba(9,6,22,.55);border:1px solid var(--border-soft);border-radius:50%;color:var(--text-dim);cursor:pointer;display:flex;font-size:11px;height:22px;justify-content:center;line-height:1;padding:0;position:absolute;right:6px;top:6px;transition:background-color var(--t-fast),color var(--t-fast),border-color var(--t-fast),transform var(--t-fast);width:22px;z-index:3}.custom-colormap-remove:hover{background:rgba(220,40,60,.35);border-color:rgba(255,120,120,.5);color:#fff;transform:scale(1.08)}@media (prefers-reduced-motion:no-preference){@keyframes xw-cmap-item-in{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}#colormap-view.show .custom-colormap-item,#colormap-view.show .preset-item{animation:xw-cmap-item-in .3s var(--ease-spring) both;animation-delay:calc(var(--i, 0)*22ms)}}.gradient-reflectivity-default{background:linear-gradient(90deg,#744ead,#969153,#cccfb4,#4361a2,#6fd6e8,#11d518,#1d6809,#ffe200,red,#fff,#ff75ff,#b200ff,#05ecf0,#012020)}.gradient-radarscope{background:linear-gradient(90deg,#734dac,#7a6f5c,#989771,#8b9392,#5c6d89,#395586,#4c7d9c,#3cad6e,#0b6409,#9bbf03,#fcfd00,#e6df00,#fa9400,#d47406,#f9230b,#822820,#ca99b4,#c21c72,#9a24e0,#3e0f8c,#84fdff,#44768f,#a16549,#730a01)}.gradient-radaromega{background:linear-gradient(90deg,#073b47,#3e4547,#87e57d,#30662b,#fde300,#fe1a00,#a30088,#43befe,#a6b096,#ffe7bc)}.gradient-nws-default{background:linear-gradient(90deg,#000,#5e5e5e,#717171,#01e5ef,#0316f9,#05f801,#1a640d,#fdfa17,#ff5c00,#f70000,#8f0000,#ef0df8,#fdfeff,#80f9fc,#0ff9f0)}.gradient-gr2analyst{background:linear-gradient(90deg,#a3a3fe,#407ffe,#00fe00,#fffe00,#fe0000,#fe00fe,#fefefe,gray)}.gradient-velocity-default{background:linear-gradient(90deg,#ffcce6,#fc0082,#6e0397,#1827a5,#1e6fbc,#2fdee2,#b5edef,#03ea02,#4e794c,#89757a,#6d0000,#f9334c,#fda0c9,#fde4a0,#fe8e50,#6e0e09,#000)}.gradient-velocity-balance{background:linear-gradient(90deg,#191e46,#293e97,#1059be,#65a2bc,#c1cfd4,#f1ecec,#d7a290,#b8432b,#630e23,#3f0a13)}.gradient-correlation-coefficient-default{background:linear-gradient(90deg,#000,#870087,#323232,#78777d,#95949c,#646295,#0f0bb2,#0902d9,#8987d6,#5cff59,#8bcf02,#ffc400,#ff2b00,#a10000,#faacd1,#fff)}.gradient-spectrum-width-default{background:linear-gradient(90deg,#242424,#afafaf,#472004,#b30000,#f000ac,#8800c2,#e0fcff,#b4eb00,#7dd100)}.gradient-hybrid-hydrometor-classification-default,.gradient-hydrometor-classification-default{background:linear-gradient(90deg,#9c9c9c,#767676,#ffb0b0,#0ff,#0090ff,#00fb90,#0b0,#d0d060,#d28484,red,#a01414,#ff0,#000,#e700ff,#77007d)}.gradient-specific-differential-phase-default{background:linear-gradient(90deg,#870087,#000,#767676,#4b0000,#a5082c,#eb78b9,#6b14c3,#62fffa,#0aff0a,#ff0,#ffa00e,#ffcd84,#fff)}.gradient-differential-reflectivity-default{background:linear-gradient(90deg,#870087,#000,#323232,gray,#c9c9c9,#8c78b4,#000098,#2398d3,#44ffd2,#ffff60,#ff9045,#da0000,#d2415f,#f782be,#fff)}.gradient-vertically-integrated-liquid-default{background:linear-gradient(90deg,#848484,#08b7b7,#130e92,#04cc1b,#046404,#ccc102,#b76b00,#e61f05,#850e34,#a80065,#db98c1,#fffeff,#bbbcbc)}.gradient-enhanced-echo-tops-default{background:linear-gradient(90deg,#96e1ff,#19d7ff,#0f7dd7,#0f6473,#32ffe1,#19b496,#006964,#ff0,#dcb400,#9b4100,#ff3700,#7d1900,#c832ff,#4b00c8,#320064,#19004b)}.gradient-one-hour-precip-accumulation-default,.gradient-storm-total-precip-accumulation-default{background:linear-gradient(90deg,#fff,#ae0000,red,#fa0,#ff0,#320096,#00f,#af327d,#f0f,#008f00,#0f0,#00afaf,#0ff,#767676,#affffa)}.single-upload-section{border-top:1px solid var(--border-soft);margin-bottom:5px;margin-top:14px;padding-top:10px}.upload-section-heading{color:var(--purple-300);font-family:var(--font-display);font-size:10px;font-weight:700;letter-spacing:.08em;margin-bottom:10px;text-align:center;text-transform:uppercase}.custom-upload{background:var(--bg-chip);border:1.5px dashed var(--border);border-radius:var(--radius-md);cursor:pointer;margin-bottom:10px;overflow:hidden;padding:18px 12px;position:relative;text-align:center;transition:border-color var(--t-med),background-color var(--t-med),box-shadow var(--t-med),transform .3s var(--ease-spring);will-change:transform}.custom-upload:before{background:radial-gradient(120% 90% at 50% 0,var(--accent-soft),transparent 70%);content:"";inset:0;opacity:0;pointer-events:none;position:absolute;transition:opacity var(--t-med)}.custom-upload:hover{background:var(--bg-chip-hover);border-color:var(--border-accent);box-shadow:var(--glow-sm);transform:translateY(-3px) scale(1.01)}.custom-upload.dragover:before,.custom-upload:hover:before{opacity:1}.custom-upload.dragover{background:var(--bg-chip-hover);border-color:var(--accent);border-style:solid;box-shadow:var(--glow);transform:scale(1.02)}.custom-upload:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.custom-upload input[type=file]{left:-9999px;opacity:0;position:absolute}.upload-content{align-items:center;display:flex;flex-direction:column;gap:7px;position:relative;transition:opacity var(--t-med),transform .3s var(--ease-spring);z-index:1}.custom-upload.dragover .upload-content,.custom-upload:hover .upload-content{transform:translateY(-2px)}.upload-icon{color:var(--purple-200);filter:drop-shadow(0 0 10px rgba(107,84,245,.45));font-size:22px;transition:color var(--t-med),transform .3s var(--ease-spring),filter var(--t-med)}.custom-upload.dragover .upload-icon,.custom-upload:hover .upload-icon{color:#fff;filter:drop-shadow(0 0 14px rgba(126,104,255,.62));transform:translateY(-1px) scale(1.08)}.upload-text{color:var(--purple-200);font-size:12px;font-weight:700}.upload-subtext{color:var(--text-faint);font-size:11px}.playback-button-container{align-items:center;display:flex;margin-bottom:14px}.playback-button{align-items:center;background:var(--bg-chip);border:1px solid var(--border);border-radius:var(--radius-lg);color:var(--purple-200);cursor:pointer;display:flex;font-size:13px;font-weight:700;gap:6px;justify-content:center;padding:8px 14px;transition:background-color var(--t-fast),transform var(--t-fast);width:100%}.playback-button:hover{background:var(--bg-chip-hover);transform:translateY(-1px)}#playback-bar{align-items:center;backdrop-filter:var(--blur-panel);-webkit-backdrop-filter:var(--blur-panel);background:var(--bg-glass);border:1px solid var(--border-soft);border-radius:999px;bottom:calc(14px + var(--safe-bottom));box-shadow:0 8px 30px rgba(0,0,0,.45);display:flex;height:58px;left:14px;margin:0;max-width:calc(100vw - 82px);opacity:0;padding:0 12px 0 16px;pointer-events:none;position:absolute;right:auto;transform:translateY(12px);transition:opacity .24s var(--ease-spring),transform .24s var(--ease-spring),visibility 0s linear .24s;visibility:hidden;width:auto;z-index:1002}#playback-bar.show{opacity:1;pointer-events:auto;transform:translateY(0);visibility:visible}#playback-bar.show,body.playback-exiting #playback-bar.show{transition:opacity .24s var(--ease-spring),transform .24s var(--ease-spring)}body.playback-exiting #playback-bar.show{opacity:0;pointer-events:none;transform:translateY(12px)}.pb-row{align-items:center;display:flex;gap:12px;max-width:100%;width:auto}body.playback-active #control-bar,body.playback-exiting #control-bar{opacity:0;pointer-events:none;transform:translateY(12px);transition:opacity .24s var(--ease-spring),transform .24s var(--ease-spring)}.pb-btn{align-items:center;background:var(--bg-chip);border:1px solid var(--border-soft);border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:13px;height:34px;justify-content:center;transition:background-color var(--t-fast),transform var(--t-fast),box-shadow var(--t-fast);width:34px}.pb-btn:hover{background:var(--bg-chip-hover);transform:translateY(-1px)}.pb-btn:active{transform:translateY(0)}.pb-play{background:var(--accent);border-color:transparent;box-shadow:var(--glow-sm);font-size:13px;height:36px;width:36px}.pb-play:hover{background:var(--accent-hover)}.pb-play.is-playing{box-shadow:var(--glow)}.pb-exit{height:36px;margin-left:2px;width:36px}.pb-exit:hover{background:rgba(255,90,112,.18);color:#ff8a9c}.pb-timeline{display:flex;flex:0 1 clamp(300px,48vw,640px);flex-direction:column;gap:7px;min-width:0}.pb-readout{align-items:baseline;display:flex;font-variant-numeric:tabular-nums;gap:10px}.pb-datetime{color:#fff;font-size:13px;font-weight:600}.pb-frame-counter{color:var(--text-faint);font-size:11px;min-width:7ch;text-align:right}.pb-live-tag{background:var(--accent-soft);border:1px solid var(--border-accent);border-radius:999px;color:var(--accent-hover);font-family:var(--font-display);font-size:9px;letter-spacing:.14em;margin-left:auto;padding:2px 8px;text-transform:uppercase}.pb-track-wrap{align-items:center;display:flex;height:18px;position:relative}.pb-ticks{inset:0 8px;pointer-events:none;position:absolute}.pb-tick{background:hsla(0,0%,100%,.32);border-radius:1px;height:10px;position:absolute;top:50%;transform:translate(-50%,-50%);width:2px}.pb-scrubber{-webkit-appearance:none;appearance:none;background:linear-gradient(to right,var(--accent) 0,var(--accent) var(--pb-progress,0),hsla(0,0%,100%,.14) var(--pb-progress,0),hsla(0,0%,100%,.14) 100%);border-radius:999px;cursor:pointer;height:6px;margin:0;outline:none;position:relative;width:100%}.pb-scrubber::-webkit-slider-thumb{-webkit-appearance:none;background:#fff;border:3px solid var(--accent);border-radius:50%;box-shadow:var(--glow-sm);cursor:pointer;height:16px;transition:transform var(--t-fast);width:16px}.pb-scrubber::-webkit-slider-thumb:hover{transform:scale(1.15)}.pb-scrubber::-moz-range-thumb{background:#fff;border:3px solid var(--accent);border-radius:50%;box-shadow:var(--glow-sm);cursor:pointer;height:16px;width:16px}.pb-speeds{background:hsla(0,0%,100%,.04);border:1px solid var(--border-soft);border-radius:999px;display:flex;flex-shrink:0;gap:4px;padding:3px}.pb-speed{background:transparent;border:none;border-radius:999px;color:var(--text-dim);cursor:pointer;font-size:12px;font-variant-numeric:tabular-nums;font-weight:600;padding:5px 10px;transition:background-color var(--t-fast),color var(--t-fast)}.pb-speed:hover{color:#fff}.pb-speed-active{background:var(--accent);box-shadow:var(--glow-sm);color:#fff}#playback-bar.pb-loading{width:min(420px,calc(100vw - 82px))}.pb-loading .pb-row{width:100%}.pb-loading .pb-timeline{flex:1 1 auto}.pb-loading .pb-datetime{color:var(--purple-200);transition:color .16s ease}@media (min-width:340px){.pb-loading .pb-datetime{white-space:nowrap}.pb-loading .pb-readout{flex-wrap:nowrap}}.pb-loading .pb-track-wrap{border-radius:999px;overflow:hidden;position:relative}.pb-loading .pb-scrubber{background:rgba(107,84,245,.18)}.pb-loading .pb-track-wrap:after{animation:pb-shimmer 1.15s linear infinite;background:linear-gradient(90deg,transparent,rgba(155,94,245,.9),transparent);border-radius:999px;content:"";height:6px;left:0;pointer-events:none;position:absolute;top:50%;transform:translate(-120%,-50%);width:45%;will-change:transform}.pb-loading .pb-scrubber::-webkit-slider-thumb{opacity:0}.pb-loading .pb-scrubber::-moz-range-thumb{opacity:0}.pb-loading #pb-next,.pb-loading #pb-play-pause,.pb-loading #pb-prev,.pb-loading .pb-speeds,.pb-loading .pb-ticks{opacity:.4;pointer-events:none}@keyframes pb-shimmer{0%{transform:translate(-120%,-50%)}to{transform:translate(280%,-50%)}}@media (prefers-reduced-motion:reduce){.pb-loading .pb-scrubber{animation:none}}@media (max-width:720px){.pb-speeds{display:none}#playback-bar,#playback-bar.pb-loading{left:6px;max-width:calc(100vw - 77px);padding:0 10px 0 14px;right:auto;width:min(420px,calc(100vw - 77px))}.pb-row{flex-wrap:nowrap;gap:10px;max-width:100%;width:100%}.pb-timeline{flex:1 1 auto;gap:5px;min-width:0}.pb-readout{align-items:center;gap:8px;white-space:nowrap}.pb-datetime{flex:0 1 auto;font-size:12px;min-width:0;overflow:hidden;text-overflow:ellipsis}.pb-live-tag{font-size:8px;padding:2px 7px}#top-control-bar{font-size:14px;padding:0 12px}#control-bar{left:6px;max-width:calc(100vw - 77px);padding:0 12px 0 16px}#control-bar ul{gap:7px}#control-bar .sli:last-child{margin-left:-2px}.current-layer-item{margin-right:4px;max-width:38vw}.control-button{height:34px;width:34px}.control-button i{font-size:14px}#circle-menu{bottom:calc(18px + var(--safe-bottom));height:50px;right:10px;width:50px}}@media (max-width:540px){#control-bar{padding:0 14px}#control-bar ul{flex-wrap:nowrap;gap:6px}#control-bar .sli{flex:0 0 auto}#control-bar .sli:last-child{margin-left:0}.current-layer-item{max-width:32vw}.control-button{height:32px;width:32px}.control-button i{font-size:13px}}@media (max-width:360px){#control-bar{left:5px;max-width:calc(100vw - 66px);padding:0 12px}#control-bar ul{gap:4px}.current-layer-item{margin-right:2px;max-width:30vw;padding-right:6px}.control-button{height:29px;width:29px}#current-layer-name,.control-button i{font-size:12px}#current-layer-subtext{font-size:11px}#circle-menu{height:46px;right:8px;width:46px}#bottom-layer-popup{backdrop-filter:var(--blur-modal);-webkit-backdrop-filter:var(--blur-modal);background:var(--bg-panel-soft);bottom:74px;height:min(480px,calc(100vh - 156px));left:6px;max-height:calc(100vh - 156px);max-width:none;right:66px;top:auto;transform:translateY(28px) scale(.97);width:auto}#bottom-layer-popup,#bottom-layer-popup.show{transition:opacity .34s var(--ease-spring),transform .34s var(--ease-spring)}#bottom-layer-popup.show{transform:translateY(0) scale(1)}.menu-logo{height:22px}}#side-menu-overlay{animation-duration:.3s;animation-fill-mode:forwards;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:rgba(6,4,20,.6);bottom:0;display:none;left:0;position:fixed;right:0;top:0;z-index:9998}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}@keyframes overlayFadeOut{0%{opacity:1}to{opacity:0}}#side-menu-overlay.show{animation:overlayFadeIn .3s ease forwards;display:block}#side-menu-overlay.hide{animation:overlayFadeOut .3s ease forwards;display:block}#side-menu{animation-duration:.3s;animation-fill-mode:forwards;background-color:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-xs);bottom:0;box-sizing:border-box;display:none;flex-direction:column;justify-content:space-between;left:0;overflow:hidden;position:fixed;top:0;width:330px;z-index:10000}@keyframes menuSlideIn{0%{opacity:0;transform:translateX(-48px)}to{opacity:1;transform:translateX(0)}}@keyframes menuSlideOut{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(-48px)}}#side-menu.show{animation:menuSlideIn .34s var(--ease-spring) forwards;display:flex}#side-menu.hide{animation:menuSlideOut .26s ease forwards;display:flex}@media (prefers-reduced-motion:reduce){#side-menu.hide,#side-menu.show{animation-duration:.01s}}#side-menu-header{align-items:center;display:flex;height:45px;justify-content:space-between;padding:10px}#side-menu-top-image{margin:17px 14px 3px 12px;text-align:left}#side-menu-header button{background:transparent;border:none;color:#fff;cursor:pointer;font-size:20px;height:40px;margin-right:10px;margin-top:7px;outline:none;padding:0;width:40px}#side-menu-items{flex-grow:1;list-style:none;margin:0;overflow-y:auto;padding:0;scrollbar-width:none}#side-menu-items::-webkit-scrollbar{display:none}.side-menu-item{align-items:center;background-color:var(--bg-chip);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--purple-200);cursor:pointer;display:flex;font-size:14px;font-weight:700;justify-content:space-between;margin:5px 10px;padding:8px 10px;transition:background-color .3s ease}.side-menu-item:hover{background-color:var(--bg-chip-hover)}.side-menu-item-icon{margin-right:8px;text-align:center;width:24px}.side-menu-item-text{flex:1}.side-menu-item-chevron{font-size:12px}.side-menu-divider{margin:15px auto;width:60%}.full-divider,.side-menu-divider{border:0;border-top:1px solid var(--border)}.full-divider{margin:5px 0;width:100%}#side-menu-bottom{align-items:center;display:flex;gap:8px;margin-bottom:5px;padding:8px 10px}#side-menu-bottom button{align-items:center;background-color:var(--bg-chip);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--purple-200);cursor:pointer;display:flex;font-family:var(--font-body);font-size:13px;font-weight:700;gap:4px;height:38px;justify-content:center;padding:6px 10px;transition:background-color .3s ease}#side-menu-bottom button:hover{background-color:var(--bg-chip-hover)}#legal-btn{padding:0;width:42px}#legal-btn .side-menu-item-icon{align-items:center;display:flex;justify-content:center;margin:0}#activities-section{background:linear-gradient(135deg,#6b54f5,#2a1060);border-radius:var(--radius-sm);box-shadow:0 2px 8px rgba(0,0,0,.2);color:#fff;margin:8px;max-height:128px;overflow:hidden;padding:10px;position:relative;transition:opacity .3s ease-out,padding .3s ease-out,margin .3s ease-out}.version-tag{background:hsla(0,0%,100%,.2);border-radius:var(--radius-xs);display:inline-block;font-size:11px;font-weight:700;padding:4px 8px}.activities-header{display:block;padding-right:30px;position:relative}.activities-title{font-size:16px;font-weight:700;margin-top:6px}.activities-text{font-size:13px;line-height:1.3;margin-bottom:0;margin-top:-5px}#activities-close{align-items:center;background:transparent;border:none;color:#fff;cursor:pointer;display:flex;font-size:18px;height:30px;justify-content:center;position:absolute;right:0;top:0;width:30px}@keyframes fadeUpOut{0%{max-height:150px;opacity:1;transform:translateY(0)}to{margin:0;max-height:0;opacity:0;overflow:hidden;padding:0;transform:translateY(-10px)}}#activities-section.fade-out{animation:fadeUpOut .3s ease forwards}#mapping-blur{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background-color:rgba(6,4,20,.6);display:none;height:100vh;left:0;opacity:0;position:fixed;top:0;transition:opacity .3s ease;width:100vw;z-index:10500}#mapping-popup{background-color:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-lg);box-sizing:border-box;left:50%;max-width:480px;opacity:0;padding:20px;position:fixed;top:50%;transform:translate(-50%,-50%);transition:opacity var(--t-modal),transform var(--t-modal);width:95vw;will-change:opacity,transform;z-index:10501}.mapping-close{margin-right:0;padding:8px 11px}.mapping-top-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.mapping-title{color:#fff;font-size:20px;font-weight:700}#other-settings-header,#style-header,.mapping-settings-header{color:#fff;font-size:18px;font-weight:700;margin:15px 0 10px}#style-selector{display:flex;gap:15px;margin-bottom:15px}.style-option{border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;flex:1;overflow:hidden;text-align:center;transition:border-color .3s}.style-option img{display:block;height:80px;object-fit:cover;width:100%}.style-label{background:var(--bg-chip);color:var(--purple-200);font-size:13px;font-weight:700;padding:6px}.style-option.selected{border-color:var(--purple-200);box-shadow:0 0 10px rgba(127,29,240,.3)}#projection-selector{display:flex;gap:10px;margin-bottom:10px}.projection-option{align-items:center;background:var(--bg-chip);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--purple-200);cursor:pointer;display:flex;flex:1;font-size:14px;font-weight:700;gap:8px;justify-content:center;padding:10px;transition:background-color .3s,border-color .3s}.projection-option:hover{background:var(--bg-chip-hover)}.projection-option.selected{background:var(--accent);border-color:var(--border-accent);color:#fff}.projection-option[aria-disabled=true]{cursor:not-allowed;opacity:.45}.projection-icon{font-size:16px}#projection-warning{align-items:center;background:rgba(255,193,7,.15);border:0 solid rgba(255,193,7,.4);border-radius:var(--radius-sm);color:#ffc107;display:flex;font-size:13px;font-weight:600;gap:8px;justify-content:center;margin-bottom:0;max-height:0;opacity:0;overflow:hidden;padding:0 12px;text-align:center;transition:max-height var(--t-med),opacity var(--t-med),padding var(--t-med),margin var(--t-med),border-width var(--t-med)}#projection-warning.show{border-width:1px;margin-bottom:15px;max-height:60px;opacity:1;padding:8px 12px}.toggle-option{align-items:center;display:flex;justify-content:space-between;padding:8px 0}.toggle-text{color:#fff;font-size:14px;font-weight:600}.switch{display:inline-block;height:24px;position:relative;width:44px}.switch input{height:0;opacity:0;width:0}.slider{background-color:var(--border);border-radius:24px;bottom:0;cursor:pointer;left:0;right:0;top:0}.slider,.slider:before{position:absolute;transition:.3s}.slider:before{background-color:#fff;border-radius:50%;bottom:3px;content:"";height:18px;left:3px;width:18px}input:checked+.slider{background-color:var(--accent)}input:checked+.slider:before{transform:translateX(20px)}.alert-layer-section{border-bottom:1px solid rgba(99,99,129,.4)}.alert-layer-section+.alert-layer-section{margin-top:6px}.alert-layer-section-summary{align-items:center;background:none;border:0;color:#fff;cursor:pointer;display:flex;font:inherit;font-size:16px;font-weight:700;gap:12px;justify-content:space-between;padding:10px 0;user-select:none;-webkit-user-select:none;width:100%}.alert-layer-section-summary:focus-visible{border-radius:var(--radius-sm);outline:2px solid var(--accent);outline-offset:2px}.alert-layer-section-summary i{color:var(--purple-200);font-size:12px;transition:transform var(--t-med)}.alert-layer-section:not(.is-collapsed)>.alert-layer-section-summary i{transform:rotate(90deg)}.alert-layer-section-body{max-height:var(--alert-section-height,0);opacity:1;overflow:hidden;padding-bottom:8px;transform:translateY(0);transition:max-height .34s cubic-bezier(.4,0,.2,1),opacity .24s cubic-bezier(.4,0,.2,1),transform .34s cubic-bezier(.4,0,.2,1),padding-bottom .34s cubic-bezier(.4,0,.2,1)}.alert-layer-section.is-collapsed>.alert-layer-section-body{max-height:0;opacity:0;padding-bottom:0;transform:translateY(-4px)}.alert-layer-row{align-items:center;border-bottom:1px solid rgba(99,99,129,.4);display:flex;gap:12px;justify-content:space-between;padding:8px 0}.alert-layer-row:last-child{border-bottom:0}.alert-layer-row-main{align-items:center;display:flex;gap:8px;min-width:0}.alert-layer-row-label{color:#fff;font-size:14px;font-weight:600}.alert-layer-color-input{appearance:none;-webkit-appearance:none;background:none;border:1px solid var(--border);border-radius:var(--radius-xs);cursor:pointer;flex:0 0 28px;height:28px;overflow:hidden;padding:0;width:28px}.alert-layer-color-input::-webkit-color-swatch-wrapper{padding:0}.alert-layer-color-input::-moz-color-swatch,.alert-layer-color-input::-webkit-color-swatch{border:0;border-radius:var(--radius-xs)}#flash-duration-select,#zone-cache-ttl-select{outline:none;padding:4px 8px}#flash-duration-select,#zone-cache-ttl-select,.cache-action-btn{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);cursor:pointer;font-family:inherit;font-size:13px;font-weight:600}.cache-action-btn{padding:4px 12px;transition:background-color var(--t-fast)}.cache-action-btn:hover{background:var(--accent-soft)}#keyboard-blur{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background-color:rgba(6,4,20,.6);display:none;height:100vh;left:0;opacity:0;position:fixed;top:0;transition:opacity .3s ease;width:100vw;z-index:10500}#keyboard-popup{background-color:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-lg);box-sizing:border-box;left:50%;max-height:80vh;max-width:500px;opacity:0;overflow-y:auto;padding:20px;position:fixed;scrollbar-width:none;top:50%;transform:translate(-50%,-50%) scale(.96);transition:opacity var(--t-modal),transform var(--t-modal);width:95vw;z-index:10501}#keyboard-popup.show{opacity:1;transform:translate(-50%,-50%) scale(1)}#keyboard-popup::-webkit-scrollbar{display:none}.keyboard-top-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.keyboard-title{color:#fff;font-size:20px;font-weight:700}.keyboard-section{margin-bottom:20px}.keyboard-section-title{color:#fff;font-size:16px;font-weight:700;margin-bottom:10px}.shortcut-row{border-bottom:1px solid var(--border-soft);justify-content:space-between;padding:6px 0}.shortcut-key,.shortcut-row{align-items:center;display:flex}.shortcut-key{gap:4px}kbd{background:var(--bg-chip);border:1px solid var(--border);border-radius:var(--radius-xs);color:var(--purple-200);font-family:var(--font-body);font-size:12px;font-weight:700;padding:3px 8px}.shortcut-description{color:var(--text-dim);font-size:13px}#circle-menu{align-items:center;backdrop-filter:var(--blur-panel);-webkit-backdrop-filter:var(--blur-panel);background:var(--bg-glass);border:1px solid var(--border-soft);border-radius:50%;bottom:calc(17px + var(--safe-bottom));box-shadow:0 8px 30px rgba(0,0,0,.45);color:#fff;cursor:pointer;display:flex;height:52px;justify-content:center;position:fixed;right:14px;transition:background-color .3s ease;width:52px;z-index:1001}#circle-menu,#circle-menu i{font-size:18px}.cm-burger{display:block;height:15px;position:relative;width:20px}.cm-burger span{background:#fff;border-radius:999px;height:2.5px;left:0;position:absolute;right:0;transition:transform .3s var(--ease-spring),opacity var(--t-fast),top .3s var(--ease-spring)}.cm-burger span:first-child{top:0}.cm-burger span:nth-child(2){top:6.25px}.cm-burger span:nth-child(3){top:12.5px}#circle-menu.active .cm-burger span:first-child{top:6.25px;transform:rotate(45deg)}#circle-menu.active .cm-burger span:nth-child(2){opacity:0}#circle-menu.active .cm-burger span:nth-child(3){top:6.25px;transform:rotate(-45deg)}#circle-menu-popup{backdrop-filter:var(--blur-modal);-webkit-backdrop-filter:var(--blur-modal);background:var(--bg-glass);border:1px solid var(--border-soft);border-radius:var(--radius-xl);bottom:calc(76px + var(--safe-bottom));box-shadow:var(--shadow-lg);display:none;max-height:calc(100vh - 200px);opacity:0;overflow-y:auto;padding:10px 10px 6px;position:fixed;right:14px;scrollbar-width:none;transform:translateY(28px) scale(.97);transform-origin:bottom right;transition:opacity .34s var(--ease-spring),transform .34s var(--ease-spring);width:220px;z-index:1000}#circle-menu-popup::-webkit-scrollbar{display:none}#circle-menu-popup.show{opacity:1;transform:translateY(0) scale(1)}#circle-menu-popup-header,#circle-menu-popup-tools-header{color:#fff;font-size:13px;font-weight:700;margin-bottom:8px;padding-left:5px}.menu-section-divider{border:0;border-top:1px solid var(--border);margin:5px 0}.menu-subhead{align-items:center;background:none;border:0;color:#fff;cursor:pointer;display:flex;font:inherit;font-size:13px;font-weight:700;justify-content:space-between;margin:0 0 8px;padding:2px 5px 0;width:100%}.menu-subhead #circle-menu-popup-header,.menu-subhead #circle-menu-popup-tools-header{margin:0;padding:0}.menu-subhead-chevron{color:var(--purple-200);font-size:11px;transition:transform var(--t-med)}.menu-subhead[aria-expanded=false] .menu-subhead-chevron{transform:rotate(-90deg)}.menu-submenu .menu-subhead{font-size:12px;margin-bottom:6px;padding-left:14px}.menu-submenu .menu-submenu .menu-subhead{padding-left:26px}.menu-submenu .menu-submenu .menu-item{padding-left:14px}#outlooks-submenu:not(.collapsed),#spc-submenu:not(.collapsed){max-height:var(--submenu-h,1400px)}.menu-submenu{max-height:var(--submenu-h,480px);opacity:1;overflow:hidden;transition:max-height .34s cubic-bezier(.4,0,.2,1),opacity .24s cubic-bezier(.4,0,.2,1)}.menu-submenu.collapsed{max-height:0;opacity:0}.menu-item{align-items:center;border-radius:var(--radius-lg);cursor:pointer;display:flex;margin-bottom:2px;padding:8px;transition:background-color .2s}.menu-item:hover{background:hsla(0,0%,100%,.1)}#overlays-submenu .menu-item:last-child{margin-bottom:0}.menu-item-icon{align-items:center;border-radius:var(--radius-xs);color:#fff;display:flex;font-size:16px;height:22px;justify-content:center;margin-right:10px;object-fit:contain;width:22px}.menu-item-text{color:#fff;flex:1;font-size:13px;font-weight:600}.menu-item-check{color:var(--purple-200);font-size:14px;margin-left:auto}#glossary-blur{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background-color:rgba(6,4,20,.6);display:none;height:100vh;left:0;opacity:0;position:fixed;top:0;transition:opacity .3s ease;width:100vw;z-index:10500}#weather-glossary-popup{background-color:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-xs);box-sizing:border-box;display:none;height:65vh;left:50%;max-width:600px;overflow-x:hidden;overflow-y:auto;padding:20px 10px 0;position:fixed;top:50%;transform:translate(-50%,-50%);width:95vw;z-index:10501}.glossary-top-row{align-items:center;display:flex;height:25px;justify-content:space-between;padding:0 10px}.glossary-title{color:#fff;font-size:20px;font-weight:700}.search-container{height:40px;margin:20px 10px 10px;position:relative}.search-container:before{color:var(--purple-200);content:"\f002";font-family:Font Awesome\ 6 Free;font-size:16px;font-weight:900;left:10px;position:absolute;top:50%;transform:translateY(-50%)}#glossary-search{background-color:var(--bg-chip);border:1px solid var(--border);border-radius:var(--radius-md);box-sizing:border-box;color:var(--purple-200);font-family:var(--font-body);font-size:16px;font-weight:700;height:100%;padding:10px 10px 10px 31px;width:100%}#glossary-search::placeholder{color:var(--purple-200);font-size:16px}#glossary-search:focus{outline:none}#glossary-content{height:calc(100% - 100px);overflow-y:auto;padding:0 10px;scrollbar-width:none}#glossary-content::-webkit-scrollbar{display:none}.glossary-entry{background:var(--bg-chip);border:1px solid var(--border);border-radius:var(--radius-md);display:flex;flex-direction:column;margin-bottom:10px;padding:10px}.glossary-entry p:first-of-type{color:var(--purple-200);font-size:18px;font-weight:900;margin:0 0 5px}.glossary-entry p:last-of-type{color:var(--purple-200);font-size:14px;font-weight:700;margin:0}@keyframes glossaryFadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.glossary-entry.fade-in{animation:glossaryFadeUp .4s ease forwards}#legal-blur{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background-color:rgba(6,4,20,.6);height:100vh;left:0;top:0;transition:opacity .3s ease;width:100vw;z-index:10500}#legal-blur,#legal-popup{display:none;opacity:0;position:fixed}#legal-popup{background-color:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-xs);box-sizing:border-box;left:50%;max-width:600px;overflow:hidden;padding:20px;top:50%;transform:translate(-50%,-50%);transition:opacity var(--t-modal),transform var(--t-modal);width:95vw;will-change:opacity,transform;z-index:10501}.legal-top-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.legal-title{color:#fff;font-size:20px;font-weight:700}#legal-content{color:#fff;font-size:15px;line-height:1.4;padding:0 10px 20px}#faq-blur{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background-color:rgba(6,4,20,.6);height:100vh;left:0;top:0;transition:opacity .3s ease;width:100vw;z-index:10500}#faq-blur,#faq-popup{display:none;opacity:0;position:fixed}#faq-popup{background-color:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-xs);box-sizing:border-box;left:50%;max-height:80vh;max-width:600px;overflow-y:auto;padding:20px;scrollbar-width:none;top:50%;transform:translate(-50%,-50%);transition:opacity var(--t-modal),transform var(--t-modal);width:95vw;will-change:opacity,transform;z-index:10501}#faq-popup::-webkit-scrollbar{display:none}.faq-top-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.faq-title{color:#fff;font-size:20px;font-weight:700}.faq-item{margin-bottom:15px}.faq-item h3{align-items:center;color:#fff;display:flex;font-size:15px;gap:8px;margin:0 0 5px}.faq-item h3 i{color:var(--purple-200)}.faq-item p{color:var(--text-dim);font-size:14px;line-height:1.5;margin:0}#about-blur{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background-color:rgba(6,4,20,.6);height:100vh;left:0;top:0;transition:opacity .3s ease;width:100vw;z-index:10500}#about-blur,#about-popup{display:none;opacity:0;position:fixed}#about-popup{background-color:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-xs);box-sizing:border-box;left:50%;max-height:85vh;max-width:600px;overflow-y:auto;padding:20px;scrollbar-width:none;top:50%;transform:translate(-50%,-50%);transition:opacity var(--t-modal),transform var(--t-modal);width:95vw;will-change:opacity,transform;z-index:10501}#about-popup::-webkit-scrollbar{display:none}.about-top-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.about-title{color:#fff;font-size:20px;font-weight:700}#about-content{box-sizing:border-box;color:#fff;font-family:var(--font-body);font-size:15px;line-height:1.4;margin-bottom:25px;margin-top:0;padding:0}.about-section{margin-bottom:20px}.about-section-header{color:#fff;font-family:var(--font-body);font-size:18px;font-weight:700;margin-bottom:12px;padding-left:0}.about-section-content{padding:0}.about-section-content p{color:var(--text-dim);line-height:1.5;margin-bottom:12px;margin-top:0}.feature-item{margin-bottom:15px;padding:4px 0}.feature-icon,.feature-item{align-items:center;display:flex}.feature-icon{background-color:var(--accent);border-radius:50%;color:#fff;flex-shrink:0;font-size:15px;height:35px;justify-content:center;margin-right:15px;min-width:35px}.features-grid{display:flex;gap:15px;justify-content:space-between;width:100%}.features-column{width:calc(50% - 7.5px)}.attribution-buttons{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:15px;margin-top:15px}.attribution-button{background-color:var(--bg-chip);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--purple-200);cursor:pointer;display:block;font-family:var(--font-body);font-size:15px;font-weight:700;padding:14px 20px;text-align:center;transition:none;width:calc(50% - 8px)}.attribution-button:hover{background-color:var(--bg-chip-hover);transform:none!important}.contact-info{margin-top:10px}.contact-item{margin-bottom:10px;padding:4px 0}.contact-item,.contact-item i{align-items:center;display:flex}.contact-item i{background-color:var(--accent);border-radius:50%;color:#fff;flex-shrink:0;font-size:15px;height:35px;justify-content:center;margin-right:15px;width:35px}@media (max-width:500px){.features-grid{display:block}.features-column{margin:0;width:100%}.feature-item{margin-bottom:15px!important}}#feedback-blur{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background-color:rgba(6,4,20,.6);height:100vh;left:0;opacity:0;pointer-events:none;position:fixed;top:0;transition:opacity .3s ease,visibility 0s linear .3s;visibility:hidden;width:100vw;z-index:11000}#feedback-blur.show{opacity:1;pointer-events:auto;transition:opacity .3s ease;visibility:visible}#feedback-popup{background-color:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-xs);box-sizing:border-box;left:50%;max-height:85vh;max-width:600px;opacity:0;overflow-y:auto;padding:20px 10px 10px;pointer-events:none;position:fixed;scrollbar-width:none;top:50%;transform:translate(-50%,-45%);visibility:hidden;width:95vw;z-index:11001}#feedback-popup::-webkit-scrollbar{display:none}#feedback-popup.visible{animation:FeedbackFadeUp .3s ease forwards;pointer-events:auto;visibility:visible}#feedback-popup.closing{animation:FeedbackFadeDown .3s ease forwards;pointer-events:none;visibility:visible}@keyframes FeedbackFadeUp{0%{opacity:0;transform:translate(-50%,-46%)}to{opacity:1;transform:translate(-50%,-50%)}}@keyframes FeedbackFadeDown{0%{opacity:1;transform:translate(-50%,-50%)}to{opacity:0;transform:translate(-50%,-46%)}}.feedback-top-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px;padding:0 10px}.feedback-title{color:#fff;font-size:20px;font-weight:700}.feedback-content{transition:opacity .4s ease}.feedback-content.hide{opacity:0;pointer-events:none}.feedback-form{gap:15px;padding:0 10px}.feedback-form,.form-group{display:flex;flex-direction:column}.form-group{margin-top:5px;position:relative}.feedback-form label{align-items:center;color:#fff;display:flex;font-size:14px;gap:5px;margin-bottom:5px}.feedback-form input,.feedback-form textarea{background-color:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-xs);color:#fff;font-family:var(--font-body);font-size:16px;padding:10px;transition:border-color .3s ease}.feedback-form input::placeholder,.feedback-form textarea::placeholder{color:var(--text-faint)}.feedback-form input:focus,.feedback-form textarea:focus{outline:none}.feedback-form textarea{resize:none}.submit-button{align-items:center;background-color:var(--bg-chip);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--purple-200);cursor:pointer;display:flex;font-size:16px;font-weight:700;gap:6px;justify-content:center;margin-bottom:15px;padding:8px;transition:background-color .3s ease}.submit-button:hover{background-color:var(--bg-chip-hover)}.error-message{align-items:center;color:#fff;display:flex;font-size:12px;gap:5px;margin-top:5px;max-height:0;opacity:0;overflow:hidden;transform:translateY(5px);transition:max-height .3s ease,opacity .3s ease,transform .3s ease}.error-message.show{max-height:50px;opacity:1;transform:translateY(0)}input.error,textarea.error{border-color:red!important}.feedback-success{align-items:center;display:none;flex-direction:column;justify-content:center;margin-top:85px;opacity:0;padding:5px;text-align:center}.feedback-success.show{display:flex;opacity:1}.success-icon{color:var(--purple-200);font-size:48px;margin-bottom:2px}.feedback-success h2{color:#fff;margin:0 0 5px}.feedback-success p{color:var(--text-dim);font-size:15px;margin:0}#drawing-controls{align-items:center;background:var(--bg-panel);border:1px solid var(--border);border-radius:999px;display:flex;gap:10px;left:50%;opacity:0;padding:10px 14px;pointer-events:none;position:fixed;top:81px;transform:translateX(-50%) translateY(10px);transition:opacity .3s ease-out,transform .3s ease-out,visibility 0s linear .3s;visibility:hidden;z-index:1001}#drawing-controls.active{opacity:1;pointer-events:auto;transform:translateX(-50%) translateY(0);transition:opacity .3s ease-out,transform .3s ease-out;visibility:visible}.drawing-grip{align-items:center;color:var(--purple-200);cursor:grab;display:flex;flex-shrink:0;font-size:14px;opacity:.7;padding:4px 2px 4px 4px;touch-action:none;user-select:none;-webkit-user-select:none}.drawing-grip:active{cursor:grabbing;opacity:1}#drawing-color{appearance:none;-webkit-appearance:none;background:none;border:1px solid var(--border);border-radius:50%;cursor:pointer;flex-shrink:0;height:35px;padding:0;width:35px}#drawing-color::-moz-color-swatch,#drawing-color::-webkit-color-swatch{border:none!important;border-radius:50%!important}#drawing-thickness{accent-color:var(--accent);cursor:pointer;width:88px}.drawing-sep{background:var(--border);flex-shrink:0;height:22px;width:1px}#close-drawing,#delete-drawing,#drawing-lock,#drawing-outline,#redo-drawing,#undo-drawing{align-items:center;background-color:var(--bg-chip);border:1px solid var(--border);border-radius:50%;color:var(--purple-200);cursor:pointer;display:flex;flex-shrink:0;font-size:15px;font-weight:700;height:35px;justify-content:center;padding:5px;transition:background-color .1s,border-color .1s,color .1s;width:35px}#close-drawing:hover,#delete-drawing:hover,#drawing-lock:hover,#drawing-outline:hover,#redo-drawing:hover,#undo-drawing:hover{background-color:var(--bg-chip-hover)}#drawing-lock.active,#drawing-outline.active{background-color:rgba(107,84,245,.35);border-color:var(--accent);color:#fff}.toggle-option.disabled{opacity:.45}.toggle-option.disabled .switch{pointer-events:none}#about-popup .close-button,#close-feedback-popup,#faq-popup .close-button,#keyboard-popup .close-button,#legal-popup .close-button,#mapping-popup .close-button,#weather-glossary-popup .close-button,.popup-container .close-button{align-items:center;background-color:var(--bg-chip);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--purple-200);cursor:pointer;display:flex;font-size:16px;font-weight:700;height:40px;justify-content:center;padding:0;transition:background-color .1s;width:40px}#about-popup .close-button:hover,#close-feedback-popup:hover,#faq-popup .close-button:hover,#keyboard-popup .close-button:hover,#legal-popup .close-button:hover,#mapping-popup .close-button:hover,#weather-glossary-popup .close-button:hover,.popup-container .close-button:hover{background-color:var(--bg-chip-hover)}.mapboxgl-popup-content{backdrop-filter:var(--blur-panel);-webkit-backdrop-filter:var(--blur-panel);background:rgba(13,8,32,.92)!important;border:none!important;border-radius:var(--radius-md)!important;box-shadow:var(--shadow-lg);color:#fff;font-size:14px;max-width:320px!important;padding:10px;word-wrap:break-word;overflow-wrap:break-word;scrollbar-width:none}.mapboxgl-popup-content::-webkit-scrollbar{display:none}.mapboxgl-popup-tip{background:none!important;border:10px solid transparent!important;box-shadow:none!important;display:block!important;height:0!important;transform:none!important;width:0!important}.mapboxgl-popup-anchor-bottom .mapboxgl-popup-tip{border-bottom-width:0!important;border-top-color:rgba(13,8,32,.92)!important;margin-top:-1px!important}.mapboxgl-popup-anchor-top .mapboxgl-popup-tip{border-bottom-color:rgba(13,8,32,.92)!important;border-top-width:0!important;margin-bottom:-1px!important}.mapboxgl-popup-anchor-left .mapboxgl-popup-tip{border-left-width:0!important;border-right-color:rgba(13,8,32,.92)!important;margin-left:-1px!important}.mapboxgl-popup-anchor-right .mapboxgl-popup-tip{border-left-color:rgba(13,8,32,.92)!important;border-right-width:0!important;margin-right:-1px!important}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-tip,.mapboxgl-popup-anchor-top-right .mapboxgl-popup-tip{border-bottom-color:rgba(13,8,32,.92)!important}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-tip,.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-tip{border-top-color:rgba(13,8,32,.92)!important}.mapboxgl-popup-close-button{align-items:center;background:none!important;border:none!important;color:var(--text-dim);cursor:pointer;display:flex!important;font-size:0;height:24px;justify-content:center;padding:0;position:absolute;right:10px;top:8px;transition:color var(--t-fast);width:24px;z-index:6}.mapboxgl-popup-close-button:before{content:"\f00d";font-family:Font Awesome\ 6 Free;font-size:17px;font-weight:900;line-height:1}.mapboxgl-popup-close-button:hover{background:none!important;color:#fff}.mapboxgl-popup-content{padding-right:32px!important}.mapboxgl-popup-content:has(.ovl-popup),.mapboxgl-popup-content:has(.xw-tooltip){backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:transparent!important;box-shadow:none!important;padding:0!important}.xw-tooltip{backdrop-filter:var(--blur-panel);-webkit-backdrop-filter:var(--blur-panel);background:rgba(13,8,32,.92);border:none;border-radius:var(--radius-md);box-shadow:var(--shadow-lg);box-sizing:border-box;color:#fff;font-family:var(--font-body);padding:12px;position:relative;scrollbar-width:none}.ovl-close,.xw-tt-close{align-items:center;background:var(--bg-chip);border:none;border-radius:var(--radius-sm);color:var(--text-dim);cursor:pointer;display:flex;font-size:13px;height:24px;justify-content:center;line-height:1;position:absolute;right:8px;top:8px;transition:background var(--t-fast),color var(--t-fast);width:24px;z-index:2}.ovl-close:hover,.xw-tt-close:hover{background:var(--bg-chip-hover);color:#fff}.xw-tooltip::-webkit-scrollbar{display:none}.xw-tt-heading{backdrop-filter:var(--blur-modal);-webkit-backdrop-filter:var(--blur-modal);background:rgba(13,8,32,.92);border-bottom:1px solid var(--border-soft);border-radius:var(--radius-md) var(--radius-md) 0 0;color:var(--purple-200);font-family:var(--font-display);font-size:11px;font-weight:700;letter-spacing:.06em;margin:-12px -12px 8px;padding:12px 40px 8px 12px;position:sticky;text-transform:uppercase;top:-12px;z-index:5}.xw-tt-heading:not(:first-child){backdrop-filter:none;-webkit-backdrop-filter:none;background:none;border:none;border-radius:0;margin:0 0 8px;padding:0;position:static}.xw-card-kicker{font-family:var(--font-display);font-size:9.5px;font-weight:700;letter-spacing:.06em;line-height:1.2;margin:0 0 2px;text-transform:uppercase}.xw-tt-divider{background:var(--border-soft);border:0;height:1px;margin:8px 0}.xw-chip{align-items:center;background:var(--bg-chip);border:1px solid var(--border-soft);border-radius:999px;color:var(--text-dim);display:inline-flex;font-size:11px;font-weight:600;letter-spacing:.01em;padding:3px 9px;white-space:nowrap}.track-panel{backdrop-filter:var(--blur-modal);-webkit-backdrop-filter:var(--blur-modal);background:rgba(13,8,32,.78);border:1px solid var(--border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);color:#fff;font-family:var(--font-body);padding:12px;position:fixed;right:14px;top:74px;width:min(310px,calc(100vw - 28px));z-index:1300}@keyframes trackPanelIn{0%{opacity:0;transform:translateY(-8px) scale(.98)}to{opacity:1;transform:none}}.track-panel__head{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.track-panel__title{align-items:center;color:var(--purple-200);display:flex;font-family:var(--font-display);font-size:10px;gap:7px;letter-spacing:.07em;text-transform:uppercase}.track-panel__close{background:var(--bg-chip);border:1px solid var(--border-soft);border-radius:50%;color:var(--text-dim);cursor:pointer;font-size:12px;height:28px;width:28px}.track-panel__close:hover{background:var(--bg-chip-hover);color:#fff}.track-panel__cell{font-size:15px;font-weight:800;margin-bottom:6px}.track-panel__row{color:var(--text-dim);display:flex;font-size:12px;gap:10px;justify-content:space-between}.track-panel__row b{color:#fff;font-weight:600}.track-panel__rule{background:var(--border-soft);border:0;height:1px;margin:10px 0}.track-panel__stats{display:grid;gap:6px;grid-template-columns:repeat(3,1fr);text-align:center}.track-panel__stat{background:hsla(0,0%,100%,.045);border:1px solid var(--border-soft);border-radius:var(--radius-md);padding:7px 4px}.track-panel__stat-n{color:#fff;font-size:17px;font-variant-numeric:tabular-nums;font-weight:800}.track-panel__stat-l{color:var(--text-faint);font-size:10px;letter-spacing:.04em;margin-top:2px;text-transform:uppercase}.track-panel__loading{color:var(--purple-200);font-size:11px;margin-top:8px;text-align:center}.track-panel__subhead{color:var(--purple-200);font-family:var(--font-display);font-size:10px;letter-spacing:.05em;margin-bottom:6px;text-transform:uppercase}.track-panel__places{display:flex;flex-direction:column;gap:4px;max-height:180px;overflow-y:auto;scrollbar-width:none}.track-panel__places::-webkit-scrollbar{display:none}.track-panel__place{align-items:center;background:var(--bg-chip);border:1px solid var(--border-soft);border-radius:var(--radius-sm);display:flex;font-size:12px;gap:10px;justify-content:space-between;padding:6px 9px}.track-panel__place-name{color:#fff;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.track-panel__place-eta{color:var(--purple-200);flex:none;font-variant-numeric:tabular-nums;font-weight:700}.track-panel__warn{align-items:center;background:rgba(255,82,82,.14);border:1px solid rgba(255,82,82,.35);border-radius:var(--radius-sm);color:#ffb4b4;display:flex;font-size:12px;font-weight:600;gap:7px;margin-bottom:8px;padding:5px 8px}.track-panel__impact{animation:trackImpactIn .24s var(--ease-spring)}.track-panel__impact--new{animation:trackImpactIn .34s var(--ease-spring)}.track-panel__impact--new .track-panel__place{animation:trackPlaceIn .3s var(--ease-spring) both}.track-panel__impact--new .track-panel__place:nth-child(2){animation-delay:25ms}.track-panel__impact--new .track-panel__place:nth-child(3){animation-delay:.05s}.track-panel__impact--new .track-panel__place:nth-child(4){animation-delay:75ms}@keyframes trackImpactIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes trackPlaceIn{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}.storm-track-ctrl{align-items:center;backdrop-filter:var(--blur-modal);-webkit-backdrop-filter:var(--blur-modal);background:rgba(13,8,32,.78);border:1px solid var(--border-soft);border-radius:999px;bottom:82px;box-shadow:var(--shadow-lg);color:#fff;display:flex;font-family:var(--font-body);font-size:13px;gap:10px;left:14px;padding:8px 9px 8px 14px;position:fixed;z-index:1300}.storm-track-ctrl .stc-main{display:flex;flex-direction:column;gap:1px;min-width:108px}.storm-track-ctrl .stc-label{align-items:center;display:flex;font-weight:800;gap:7px;line-height:1.1}.storm-track-ctrl .stc-label i{color:var(--purple-200)}.storm-track-ctrl .stc-hint{color:var(--text-faint);font-size:11px;line-height:1.1}.storm-track-ctrl .stc-speed-readout{color:#fff;font-size:12px;font-variant-numeric:tabular-nums;font-weight:800;min-height:30px;padding:0 12px}.storm-track-ctrl .stc-speed-readout,.storm-track-ctrl .stc-speed-wrap{align-items:center;background:var(--bg-chip);border:1px solid var(--border-soft);border-radius:999px;display:inline-flex}.storm-track-ctrl .stc-speed-wrap{gap:5px;padding:4px 8px}.storm-track-ctrl .stc-speed-input{background:transparent;border:none;color:#fff;font:inherit;font-variant-numeric:tabular-nums;font-weight:800;outline:none;padding:0;text-align:right;width:42px}.storm-track-ctrl .stc-mph{color:var(--text-faint);font-size:11px}.storm-track-ctrl .stc-btn{align-items:center;background:var(--bg-chip);border:1px solid var(--border-soft);border-radius:50%;color:var(--text-dim);cursor:pointer;display:flex;font-size:12px;height:30px;justify-content:center;transition:background-color var(--t-fast),color var(--t-fast),transform var(--t-fast);width:30px}.storm-track-ctrl .stc-btn:hover{background:var(--bg-chip-hover);color:#fff}.storm-track-ctrl .stc-btn:active{transform:scale(.96)}.track-panel.pop{animation:trackPanelIn .28s cubic-bezier(.16,1,.3,1)}.storm-speed-pop{animation:stormSpeedIn .2s var(--ease-spring);backdrop-filter:var(--blur-modal);-webkit-backdrop-filter:var(--blur-modal);background:rgba(13,8,32,.9);border:1px solid var(--border-soft);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);color:#fff;font-family:var(--font-body);min-width:174px;padding:12px}.storm-speed-floating{position:fixed;z-index:1600}.storm-speed-floating:after{background:rgba(13,8,32,.9);border-bottom:1px solid var(--border-soft);border-right:1px solid var(--border-soft);bottom:-7px;content:"";height:14px;left:50%;position:absolute;transform:translateX(-50%) rotate(45deg);width:14px}.storm-speed-title{color:#fff;font-size:13px;font-weight:800;margin-bottom:8px}.storm-speed-field{align-items:center;background:var(--bg-chip);border:1px solid var(--border-soft);border-radius:var(--radius-sm);display:flex;margin-bottom:8px;overflow:hidden}.storm-speed-field input{background:transparent;border:0;border-right:1px solid var(--border-soft);color:#fff;font:inherit;font-variant-numeric:tabular-nums;font-weight:800;height:36px;outline:0;padding:0 10px;width:82px}.storm-speed-field span{color:var(--text-dim);font-size:12px;font-weight:700;padding:0 10px}.storm-speed-detect,.storm-speed-none{border-radius:var(--radius-sm);font-size:11px;margin-bottom:8px;padding:7px 8px;width:100%}.storm-speed-detect{background:rgba(107,84,245,.16);border:1px solid rgba(107,84,245,.35);color:var(--purple-200);cursor:pointer;transition:background-color var(--t-fast),transform var(--t-fast)}.storm-speed-detect:hover{background:rgba(107,84,245,.26);transform:translateY(-1px)}.storm-speed-none{background:hsla(0,0%,100%,.04);border:1px solid var(--border-soft);color:var(--text-faint)}.storm-speed-actions{display:flex;gap:8px}.storm-speed-actions button{border:0;border-radius:var(--radius-sm);cursor:pointer;font-weight:800;height:32px;padding:0 12px}.storm-speed-apply{background:var(--accent);color:#fff}.storm-speed-cancel{background:var(--bg-chip);color:var(--text-dim)}@keyframes stormSpeedIn{0%{opacity:0;transform:translateY(6px) scale(.98)}to{opacity:1;transform:none}}.more-info-button,.xw-btn{align-items:center;background:var(--accent);border:1px solid transparent;border-radius:var(--radius-md);box-shadow:var(--glow-sm);box-sizing:border-box;color:#fff;cursor:pointer;display:flex;font-family:var(--font-body);font-size:14px;font-weight:600;gap:8px;justify-content:center;letter-spacing:.01em;margin-top:10px;padding:10px 14px;text-decoration:none;transition:background var(--t-fast),border-color var(--t-fast),box-shadow var(--t-fast),transform var(--t-fast);width:100%}.more-info-button:hover,.xw-btn:hover{background:var(--accent-hover);border-color:transparent;box-shadow:var(--glow);color:#fff}.more-info-button:active,.xw-btn:active{transform:translateY(1px) scale(.99)}.track-cell-btn:hover{background:var(--accent);box-shadow:var(--glow-sm)}.xw-btn--ghost{background:var(--accent-soft);border-color:var(--border-accent);box-shadow:none;color:var(--purple-200)}.xw-btn--ghost:hover{background:var(--accent);color:#fff}.alert-popup{background:radial-gradient(120% 60% at 50% -10%,color-mix(in srgb,var(--alert-accent,var(--accent)) 22%,transparent),transparent 60%),var(--bg-page);border-radius:0;box-sizing:border-box;color:var(--text-dim);display:none;font-family:var(--font-body);height:100%;inset:0;line-height:1.55;max-height:none;max-width:none;overflow-y:auto;padding:0;position:fixed;scrollbar-width:none;width:100%;z-index:10000000}.alert-popup>*{margin-left:auto;margin-right:auto;max-width:940px}.alert-popup{padding:clamp(20px,4vh,40px) clamp(18px,5vw,56px)}.alert-popup::-webkit-scrollbar{display:none}.alert-popup .close-button{align-items:center;background:var(--bg-chip);border:1px solid var(--border-soft);border-radius:50%;color:#fff;cursor:pointer;display:flex;flex:0 0 auto;font-size:17px;height:46px;justify-content:center;padding:0;transition:background var(--t-fast),border-color var(--t-fast),transform var(--t-fast);width:46px}.alert-popup .close-button:hover{background:var(--bg-chip-hover);border-color:var(--border)}.alert-popup .close-button:active{transform:scale(.92)}.xw-alert-head{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:18px}.xw-alert-chip{align-items:center;background:color-mix(in srgb,var(--chip) 24%,transparent);border:1px solid color-mix(in srgb,var(--chip) 55%,transparent);border-radius:var(--radius-lg);color:#fff!important;display:inline-flex;font-family:var(--font-display);font-size:clamp(18px,2.4vw,22px);font-weight:700;letter-spacing:.01em;line-height:1.15;padding:10px 18px}.xw-alert-meta{color:var(--text-faint);font-size:13px;line-height:1.8}.xw-alert-meta b{color:var(--text-dim);font-weight:600}.tts-btn{background:var(--accent-soft);border:1px solid var(--border-accent);border-radius:var(--radius-sm);color:var(--purple-200);cursor:pointer;font-family:var(--font-body);font-size:14px;font-weight:600;letter-spacing:.02em;margin-top:14px;padding:11px 18px;text-align:center;transition:background var(--t-fast),border-color var(--t-fast),box-shadow var(--t-fast),color var(--t-fast);width:100%}.tts-btn:hover{background:var(--accent);border-color:var(--accent);box-shadow:var(--glow-sm);color:#fff}.watch-popup{box-sizing:border-box;color:var(--text-dim);display:none;font-family:var(--font-body);left:50%;line-height:1.5;max-height:80vh;max-width:550px;overflow-y:auto;padding:24px 26px;position:fixed;scrollbar-width:none;top:10%;transform:translateX(-50%);width:95vw;z-index:10000000}.watch-popup::-webkit-scrollbar{display:none}.watch-popup .close-button{align-items:center;background:var(--bg-chip);border:1px solid var(--border-soft);border-radius:var(--radius-sm);color:var(--purple-200);cursor:pointer;display:flex;font-size:17px;height:40px;justify-content:center;padding:0;transition:background var(--t-fast),border-color var(--t-fast);width:40px}.watch-popup .close-button:hover{background:var(--bg-chip-hover);border-color:var(--border)}.alert-popup b,.watch-popup b{color:var(--text);font-weight:600}.alert-popup .xw-section-label,.watch-popup .xw-section-label{color:var(--purple-200);display:block;font-family:var(--font-display);font-size:11px;font-weight:700;letter-spacing:.06em;margin:0 0 6px;text-transform:uppercase}.alert-popup .xw-section-rule,.watch-popup .xw-section-rule{background:linear-gradient(90deg,transparent,var(--border-soft) 12%,var(--border-soft) 88%,transparent);border:0;height:1px;margin:20px 0;opacity:.7}.alert-status-line .xw-track{background:var(--bg-chip);border:1px solid var(--border-soft);border-radius:999px;height:6px;overflow:visible;position:relative}.alert-status-line .elapsed-line{border-radius:999px 0 0 999px}@keyframes popupSlideIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes popupSlideOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(16px)}}.alert-popup.popup-opening{animation:popupSlideIn .3s cubic-bezier(.22,1,.36,1) forwards}.alert-popup.popup-closing{animation:popupSlideOut .25s cubic-bezier(.55,0,1,.45) forwards}@keyframes watchPopupIn{0%{opacity:0;transform:translateX(-50%) translateY(16px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}@keyframes watchPopupOut{0%{opacity:1;transform:translateX(-50%) translateY(0)}to{opacity:0;transform:translateX(-50%) translateY(16px)}}.watch-popup.popup-opening{animation:watchPopupIn .3s cubic-bezier(.22,1,.36,1) forwards}.watch-popup.popup-closing{animation:watchPopupOut .25s cubic-bezier(.55,0,1,.45) forwards}@keyframes pulseExpired{0%{box-shadow:0 0 4px 1px currentColor;transform:translate(-50%,-50%) scale(1)}50%{box-shadow:0 0 12px 4px currentColor;transform:translate(-50%,-50%) scale(1.2)}to{box-shadow:0 0 4px 1px currentColor;transform:translate(-50%,-50%) scale(1)}}#control-bar,#top-control-bar{backdrop-filter:var(--blur-panel);-webkit-backdrop-filter:var(--blur-panel);background:var(--bg-glass);border:1px solid var(--border-soft)}#colorbar{border-color:var(--border-soft)}#circle-menu,#circle-menu-popup,#colorbar-tooltip,#drawing-controls,#inspector-info{backdrop-filter:var(--blur-panel);-webkit-backdrop-filter:var(--blur-panel);background:rgba(13,8,32,.65);border:1px solid var(--border-soft)}#about-popup,#bottom-layer-popup,#faq-popup,#feedback-popup,#keyboard-popup,#legal-popup,#mapping-popup,#weather-glossary-popup,.alert-popup,.camera-popup-container,.watch-popup{backdrop-filter:var(--blur-modal);-webkit-backdrop-filter:var(--blur-modal);background:var(--bg-panel-soft);border:1px solid var(--border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.global-tilt-dropdown,.unit-system-dropdown{backdrop-filter:var(--blur-panel);-webkit-backdrop-filter:var(--blur-panel);background:rgba(13,8,32,.92);border:1px solid var(--border-soft);border-radius:var(--radius-md)}#side-menu{backdrop-filter:var(--blur-modal);-webkit-backdrop-filter:var(--blur-modal);background:var(--bg-glass);border:1px solid var(--border-soft);border-left:none;border-radius:0 var(--radius-lg) var(--radius-lg) 0}.about-title,.camera-popup-title,.faq-title,.feedback-title,.glossary-title,.keyboard-title,.legal-title,.mapping-title{font-family:var(--font-display);font-size:15px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}#select-station-text,.colormap-title,.playback-title{font-family:var(--font-display);font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}#colorbar-tooltip,#current-layer-subtext,#inspector-info,#station-info-line2,#top-vcp,.gate-filter-values,.playback-datetime,.playback-frame-counter,kbd{font-variant-numeric:tabular-nums}.control-button.active,.custom-colormap-item.active,.layer-item.active,.playback-control-btn,.preset-item.active{box-shadow:var(--glow-sm)}@media (max-width:1024px){#about-popup,#faq-popup,#feedback-popup,#keyboard-popup,#legal-popup,#mapping-popup,#side-menu,#weather-glossary-popup,.alert-popup,.camera-popup-container,.watch-popup{backdrop-filter:none;-webkit-backdrop-filter:none;background:rgba(13,8,32,.96)}#bottom-layer-popup{backdrop-filter:var(--blur-modal);-webkit-backdrop-filter:var(--blur-modal);background:var(--bg-panel-soft)}#circle-menu,#circle-menu-popup,#control-bar,#playback-bar,#top-control-bar{backdrop-filter:var(--blur-chrome);-webkit-backdrop-filter:var(--blur-chrome)}}@supports not (backdrop-filter:blur(1px)){#about-popup,#bottom-layer-popup,#circle-menu,#circle-menu-popup,#colorbar-tooltip,#control-bar,#drawing-controls,#faq-popup,#feedback-popup,#inspector-info,#keyboard-popup,#legal-popup,#mapping-popup,#playback-bar,#side-menu,#top-control-bar,#weather-glossary-popup,.alert-popup,.camera-popup-container,.global-tilt-dropdown,.toast,.unit-system-dropdown,.watch-popup{background:rgba(13,8,32,.96)}}#global-loading-overlay{align-items:center;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);background:rgba(13,8,32,.5);display:none;inset:0;justify-content:center;position:fixed;z-index:10000}#global-loading-overlay.active{display:flex}.global-loading-card{align-items:center;animation:xw-fade-in .3s ease both;backdrop-filter:var(--blur-modal);-webkit-backdrop-filter:var(--blur-modal);background:var(--bg-panel-soft);border:1px solid var(--border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg),var(--glow-sm);color:#fff;display:flex;flex-direction:column;gap:20px;padding:30px 38px;text-align:center}@keyframes xw-fade-in{0%{opacity:0}to{opacity:1}}.radar-scope{background:radial-gradient(circle,rgba(107,84,245,.1),transparent 70%);border-radius:50%;height:84px;position:relative;width:84px}.radar-scope-ring{border:1px solid rgba(107,84,245,.35);border-radius:50%;inset:0;position:absolute}.radar-scope-ring.ring-mid{border-color:rgba(107,84,245,.22);inset:22%}.radar-scope-crosshair:after,.radar-scope-crosshair:before{background:rgba(107,84,245,.18);content:"";position:absolute}.radar-scope-crosshair:before{height:1px;left:0;right:0;top:50%;transform:translateY(-50%)}.radar-scope-crosshair:after{bottom:0;left:50%;top:0;transform:translateX(-50%);width:1px}.radar-scope-sweep{animation:xw-spin 1.4s linear infinite;background:conic-gradient(from 0deg,rgba(155,94,245,.55) 0deg,rgba(155,94,245,.12) 40deg,transparent 90deg,transparent 1turn);border-radius:50%;inset:0;-webkit-mask:radial-gradient(circle,transparent 6px,#000 0);mask:radial-gradient(circle,transparent 6px,#000 0);position:absolute}.radar-scope:after{background:var(--accent-hover);border-radius:50%;box-shadow:var(--glow-sm);content:"";height:6px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:6px}#global-loading-message{font-size:15px;font-weight:600;letter-spacing:.01em}@keyframes xw-spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.radar-scope-sweep{animation:none;opacity:.5}.alert-popup.popup-closing,.alert-popup.popup-opening,.watch-popup.popup-closing,.watch-popup.popup-opening{animation-duration:1ms}}.ovl-popup{--ovl-accent:var(--accent);backdrop-filter:var(--blur-panel);-webkit-backdrop-filter:var(--blur-panel);background:rgba(13,8,32,.88);border:none;border-radius:var(--radius-md);box-shadow:var(--shadow-lg);box-sizing:border-box;color:#fff;font-family:var(--font-body);font-size:13px;line-height:1.45;margin:-2px;max-width:100%;padding:10px;width:218px}.ovl-popup__head{align-items:center;border-bottom:1px solid var(--border-soft);display:flex;gap:8px;margin-bottom:8px;padding-bottom:8px}.ovl-popup__accent{align-self:stretch;background:var(--ovl-accent);border-radius:999px;box-shadow:0 0 10px -1px var(--ovl-accent);flex:0 0 auto;min-height:22px;width:6px}.ovl-popup__titles{flex:1 1 auto;min-width:0}.ovl-popup__kicker{color:var(--ovl-accent);font-family:var(--font-display);font-size:10px;letter-spacing:.06em;line-height:1.15;text-transform:uppercase}.ovl-popup__title{color:#fff;font-size:15px;font-weight:700;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ovl-popup__rows{display:grid;gap:4px 10px;grid-template-columns:auto 1fr;list-style:none;margin:0;padding:0}.ovl-popup__label{align-self:baseline;color:var(--text-faint);font-size:11px;letter-spacing:.03em;text-transform:uppercase;white-space:nowrap}.ovl-popup__value{align-self:baseline;color:#fff;font-size:13px;word-break:break-word}.ovl-popup__note{background:var(--bg-chip);border:1px solid var(--border-soft);border-radius:var(--radius-sm);color:var(--text-dim);font-size:12px;grid-column:1/-1;margin-top:2px;padding:6px 8px}.ovl-popup__note .ovl-popup__label{display:block;margin-bottom:2px}.ovl-popup__chip{background:var(--ovl-accent);border-radius:999px;color:#fff;display:inline-block;font-size:11px;font-weight:700;letter-spacing:.03em;line-height:1;padding:3px 7px;vertical-align:baseline}.ovl-popup__raw{grid-column:1/-1;margin-top:4px}.ovl-popup__raw>summary{color:var(--text-faint);cursor:pointer;font-size:11px;letter-spacing:.03em;list-style:none;text-transform:uppercase;transition:color var(--t-fast)}.ovl-popup__raw>summary:hover{color:var(--purple-200)}.ovl-popup__raw>summary::-webkit-details-marker{display:none}.ovl-popup__raw pre{background:var(--bg-chip);border:1px solid var(--border-soft);border-radius:var(--radius-sm);color:var(--text-dim);font-size:11px;margin:6px 0 0;padding:6px 8px;white-space:pre-wrap;word-break:break-word}@media (hover:none){#circle-menu:hover,.back-button:hover,.color-palettes-button:hover,.control-button:hover,.control-button:hover:not(:disabled),.global-tilt-option:hover,.global-tilt-selector:hover,.mapboxgl-popup-close-button:hover,.pb-btn:hover,.pb-play:hover,.pb-speed:hover,.playback-button:hover,.projection-option:hover,.side-menu-item:hover,.style-option:hover,.track-cell-btn:hover,.unit-system-option:hover,.unit-system-selector:hover,.wr-play-btn:hover,.xw-btn:hover,.xw-radar-btn:hover,a:hover,button:hover{filter:none!important;transform:none!important}.back-button:hover,.color-palettes-button:hover,.control-button:hover:not(:disabled),.global-tilt-selector:hover,.pb-btn:hover,.side-menu-item:hover,.unit-system-selector:hover{background:var(--bg-chip)!important}.global-tilt-option:hover:not(.active),.unit-system-option:hover:not(.active){background:transparent!important}}