*{box-sizing:border-box}html,body{margin:0;height:100%;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}#map{position:absolute;inset:0}.map-top-chrome{border-radius:12px;background:#12161ceb;box-shadow:0 8px 28px #00000059;padding:.4rem}#app-menu-chrome{position:fixed;top:max(.75rem,env(safe-area-inset-top));left:max(.75rem,env(safe-area-inset-left));z-index:4;pointer-events:auto;display:flex;flex-direction:column;gap:.4rem}#app-menu-chrome .iconch1-step-btn{display:flex;align-items:center;justify-content:center}#app-menu-chrome .basemap-cycle-btn{padding:0;overflow:hidden}#app-menu-chrome .basemap-cycle-btn[hidden]{display:none}#app-menu-chrome .basemap-cycle-icon{display:block;width:40px;height:40px;object-fit:cover;pointer-events:none}#app-menu-chrome .glide-mode-cycle-btn{padding:0;overflow:hidden}#app-menu-chrome .glide-mode-cycle-btn[hidden]{display:none}#app-menu-chrome .glide-mode-cycle-icon{display:block;width:40px;height:40px;object-fit:cover;pointer-events:none}.capability-warning{position:fixed;z-index:5;left:50%;bottom:max(1rem,env(safe-area-inset-bottom));transform:translate(-50%);margin:0;max-width:min(28rem,calc(100vw - 1.5rem));padding:.75rem 1rem;border-radius:12px;background:#12161cf0;color:#f2f4f7;font-size:.92rem;line-height:1.35;text-align:center;box-shadow:0 8px 28px #00000059;pointer-events:none}.capability-warning[hidden]{display:none}.chrome-longpress-hint{position:fixed;z-index:4;margin:0;max-width:min(14rem,calc(100vw - 5.5rem));padding:.35rem .55rem;border-radius:.45rem;background:#12161cd1;color:#b8c4d4;font-size:.72rem;font-weight:500;letter-spacing:.01em;line-height:1.3;box-shadow:0 4px 16px #00000047;pointer-events:none;transform:translateY(-50%)}.chrome-longpress-hint[hidden],body.app-menu-open .chrome-longpress-hint,body.cache-select-mode .chrome-longpress-hint{display:none}.app-menu-backdrop{position:fixed;inset:0;z-index:3;background:#00000073}.app-menu-backdrop[hidden]{display:none}#params-shell.app-menu-popup{position:fixed;inset:50% auto auto 50%;transform:translate(-50%,-50%);z-index:4;width:min(96vw,28rem);max-height:min(80dvh,calc(100dvh - 2rem))}#params-shell.app-menu-popup[hidden]{display:none}.app-menu-popup-inner{display:flex;flex-direction:column;gap:.5rem;padding:.65rem .75rem .75rem;flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.map-select-bar,#cache-select-bar{position:fixed;top:max(.75rem,env(safe-area-inset-top));left:50%;z-index:4;display:flex;flex-direction:column;align-items:stretch;gap:.45rem;width:min(24rem,calc(100vw - max(.75rem,env(safe-area-inset-left)) - max(.75rem,env(safe-area-inset-right)) - 7rem));padding:.65rem .85rem;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:#12161ceb;color:#f5f7fa;box-shadow:0 8px 28px #00000059;backdrop-filter:blur(8px);transform:translate(-50%);pointer-events:auto}.map-select-bar[hidden],#cache-select-bar[hidden]{display:none}.map-select-bar--compact{width:auto;min-width:8rem;align-items:center}.map-select-status,.cache-select-status{margin:0;font-size:.8rem;line-height:1.35;text-align:center;color:#c8d3e0}.map-select-field-label{font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#9aa8b8}.map-select-text-input{width:100%;padding:.45rem .55rem;border:1px solid rgba(255,255,255,.14);border-radius:.4rem;background:#00000040;color:#f5f7fa;font-size:.85rem}.map-select-text-input:focus{outline:none;border-color:#78b4ff8c}.map-select-airport-list{max-height:6.5rem;overflow-y:auto}.map-select-actions,.cache-select-actions{display:flex;gap:.45rem}.map-select-actions .action-btn,.cache-select-actions .action-btn{flex:1;min-width:0}body.cache-select-mode #app-menu-chrome,body.manual-airport-select-mode #app-menu-chrome{z-index:5}.cache-clear-dialog{position:fixed;inset:0;z-index:6;display:flex;align-items:center;justify-content:center;padding:1rem}.cache-clear-dialog[hidden]{display:none}.cache-clear-dialog-backdrop{position:absolute;inset:0;background:#00000073}.cache-clear-dialog-panel{position:relative;z-index:1;display:flex;flex-direction:column;gap:.75rem;width:min(92vw,24rem);max-height:min(85dvh,calc(100dvh - 2rem));overflow-y:auto;padding:.85rem .95rem;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:#12161cf5;color:#f5f7fa;box-shadow:0 8px 28px #00000059;backdrop-filter:blur(8px)}.cache-clear-dialog-title{margin:0;font-size:1rem;font-weight:600;text-align:center}.cache-clear-section{display:flex;flex-direction:column;gap:.4rem}.cache-clear-desc{margin:0;font-size:.78rem;line-height:1.4;color:#c8d3e0;text-align:center}.cache-clear-section .action-btn{width:100%}#cache-clear-cancel-btn{margin-top:.15rem;width:100%}.openaip-expiry-cells-updated{margin:.35rem 0 .15rem;font-size:.82rem;font-weight:600;color:#b8f0c8;text-align:center}.openaip-expiry-cells-updated[hidden]{display:none}.openaip-expiry-status{min-height:1.35rem}.openaip-expiry-warnings{display:flex;flex-direction:column;gap:.35rem;max-height:8rem;overflow-y:auto;text-align:left}.openaip-expiry-warnings[hidden]{display:none}.openaip-expiry-warnings .cache-data-warning{margin:0;padding:.35rem .45rem;border-radius:.35rem;background:#ff78501f;border:1px solid rgba(255,140,80,.35);color:#ffd8c8;font-size:.74rem;line-height:1.35}#openaip-expiry-dialog button.action-btn{width:100%}.app-menu-section{display:flex;flex-direction:column;gap:.35rem;min-height:0;flex-shrink:0}.app-menu-section-title{margin:0;font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#7a8a9e}.basemap-section-head,.airspace-section-head{gap:.35rem}.basemap-gradient-row{margin-top:.35rem}.basemap-gradient-row .module-enable-btn{flex:1;min-width:0}.basemap-gradient-row .module-enable-btn.basemap-preview-ready,.basemap-raster-buttons .module-enable-btn.basemap-preview-ready{flex:0 0 88px;width:88px;height:88px;min-width:88px;min-height:88px;padding:0;overflow:hidden;text-align:center}.basemap-raster-buttons{display:flex;flex:1;flex-wrap:wrap;gap:.35rem;min-width:0}.basemap-raster-buttons .module-enable-btn{flex:1;min-width:0}.basemap-preview-icon{display:block;width:88px;height:88px;object-fit:cover;pointer-events:none}.basemap-gradient-row .app-menu-settings-btn{width:88px;height:88px}.app-menu-section-head{display:flex;align-items:center;gap:.45rem}.module-enable-btn{flex:1;min-height:44px;padding:.5rem .75rem;border:1px solid rgba(255,255,255,.14);border-radius:.5rem;background:#ffffff0a;color:#b8c4d4;font-size:.85rem;font-weight:600;text-align:left;cursor:pointer}.module-enable-btn.is-active{border-color:#5fa5ff8c;background:#3b82f647;color:#e8f2ff}.app-menu-settings-btn{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid rgba(255,255,255,.14);border-radius:.5rem;background:#ffffff0a;color:#c8d3e0;font-size:1.1rem;cursor:pointer;flex-shrink:0}.app-menu-settings-btn[aria-expanded=true]{border-color:#5fa5ff73;background:#3b82f62e;color:#e8f2ff}.app-menu-divider{border:0;border-top:1px solid rgba(255,255,255,.1);margin:.15rem 0;flex-shrink:0}.dev-localhost-only{display:none!important}body.localhost-dev .dev-localhost-only{display:block!important}body.localhost-dev #fake-geo-section.dev-localhost-only{display:flex!important}.app-menu-subsection[hidden]{display:none}.app-menu-subsection{display:flex;flex-direction:column;min-height:0;flex-shrink:0;overflow:hidden;margin-top:.3rem;padding:.55rem .6rem .65rem;border-radius:.55rem;background:#20262ef5;border:1px solid rgba(255,255,255,.07)}#iconch1-chrome[hidden]{display:none}.iconch1-time-header{position:fixed;top:max(.75rem,env(safe-area-inset-top));left:50%;z-index:4;display:inline-flex;flex-direction:column;align-items:center;gap:.3rem;padding:.45rem .6rem .5rem;border-radius:12px;background:#12161ceb;box-shadow:0 8px 28px #00000059;transform:translate(-50%);pointer-events:auto}.iconch1-time-row{display:inline-flex;align-items:center;gap:.4rem}.iconch1-status{margin:0;max-width:16rem;font-size:.68rem;line-height:1.3;text-align:center;color:#9ec7ff}.iconch1-status.is-error{color:#ff9b9b}.iconch1-status[hidden]{display:none}body.iconch1-status-visible .iconch1-alt-rail{top:calc(max(.75rem,env(safe-area-inset-top)) + 5.75rem)}body:not(.cache-select-mode) .iconch1-alt-rail{top:calc(max(.75rem,env(safe-area-inset-top)) + 6.65rem)}body:not(.cache-select-mode).iconch1-status-visible .iconch1-alt-rail{top:calc(max(.75rem,env(safe-area-inset-top)) + 8.65rem)}body:not(.cache-select-mode):has(#basemap-cycle-btn:not([hidden])) .iconch1-alt-rail{top:calc(max(.75rem,env(safe-area-inset-top)) + 9.55rem)}body:not(.cache-select-mode).iconch1-status-visible:has(#basemap-cycle-btn:not([hidden])) .iconch1-alt-rail{top:calc(max(.75rem,env(safe-area-inset-top)) + 11.55rem)}body.cache-select-mode.iconch1-status-visible:has(#basemap-cycle-btn:not([hidden])) .iconch1-alt-rail{top:calc(max(.75rem,env(safe-area-inset-top)) + 8.65rem)}.iconch1-alt-rail{position:fixed;top:calc(max(.75rem,env(safe-area-inset-top)) + 3.75rem);left:max(.75rem,env(safe-area-inset-left));z-index:4;display:inline-flex;flex-direction:column;align-items:stretch;gap:.35rem;width:fit-content;pointer-events:auto}body.cache-select-mode:has(#basemap-cycle-btn:not([hidden])) .iconch1-alt-rail{top:calc(max(.75rem,env(safe-area-inset-top)) + 6.65rem)}.iconch1-value-wrap{position:relative;display:inline-flex}.iconch1-value-btn,.iconch1-value-select{min-height:40px;min-width:6.75rem;border:1px solid rgba(255,255,255,.14);border-radius:10px;padding:.35rem .5rem;background:#ffffff0f;color:#e8eef4;font-size:.78rem;font-weight:600;text-align:center}.iconch1-value-btn{position:relative;z-index:1;cursor:pointer}.iconch1-value-select{position:absolute;inset:0;z-index:0;width:100%;height:100%;margin:0;opacity:0;color:transparent;-webkit-text-fill-color:transparent;pointer-events:none;appearance:none}.iconch1-alt-rail .iconch1-value-wrap{width:auto;align-self:center}.iconch1-alt-rail .iconch1-value-btn{width:auto;min-width:0;white-space:nowrap;padding-left:.55rem;padding-right:.55rem}.iconch1-alt-rail .iconch1-value-select,.iconch1-alt-rail .iconch1-step-btn{width:100%}.iconch1-step-btn{min-height:40px;min-width:40px;border:1px solid rgba(255,255,255,.14);border-radius:10px;background:#ffffff0f;color:#e8eef4;font-size:.95rem;cursor:pointer;flex-shrink:0}.iconch1-step-btn:disabled{opacity:.35;cursor:not-allowed}body.iconch1-enabled.cache-select-mode .iconch1-time-header,body.iconch1-enabled.manual-airport-select-mode .iconch1-time-header{top:calc(max(.75rem,env(safe-area-inset-top)) + 4.5rem)}.iconch1-settings-panel{display:flex;flex-direction:column;gap:.35rem}.iconch1-field{display:flex;flex-direction:column;gap:.3rem;font-size:.72rem;color:#9aa4b2}.iconch1-field select,.iconch1-readout-inline{min-height:40px;padding:.35rem .5rem;border:1px solid rgba(255,255,255,.15);border-radius:.4rem;background:#ffffff0f;color:#f5f7fa;font-size:.82rem}.iconch1-settings-meta{margin:0;font-size:.72rem;color:#8b96a8}.iconch-settings-model-slider{display:flex;align-items:center;justify-content:center;gap:.45rem;margin:.35rem auto .55rem;max-width:11.5rem}.iconch-settings-model-label{flex:0 0 auto;border:0;background:transparent;padding:0;font:inherit;font-size:.72rem;color:#9aa4b2;cursor:pointer}.iconch-settings-model-label.is-selected{color:#fff;font-weight:700}.iconch-settings-model-slider input[type=range]{flex:0 0 2.75rem;width:2.75rem;margin:0;cursor:pointer}.iconch-section-head{gap:.35rem}.iconch-model-buttons{display:flex;flex:1;gap:.35rem;min-width:0}.iconch-model-buttons .module-enable-btn{flex:1;min-width:0;padding-left:.35rem;padding-right:.35rem;font-size:.72rem}.iconch-btn-row{display:flex;gap:.35rem;margin-bottom:.35rem}.iconch-btn-row .action-btn{flex:1;min-width:0}.iconch-stored-pack{display:flex;flex-direction:column;gap:.2rem;padding:.55rem .65rem;border-radius:.45rem;background:#ffffff0d;font-size:.78rem;line-height:1.4;color:#c8d3e0;margin-bottom:.35rem}.iconch1-stored-pack{padding:.55rem .65rem;border-radius:.45rem;background:#ffffff0d;font-size:.78rem;line-height:1.4;color:#c8d3e0}.iconch1-settings-cache h3{margin:.35rem 0 .5rem;font-size:.85rem}#iconch-settings input[type=range]{width:100%;max-width:14rem;margin:.15rem 0 0;accent-color:#5a9fd4}.iconch1-cache-intro{margin:0 0 .5rem;font-size:.75rem;color:#8b96a8;line-height:1.4}.iconch1-altitudes{margin:0 0 .5rem;padding:0;border:0}.iconch1-altitudes legend{margin-bottom:.35rem;font-size:.72rem;color:#9aa4b2}.iconch1-altitude-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.35rem}.iconch1-altitude-grid label{display:flex;align-items:center;justify-content:center;gap:.25rem;min-height:36px;border:1px solid rgba(255,255,255,.14);border-radius:.4rem;background:#ffffff0a;color:#e8eef4;font-size:.75rem;cursor:pointer}.iconch1-cache-estimate{margin:0 0 .45rem;font-size:.75rem;color:#9aa4b2}.iconch1-progress{width:100%;height:6px;margin:.35rem 0}.iconch1-progress[hidden]{display:none}#iconch-settings .action-btn{width:100%;margin-top:.25rem}.maplibregl-ctrl-attrib .ch1-forecast-attrib{font-weight:600}body.has-compute-context .maplibregl-ctrl-bottom-right,body.has-compute-context .maplibregl-ctrl-bottom-left{bottom:calc(var(--compute-context-bar-height, 3.5rem) + .35rem)}body.glidecones-disabled #compute-context-bar{display:none!important}#params-shell{border-radius:.75rem;background:#12161ceb;color:#f5f7fa;box-shadow:0 10px 30px #00000059;backdrop-filter:blur(8px);font-size:.85rem;overflow:hidden;display:flex;flex-direction:column;min-height:0}#params-scroll{flex:0 0 auto;min-height:0;overflow:visible;max-height:none}#glidecones-section:not(.glide-settings-open) .params-mode-bar{justify-content:center}body.glidecones-disabled #glidecones-section:not(.glide-settings-open) .params-mode-bar{display:none}.params-overlay-panel{padding:1rem .85rem .85rem;border-top:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;gap:.35rem}.params-overlay-panel[hidden]{display:none}.params-overlay-panel .param-section-desc{margin:0;text-align:center;align-self:center;max-width:22rem}.params-overlay-panel .params-section-title{text-align:center}.params-mode-bar{display:flex;gap:.35rem;padding:0}.params-mode-btn{flex:1;padding:.4rem .65rem;border:1px solid rgba(255,255,255,.14);border-radius:.4rem;background:#ffffff0a;color:#b8c4d4;font-size:.78rem;font-weight:500;letter-spacing:.02em;cursor:pointer;user-select:none}.params-mode-btn:hover{background:#ffffff14;color:#e8eef4}.params-mode-btn[aria-pressed=true]{border-color:#78b4ff8c;background:#508cff33;color:#f0f6ff}#params-shell:not(.params-mode-single) .params-single-only{display:none!important}.params-auto-only{display:none!important}#params-shell.params-mode-auto .params-auto-only{display:flex!important}#params-shell.params-mode-auto #auto-window-size-field[hidden],#params-shell.params-mode-auto #auto-window-size-field.auto-window-size-hidden{display:none!important}#params{display:flex;flex-direction:column;gap:.75rem;padding:0 .85rem .75rem;border-top:1px solid rgba(255,255,255,.08)}.params-section{display:flex;flex-direction:column;gap:.35rem}.params-section-title{font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;color:#7a8494;margin:0}.params-fields{display:grid;grid-template-columns:repeat(auto-fill,minmax(7.5rem,1fr));gap:.55rem .85rem;align-items:start}.param-field{display:flex;flex-direction:column;gap:.25rem}.param-label-row{display:flex;align-items:center;gap:.2rem}.param-label-row:has(.param-check){justify-content:space-between;align-items:flex-start;width:100%}.param-label-row:has(.param-check) .param-check{flex:1;min-width:0}.param-label{color:#9aa4b2;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em}.param-help{width:1.05rem;height:1.05rem;padding:0;border:none;border-radius:50%;background:#ffffff14;color:#9eb8e8;font-size:.62rem;line-height:1;cursor:pointer;flex-shrink:0}.param-help:hover{background:#64a0ff47;color:#c8dcff}.param-hint{font-size:.68rem;color:#8b96a8;text-transform:none;letter-spacing:normal;line-height:1.3;width:100%}.param-field-full{grid-column:1 / -1}.param-zoom-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.55rem 1rem}.param-zoom-input{flex:0 0 auto}.param-resolution-hint{flex:1 1 10rem;min-width:0;padding-bottom:.35rem;font-size:.72rem;color:#8b96a8;line-height:1.35}.param-stepper{display:flex;flex-flow:row nowrap;align-items:center;gap:.35rem;width:100%}#params .param-stepper input[type=number]{flex:1 1 0;width:auto;min-width:0;max-width:none;text-align:center}#gradient-settings .param-stepper input[type=number]{flex:1 1 0;width:auto;min-width:0;max-width:8rem;text-align:center}.param-step-btn{display:none;flex:0 0 auto;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;padding:0;border:1px solid rgba(255,255,255,.18);border-radius:.45rem;background:#ffffff14;color:#e8ecf1;font-size:1.25rem;line-height:1;flex-shrink:0;cursor:pointer;user-select:none;-webkit-tap-highlight-color:transparent}.param-step-btn:active{background:#64a0ff47;border-color:#64a0ff73}.param-check{display:flex;align-items:flex-start;gap:.45rem;font-size:.82rem;color:#e8ecf1;line-height:1.35;cursor:pointer;user-select:none}.param-check input{margin-top:.15rem;flex-shrink:0;accent-color:#5a9fd4}.param-check-detail{color:#8b96a8;font-size:.72rem}#debug-mode-field{align-items:center}#debug-mode-field .param-check{justify-content:center}#params-shell:not(.debug-mode) .param-debug-only{display:none!important}#max-compute-iter-field input[type=number]{width:100%;box-sizing:border-box;padding:.4rem .55rem;border-radius:.45rem;border:1px solid rgba(255,255,255,.12);background:#ffffff0f;color:#f5f7fa;font-size:.9rem}#fake-geo-section .param-check{justify-content:flex-start}#fake-geo-alt-field input[type=number]{width:100%;box-sizing:border-box;padding:.4rem .55rem;border-radius:.45rem;border:1px solid rgba(255,255,255,.12);background:#ffffff0f;color:#f5f7fa;font-size:.9rem}.include-manual-airports-row{display:flex;justify-content:center;padding:.35rem 0 .15rem}.include-manual-airports-row[hidden]{display:none}.include-manual-airports-row .param-check{justify-content:center}.params-section-actions{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.45rem;padding-top:.75rem}.params-section-divider{border:0;border-top:1px solid rgba(255,255,255,.1);margin:.55rem 0 .45rem}.params-section-actions-secondary{padding-top:.55rem;border-top:1px solid rgba(255,255,255,.06)}#manual-airport-list{display:flex;flex-direction:column;max-height:8.5rem;overflow-y:auto;margin:.45rem 0;border:1px solid rgba(255,255,255,.1);border-radius:.4rem;background:#00000026}#manual-airport-list{max-height:4.05rem}#manual-airport-list[hidden]{display:none}.manual-airport-list-item{display:flex;align-items:center;gap:.45rem;padding:.32rem .45rem;font-size:.78rem;color:#d8dee9;border-bottom:1px solid rgba(255,255,255,.06)}.manual-airport-list-item:last-child{border-bottom:none}.manual-airport-list-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums}.manual-airport-list-delete{flex-shrink:0;width:1.35rem;height:1.35rem;padding:0;border:1px solid rgba(255,120,120,.35);border-radius:.3rem;background:#ff50501f;color:#ffc8c8;font-size:.95rem;line-height:1;cursor:pointer}.manual-airport-list-delete:hover{background:#ff505047}#params-footer{display:flex;align-items:center;gap:.75rem;padding:.45rem .75rem;flex-shrink:0;flex:1;min-width:0;font-size:.72rem;line-height:1.35;font-variant-numeric:tabular-nums}#params-footer #status{color:#b8c5d6}#status[hidden]{display:none}#cell-tooltip{position:fixed;z-index:1;max-width:min(20rem,88vw);padding:.55rem .7rem;border-radius:.55rem;background:#12161cf0;color:#e8f0ff;box-shadow:0 8px 28px #00000073;backdrop-filter:blur(8px);font-size:.78rem;line-height:1.4;white-space:pre-line;font-variant-numeric:tabular-nums;pointer-events:none}#cell-tooltip[hidden]{display:none}#cell-tooltip .tooltip-num{font-weight:700}#cell-tooltip .tooltip-num-warn{color:#f59e0b}#cell-tooltip .delta-pos{color:#6dd96d}#cell-tooltip .delta-neg{color:#f07070}#cell-tooltip .path-info-heading{display:block;font-weight:700;margin-bottom:.15rem}#cell-tooltip .path-info-note{display:block;margin-top:.2rem;color:#9aa4b2}#params-shell button.action-btn.btn-blue,.map-select-bar button.action-btn.btn-blue,#cache-select-bar button.action-btn.btn-blue,#cache-clear-dialog button.action-btn.btn-blue,#openaip-expiry-dialog button.action-btn.btn-blue,#iconch-settings button.action-btn.btn-blue{border-color:#5a9fff8c;background:#5a9fff33;color:#d8e8ff}#params-shell button.action-btn.btn-blue:hover:not(:disabled),.map-select-bar button.action-btn.btn-blue:hover:not(:disabled),#cache-select-bar button.action-btn.btn-blue:hover:not(:disabled),#cache-clear-dialog button.action-btn.btn-blue:hover:not(:disabled),#openaip-expiry-dialog button.action-btn.btn-blue:hover:not(:disabled),#iconch-settings button.action-btn.btn-blue:hover:not(:disabled){background:#5a9fff52}#params-shell button.action-btn.btn-green,.map-select-bar button.action-btn.btn-green,#cache-select-bar button.action-btn.btn-green,#cache-clear-dialog button.action-btn.btn-green,#openaip-expiry-dialog button.action-btn.btn-green,#iconch-settings button.action-btn.btn-green{border-color:#64d27899;background:#46be6438;color:#d8ffe3}#params-shell button.action-btn.btn-green:hover:not(:disabled),.map-select-bar button.action-btn.btn-green:hover:not(:disabled),#cache-select-bar button.action-btn.btn-green:hover:not(:disabled),#cache-clear-dialog button.action-btn.btn-green:hover:not(:disabled),#openaip-expiry-dialog button.action-btn.btn-green:hover:not(:disabled),#iconch-settings button.action-btn.btn-green:hover:not(:disabled){background:#46be645c}#params-shell button.action-btn.btn-red,.map-select-bar button.action-btn.btn-red,#cache-select-bar button.action-btn.btn-red,#cache-clear-dialog button.action-btn.btn-red,#openaip-expiry-dialog button.action-btn.btn-red,#iconch-settings button.action-btn.btn-red{border-color:#ff78788c;background:#ff50502e;color:#ffd6d6}#params-shell button.action-btn.btn-red:hover:not(:disabled),.map-select-bar button.action-btn.btn-red:hover:not(:disabled),#cache-select-bar button.action-btn.btn-red:hover:not(:disabled),#cache-clear-dialog button.action-btn.btn-red:hover:not(:disabled),#openaip-expiry-dialog button.action-btn.btn-red:hover:not(:disabled),#iconch-settings button.action-btn.btn-red:hover:not(:disabled){background:#ff505052}.param-section-desc{margin:0 0 .45rem;color:#8b96a8;font-size:.72rem;line-height:1.4;text-transform:none;letter-spacing:normal}.glide-settings-mode-hint{margin:0 0 .55rem;color:#9aa8b8;font-size:.74rem;line-height:1.45}.glide-settings-mode-hint[hidden]{display:none}#param-help-popover{position:fixed;z-index:10;max-width:17rem;padding:.55rem .65rem;border-radius:.45rem;background:#12161cf5;border:1px solid rgba(255,255,255,.12);box-shadow:0 8px 24px #0006;font-size:.78rem;line-height:1.45;color:#d4deea;white-space:pre-line}#param-help-popover[hidden]{display:none}#params input[type=number],#params input[type=text],#gradient-settings input[type=number],.params-overlay-panel input[type=text],.params-overlay-panel input[type=number]{width:100%;max-width:8rem;padding:.35rem .5rem;border:1px solid rgba(255,255,255,.15);border-radius:.4rem;background:#ffffff0f;color:#f5f7fa;font-size:.9rem;font-variant-numeric:tabular-nums}.params-overlay-panel .param-field-full input[type=text]{max-width:none}#params input[type=number]:focus,#params input[type=text]:focus,#gradient-settings input[type=number]:focus,.params-overlay-panel input:focus{outline:2px solid rgba(100,160,255,.55);border-color:transparent}#params select,#viz-mode{width:100%;max-width:14rem;padding:.35rem .5rem;border:1px solid rgba(255,255,255,.15);border-radius:.4rem;background:#ffffff0f;color:#f5f7fa;font-size:.82rem}#params input[type=range]{width:100%;max-width:14rem;margin:.15rem 0 0;accent-color:#5a9fd4}#sectors-opacity-field[hidden]{display:none}#viz-mode:focus,#params select:focus{outline:2px solid rgba(100,160,255,.55);border-color:transparent}#preview-field[hidden]{display:none}#params-shell button.action-btn,.map-select-bar button.action-btn,#cache-select-bar button.action-btn,#cache-clear-dialog button.action-btn,#openaip-expiry-dialog button.action-btn,#iconch-settings button.action-btn{padding:.45rem .75rem;border:1px solid rgba(255,120,120,.45);border-radius:.4rem;background:#ff505024;color:#ffd6d6;font-size:.82rem;cursor:pointer;white-space:nowrap}#params-shell button.action-btn:hover:not(:disabled),.map-select-bar button.action-btn:hover:not(:disabled),#cache-select-bar button.action-btn:hover:not(:disabled),#cache-clear-dialog button.action-btn:hover:not(:disabled),#openaip-expiry-dialog button.action-btn:hover:not(:disabled),#iconch-settings button.action-btn:hover:not(:disabled){background:#ff50503d}#params-shell button.action-btn:disabled,.map-select-bar button.action-btn:disabled,#cache-select-bar button.action-btn:disabled,#cache-clear-dialog button.action-btn:disabled,#openaip-expiry-dialog button.action-btn:disabled,#iconch-settings button.action-btn:disabled{opacity:.55;cursor:wait}#params-shell button.action-btn[hidden],.map-select-bar button.action-btn[hidden],#cache-select-bar button.action-btn[hidden]{display:none}#compute-stop-bar #stop-compute{width:100%;margin:0;padding:.45rem .85rem;border:1px solid rgba(255,140,80,.55);border-radius:.4rem;background:#ff783c2e;color:#ffe0cc;font-size:.82rem;cursor:pointer;white-space:nowrap}#compute-stop-bar #stop-compute:hover:not(:disabled){background:#ff783c4d}#compute-stop-bar #stop-compute:disabled{opacity:.55;cursor:wait}#compute-stop-bar #stop-compute[hidden],#compute-stop-bar .compute-stop-message[hidden],#compute-stop-bar[hidden]{display:none}.mode-airport-hint{position:fixed;left:50%;bottom:max(1rem,env(safe-area-inset-bottom));z-index:2;transform:translate(-50%);max-width:min(22rem,calc(100vw - 2rem));padding:.4rem .75rem;border-radius:.5rem;background:#12161cd1;color:#b8c4d4;font-size:.78rem;font-weight:500;letter-spacing:.01em;line-height:1.35;text-align:center;box-shadow:0 4px 16px #00000047;pointer-events:none}.mode-airport-hint[hidden]{display:none}body.has-compute-context .mode-airport-hint{bottom:calc(var(--compute-context-bar-height, 3.5rem) + max(.75rem,env(safe-area-inset-bottom)))}body.cache-select-mode .mode-airport-hint,body.manual-airport-select-mode .mode-airport-hint,body.app-menu-open .mode-airport-hint{display:none}#compute-context-bar{position:fixed;left:0;right:0;bottom:0;z-index:3;display:flex;flex-direction:column;padding:.55rem 1rem .7rem;text-align:center;color:#f0fff4;background:linear-gradient(180deg,#12482af7,#0a301cfa);border-top:3px solid #4ade80;box-shadow:0 -6px 28px #00000073;font-variant-numeric:tabular-nums;pointer-events:none}#compute-context-bar.compute-context-bar--orange{color:#fff8f0;background:linear-gradient(180deg,#5c3a12f7,#3a240afa);border-top-color:#fb923c}#compute-context-bar.compute-context-bar--red{color:#fff0f0;background:linear-gradient(180deg,#5c1818f7,#3a0c0cfa);border-top-color:#f87171}#compute-context-geo-stats{display:flex;flex-direction:column;width:100%;max-width:none}#compute-context-geo-stats[hidden]{display:none}#compute-context-geo-stats[hidden]+.compute-context-divider--before-params{display:none}.compute-context-divider{flex-shrink:0;height:1px;margin:.45rem -1rem;background:#ffffff38}#compute-context-bar.compute-context-bar--orange .compute-context-divider,#compute-context-bar.compute-context-bar--red .compute-context-divider{background:#ffffff3d}.compute-context-stat-row{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:flex-start;width:100%;gap:.75rem}.compute-context-stat-row[hidden]{display:none}.compute-context-stat-block{display:flex;flex-direction:column;flex:1 1 0;min-width:0;align-items:center;text-align:center}.compute-context-stat-block--start{align-items:flex-start;text-align:left}.compute-context-stat-block--center{align-items:center;text-align:center}.compute-context-stat-block--end{align-items:flex-end;text-align:right}#compute-context-dest-row .compute-context-stat-block--start{flex:1 1 0;min-width:0}#compute-context-dest-row .compute-context-stat-block--end{flex:0 0 auto;min-width:auto}.compute-context-stat-label{font-size:.62rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#ffffffc7;margin-bottom:.08rem}.compute-context-stat-value{font-size:1.75rem;font-weight:800;color:#fff;line-height:1.1;letter-spacing:.02em;white-space:nowrap;font-variant-numeric:tabular-nums}.compute-context-stat-subvalue{margin-top:.1rem;font-size:.95rem;font-weight:650;color:#ffffffe0;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;font-variant-numeric:tabular-nums}.compute-context-stat-subvalue[hidden],#compute-context-dest-icao[hidden],#compute-context-dest-name[hidden]{display:none}#compute-context-dest-name{font-size:1rem;font-weight:800;line-height:1.15;max-width:100%;white-space:normal;overflow-wrap:anywhere}#compute-context-params{font-size:1rem;font-weight:650;letter-spacing:.03em}#compute-context-bar[hidden]{display:none}#info{position:fixed;left:50%;bottom:1.25rem;transform:translate(-50%);z-index:2;display:none;width:min(92vw,36rem);max-width:min(92vw,36rem);padding:.55rem .75rem;border-radius:.75rem;background:#12161ceb;color:#f5f7fa;box-shadow:0 10px 30px #00000059;backdrop-filter:blur(8px);font-size:.82rem;line-height:1.35;overflow:hidden;box-sizing:border-box}#info.visible{display:block}body.has-compute-context #info.visible{bottom:3.35rem}#info .label{color:#9aa4b2;font-size:.68rem;text-transform:uppercase;letter-spacing:.04em}#info .value{font-variant-numeric:tabular-nums}#info .row{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem .85rem;margin-bottom:.45rem}#info .row .field{display:inline-flex;align-items:baseline;gap:.3rem;white-space:nowrap}#info .row.airspace-row{margin-bottom:.35rem}#info .row.airspace-row .field{flex-direction:column;align-items:stretch;white-space:normal;width:100%;min-width:0;max-width:100%}#airspace-info{display:flex;flex-direction:column;gap:.2rem;width:100%;min-width:0;max-width:100%;max-height:9rem;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}#airspace-info .cache-data-warning{color:#fb923c;font-size:.74rem;line-height:1.4}#airspace-info details{border:1px solid rgba(255,255,255,.1);border-radius:.35rem;padding:.1rem .35rem;background:#ffffff08;min-width:0;max-width:100%}#airspace-info summary{cursor:pointer;color:#e8eef4;font-size:.74rem;line-height:1.35;list-style-position:outside;overflow-wrap:anywhere;word-break:break-word}#airspace-info pre{margin:.3rem 0 .1rem;max-width:100%;max-height:9rem;overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.68rem;line-height:1.35;color:#d4deea}.status-row{display:none}@media(max-width:640px){#params-shell{top:.5rem;max-height:calc(100dvh - 1rem)}#params-scroll{max-height:none}.params-fields{grid-template-columns:1fr}#params input[type=number],#params input[type=text],#params input[type=range],#gradient-settings input[type=number],#params select,#viz-mode,.params-overlay-panel input[type=text],.params-overlay-panel input[type=number]{max-width:none}.param-step-btn{display:flex}.param-zoom-row{flex-direction:column;align-items:stretch}.param-zoom-input{width:100%}.param-resolution-hint{flex:0 0 auto;padding-bottom:0}#params .param-stepper input[type=number],#gradient-settings .param-stepper input[type=number]{-moz-appearance:textfield;appearance:textfield}#gradient-settings .param-stepper input[type=number]::-webkit-inner-spin-button,#gradient-settings .param-stepper input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}#params .param-stepper input[type=number]::-webkit-inner-spin-button,#params .param-stepper input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.params-section-actions{flex-direction:column;width:100%}.params-section-actions .action-btn{width:100%}#info{width:calc(100vw - 1rem);max-width:calc(100vw - 1rem);left:50%;bottom:.75rem}#airspace-info{max-height:min(40dvh,12rem)}#airspace-info pre{max-height:min(28dvh,8rem)}#info .row{gap:.3rem .55rem}}
