:root{color-scheme:light;--bg: #f3efe4;--ink: #132129;--muted: #52656d;--panel: rgba(252, 248, 241, .88);--edge: rgba(19, 33, 41, .12);--accent: #0d6f67;--accent-strong: #0a5751;--shadow: 0 24px 70px rgba(19, 33, 41, .18);--thumb: 3.9rem;--thumb-gap: calc(var(--thumb) * .1);--thumb-radius: calc(var(--thumb) * .18);--thumb-font: calc(var(--thumb) * .28);--thumb-font-small: calc(var(--thumb) * .22);--safe-top: env(safe-area-inset-top, 0px);--safe-right: env(safe-area-inset-right, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--app-height: 100vh;font-family:IBM Plex Sans,Avenir Next,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{margin:0;width:100%;height:100%}body{min-height:var(--app-height);background:radial-gradient(circle at top left,rgba(13,111,103,.16),transparent 30%),linear-gradient(180deg,#f6f1e7 0%,var(--bg) 100%);color:var(--ink)}@supports (height: 100dvh){:root{--app-height: 100dvh}}button{font:inherit}.mapShell{width:100%;height:var(--app-height)}.appShell{position:relative;width:100%;height:var(--app-height);overflow:hidden}.pageLayer{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;visibility:hidden;pointer-events:none}.pageLayer.isActive{opacity:1;visibility:visible;pointer-events:auto}.pageSurface,.appPage{position:relative;width:100%;height:100%}.mapSurface{position:relative;width:100%;height:100%;overflow:hidden;touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab}.mapSurface:active{cursor:grabbing}.mapBackdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at center,rgba(255,255,255,.18),transparent 40%),linear-gradient(180deg,#ffffff1a,#0b4e5f0a),var(--theme-chart-surface-bg)}.situationOverlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;pointer-events:none}.vectorOverlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;pointer-events:none;overflow:visible}.airspaceOverlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;pointer-events:none;overflow:visible}.airspaceLabel{paint-order:stroke;stroke:#ffffffeb;stroke-width:2px;fill:var(--theme-class-b-d-blue);font:700 14px/1 Avenir Next Condensed,Arial Narrow,sans-serif;letter-spacing:.04em;text-anchor:middle;dominant-baseline:central}.airspaceLabelDivider{stroke:var(--theme-class-b-d-blue);stroke-width:1.6px;stroke-linecap:square}.airspaceLabelDividerContrast{stroke:#ffffffeb;stroke-width:4px;stroke-linecap:square}.airspaceLabel-class_c .airspaceLabel{fill:var(--theme-class-c-magenta)}.airspaceLabel-class_c .airspaceLabelDivider{stroke:var(--theme-class-c-magenta)}.airspaceLabel-class_d .airspaceLabel{fill:var(--theme-class-b-d-blue)}.airspaceLabel-class_d .airspaceLabelDivider{stroke:var(--theme-class-b-d-blue)}.airspaceLabel-tfr .airspaceLabel{fill:var(--theme-tfr-red)}.airspaceLabel-tfr .airspaceLabelDivider{stroke:var(--theme-tfr-red)}.nexradOverlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none;overflow:hidden}.nexradFrame{position:absolute;display:block;max-width:none;opacity:.72;mix-blend-mode:multiply;image-rendering:pixelated;pointer-events:none;-webkit-user-select:none;user-select:none}.terrainOverlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;overflow:hidden}.terrainOverlayTile{position:absolute;display:block;max-width:none;opacity:.68;mix-blend-mode:multiply;pointer-events:none;-webkit-user-select:none;user-select:none}.nexradBadge{position:absolute;left:var(--thumb-gap);bottom:calc(var(--thumb) + (var(--thumb-gap) * 2) + var(--safe-bottom));z-index:2;padding:6px 9px;border:1px solid rgba(20,36,44,.18);border-radius:9px;background:#fcf8f1db;box-shadow:var(--shadow);color:#0b1c23d1;font-size:.72rem;font-weight:800;letter-spacing:.08em}.fixMarker{fill:var(--theme-intersection-cyan);stroke:#081218b3;stroke-width:2.5px;stroke-linejoin:round}.fixLabel{fill:#fff;font-size:14px;font-weight:700;letter-spacing:.08em;paint-order:stroke;stroke:#081218d1;stroke-width:3px;stroke-linejoin:round}.vorBand{fill:var(--theme-class-b-d-blue);stroke:#081218d1;stroke-width:1.6px;stroke-linejoin:round;paint-order:stroke fill}.vorBorder{fill:none;stroke:#081218d1;stroke-width:1.6px;stroke-linejoin:round}.vorLabel{fill:#fff;font-size:14px;font-weight:700;letter-spacing:.08em;paint-order:stroke;stroke:#081218d1;stroke-width:3px;stroke-linejoin:round}.airportMarker{stroke:#081218b3;stroke-width:2px}.airportTowered{fill:var(--theme-class-b-d-blue)}.airportUntowered{fill:var(--theme-class-c-magenta)}.airportOpenMarker{fill:none;stroke:var(--theme-class-c-magenta);stroke-width:2px}.airportOpenMarkerUnder{fill:none;stroke:#081218b3;stroke-width:4px}.airportSpecialGlyph{fill:none;stroke:#fff;stroke-linecap:round;stroke-linejoin:round;paint-order:stroke}.airportHeliportGlyph{fill:var(--theme-class-c-magenta);stroke:#081218b3;stroke-width:1.5px;font-size:17px;font-weight:800}.airportAnchorGlyph{stroke:var(--theme-class-c-magenta);stroke-width:2.2px;filter:drop-shadow(0 0 1px rgba(8,18,24,.85))}.airportLabel{fill:#fff;font-size:14px;font-weight:700;letter-spacing:.08em;paint-order:stroke;stroke:#081218d1;stroke-width:3px;stroke-linejoin:round}.airportToweredLabel,.airportUntoweredLabel{fill:#fff}.obstacleMarker{fill:none;stroke-width:1.2px;stroke-linecap:butt;stroke-linejoin:miter}.obstacleMarkerUnder{stroke:#081218d1;stroke-width:2.4px;stroke-linecap:butt;stroke-linejoin:miter}.obstacleDotUnder{fill:#081218d1}.obstacleDot{stroke:none}.obstacleDanger{stroke:#d83a2e}.obstacleCaution{stroke:#ffd34d}.obstacleMuted{stroke:#ffd34db8}.obstacleDangerFill{fill:#d83a2e}.obstacleCautionFill{fill:#ffd34d}.obstacleMutedFill{fill:#ffd34db8}.obstacleLabel{fill:#fff;font-size:12px;font-weight:700;letter-spacing:.06em;paint-order:stroke;stroke:#081218d1;stroke-width:3px;stroke-linejoin:round}.airportRunwayBarUnder{stroke:#081218b3;stroke-width:5px;stroke-linecap:round}.airportRunwayBar{stroke:#fff;stroke-width:3px;stroke-linecap:round}.situationStatus{position:absolute;top:var(--thumb-gap);right:var(--thumb-gap);z-index:4;padding:calc(var(--thumb) * .12) calc(var(--thumb) * .18);border-radius:calc(var(--thumb-radius) * .85);background:#fcf8f1e6;font-size:calc(var(--thumb) * .2);font-weight:800;letter-spacing:.04em;text-transform:uppercase;box-shadow:var(--shadow)}.situationStatus-live{color:#2a4f66}.situationStatus-simulated{color:#b1591a}.situationStatus-unknown{color:#b3261e}.trayScrim{position:absolute;top:0;right:0;bottom:0;left:0;z-index:6;border:0;padding:0;background:#0a10143d}.mapTile{position:absolute;display:block;pointer-events:none;overflow:hidden}.mapTileImage{display:block;width:100%;height:100%;object-fit:fill;pointer-events:none;-webkit-user-select:none;user-select:none}.tileLabel{position:absolute;top:6px;left:6px;z-index:1;padding:3px 6px;border-radius:6px;background:#0e161ce0;color:#f5f8fa;font-size:12px;font-weight:700;letter-spacing:.04em;text-shadow:none;border:1px solid rgba(255,255,255,.18)}.chartDock{position:absolute;top:var(--thumb-gap);left:var(--thumb-gap);z-index:4;display:flex;align-items:flex-start;gap:var(--thumb-gap);pointer-events:none}.settingsGrid{position:absolute;top:calc(var(--thumb-gap) + var(--thumb) + (var(--thumb) * .5));left:calc(var(--thumb-gap) + (var(--thumb) * .5));z-index:3;display:grid;grid-template-columns:repeat(3,calc(var(--thumb) * 2));gap:var(--thumb-gap)}.settingsButton:disabled{cursor:default}.chartDockDouble{gap:calc(var(--thumb-gap) * .8)}.chartDockColumn{position:relative;display:flex;align-items:flex-start;gap:var(--thumb-gap);pointer-events:none}.chartButton{width:var(--thumb);height:var(--thumb);padding:0;border:1px solid color-mix(in srgb,var(--theme-button-bg) 78%,black);border-radius:var(--thumb-radius);background-color:var(--theme-button-bg);background-image:linear-gradient(to bottom,transparent 0,transparent 50%,var(--tray-accent, var(--theme-button-bg)) 50%,var(--tray-accent, var(--theme-button-bg)) 100%);box-shadow:var(--shadow);color:var(--theme-button-fg);display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;pointer-events:auto;position:relative;overflow:hidden}.chartButtonIcon{position:absolute;top:8px;right:8px;bottom:8px;left:8px;width:calc(100% - 16px);height:calc(100% - 16px);object-fit:contain;object-position:center;pointer-events:none;-webkit-user-select:none;user-select:none;border-radius:calc(var(--thumb-radius) * .72);box-shadow:inset 0 0 0 8px var(--theme-class-b-d-blue);background:#ffffffd1}.chartButton:has(.chartButtonIcon){background-image:none;align-items:flex-end;padding-bottom:6px}.chartButton:has(.chartButtonIcon).isOpen{background-image:none}.chartButton:has(.chartButtonIcon).isDisabled,.chartButton:has(.chartButtonIcon):disabled{background-image:none}.chartButton.isOpen{background-color:color-mix(in srgb,var(--theme-button-bg) 88%,white);background-image:linear-gradient(to bottom,transparent 0,transparent 50%,var(--tray-accent, color-mix(in srgb, var(--theme-button-bg) 88%, white)) 50%,var(--tray-accent, color-mix(in srgb, var(--theme-button-bg) 88%, white)) 100%)}.chartButton.isDisabled{filter:saturate(.7);box-shadow:none}.chartButton.isDisabled,.chartButton:disabled{border-color:color-mix(in srgb,var(--theme-disabled-button) 78%,black);background-color:var(--theme-disabled-button);background-image:linear-gradient(to bottom,var(--theme-disabled-button) 0,var(--theme-disabled-button) 50%,var(--tray-accent, var(--theme-disabled-button)) 50%,var(--tray-accent, var(--theme-disabled-button)) 100%);color:var(--theme-button-fg)}.chartButtonLabel{position:relative;z-index:1;max-width:calc(var(--thumb) * .8);font-size:calc(var(--thumb) * .22);font-weight:700;letter-spacing:.04em;line-height:1.05;text-align:center;white-space:pre-line;text-shadow:-1px -1px 0 #000,0 -1px 0 #000,1px -1px 0 #000,-1px 0 0 #000,1px 0 0 #000,-1px 1px 0 #000,0 1px 0 #000,1px 1px 0 #000}.chartButtonWide{width:calc(var(--thumb) * 3);padding-inline:calc(var(--thumb) * .12)}.chartButtonDouble{width:calc(var(--thumb) * 2);height:calc(var(--thumb) * 2)}.chartButtonLabelWide{max-width:calc(var(--thumb) * 2.5)}.chartButtonLabelDouble{max-width:calc(var(--thumb) * 1.6)}.chartTray{display:flex;flex-direction:column;gap:var(--thumb-gap);max-height:calc(var(--app-height) - var(--safe-top) - var(--safe-bottom) - (var(--thumb) * 2) - (var(--thumb-gap) * 4));overflow-y:auto;overscroll-behavior:contain;padding:var(--thumb-gap);border:1px solid rgba(19,33,41,.14);border-radius:calc(var(--thumb-radius) + 2px);background:#fcf8f1f2;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transform:translate(calc(var(--thumb) * -.35));opacity:0;pointer-events:none;transition:transform .16s ease,opacity .16s ease}.chartTrayPortal{position:fixed;z-index:8}.chartTray.isOpen{transform:translate(0);opacity:1;pointer-events:auto}.trayButton{min-width:calc(var(--thumb) * 2.15);height:var(--thumb);padding:0 calc(var(--thumb) * .22);border:1px solid color-mix(in srgb,var(--theme-button-bg) 78%,black);border-radius:var(--thumb-radius);background:linear-gradient(to bottom,var(--theme-button-bg) 0,var(--theme-button-bg) 50%,var(--tray-accent, var(--theme-button-bg)) 50%,var(--tray-accent, var(--theme-button-bg)) 100%);color:var(--theme-button-fg);text-align:left;font-size:var(--thumb-font-small);font-weight:700;letter-spacing:.04em}.trayButtonWithIcon{min-width:calc(var(--thumb) * 2.9);padding-inline:calc(var(--thumb) * .14) calc(var(--thumb) * .22)}.trayButtonContent{display:flex;align-items:center;gap:calc(var(--thumb) * .16);width:100%}.trayButtonIconFrame{position:relative;flex:0 0 calc(var(--thumb) * .72);width:calc(var(--thumb) * .72);height:calc(var(--thumb) * .72);border-radius:calc(var(--thumb-radius) * .84);background:#ffffffd1;box-shadow:inset 0 0 0 8px var(--theme-button-bg);overflow:hidden}.trayButtonIcon{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;object-position:center}.trayButtonText{flex:1 1 auto;min-width:0}.trayButtonHasToggle{min-width:calc(var(--thumb) * 3.7)}.trayButtonToggle{position:relative;flex:0 0 calc(var(--thumb) * .78);width:calc(var(--thumb) * .78);height:calc(var(--thumb) * .42);margin-left:auto;border-radius:999px;background:color-mix(in srgb,var(--theme-button-bg) 48%,white);box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--theme-button-bg) 78%,black);transition:background-color .16s ease,box-shadow .16s ease}.trayButtonToggleKnob{position:absolute;top:50%;left:2px;width:calc(var(--thumb) * .3);height:calc(var(--thumb) * .3);border-radius:999px;background:#fffdf9;box-shadow:0 1px 3px #00000052;transform:translateY(-50%);transition:transform .3s ease}.trayButtonToggle.isOn{background:color-mix(in srgb,var(--theme-button-bg) 84%,white)}.trayButtonToggle.isOn .trayButtonToggleKnob{transform:translateY(-50%) translate(calc(var(--thumb) * .34))}.trayButtonToggle.isDisabled{opacity:.45}.chartTray.chartTrayWide .trayButton{width:calc(var(--thumb) * 4);min-width:calc(var(--thumb) * 4);height:var(--thumb);flex:0 0 auto}.trayButton.isActive{background:linear-gradient(to bottom,color-mix(in srgb,var(--theme-button-bg) 82%,white) 0,color-mix(in srgb,var(--theme-button-bg) 82%,white) 50%,var(--tray-accent, color-mix(in srgb, var(--theme-button-bg) 82%, white)) 50%,var(--tray-accent, color-mix(in srgb, var(--theme-button-bg) 82%, white)) 100%);border-color:transparent;color:var(--theme-button-fg)}.trayButton.isOn{background:linear-gradient(to bottom,color-mix(in srgb,var(--theme-button-bg) 84%,white) 0,color-mix(in srgb,var(--theme-button-bg) 84%,white) 50%,color-mix(in srgb,var(--tray-accent, var(--theme-button-bg)) 84%,white) 50%,color-mix(in srgb,var(--tray-accent, var(--theme-button-bg)) 84%,white));border-color:transparent;color:var(--theme-button-fg)}.trayButton.isOff{background:linear-gradient(to bottom,color-mix(in srgb,var(--theme-button-bg) 88%,black) 0,color-mix(in srgb,var(--theme-button-bg) 88%,black) 50%,color-mix(in srgb,var(--tray-accent, var(--theme-button-bg)) 88%,black) 50%,color-mix(in srgb,var(--tray-accent, var(--theme-button-bg)) 88%,black));color:var(--theme-button-fg)}.trayButtonSquare{width:var(--thumb);min-width:var(--thumb);padding:0;text-align:center;justify-content:center}.trayButton:disabled{border-color:color-mix(in srgb,var(--theme-disabled-button) 78%,black);background:linear-gradient(to bottom,var(--theme-disabled-button) 0,var(--theme-disabled-button) 50%,var(--tray-accent, var(--theme-disabled-button)) 50%,var(--tray-accent, var(--theme-disabled-button)) 100%);color:var(--theme-button-fg)}.debugFlag{margin:0;color:#9a2d00;font-size:.86rem;font-weight:700}.debugDock{position:absolute;left:var(--thumb-gap);bottom:calc(var(--thumb-gap) + var(--safe-bottom));z-index:4;width:var(--thumb);height:var(--thumb);pointer-events:none}.debugLauncher{position:absolute;left:0;bottom:0;width:var(--thumb);height:var(--thumb);padding:0;border:1px solid color-mix(in srgb,var(--theme-button-bg) 78%,black);border-radius:var(--thumb-radius);background:var(--theme-button-bg);box-shadow:var(--shadow);color:var(--theme-button-fg);font-size:calc(var(--thumb) * .22);font-weight:800;letter-spacing:.06em;pointer-events:auto}.debugLauncher.isWarn{background:#c8741b;border-color:color-mix(in srgb,#c8741b 72%,black);color:#fff7ef}.debugPanel{position:absolute;left:0;bottom:calc(var(--thumb) + var(--thumb-gap) + var(--safe-bottom));width:calc(var(--thumb) * 4);min-height:var(--thumb);overflow:hidden;opacity:0;pointer-events:none;border:1px solid rgba(19,33,41,.14);border-radius:var(--thumb-radius);background:#fcf8f1f2;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transform:translateY(calc(var(--thumb-gap) * .75));transition:opacity .16s ease,padding .16s ease,transform .16s ease;-webkit-user-select:text;user-select:text;cursor:text}.debugDock.isRightAligned .debugPanel{left:auto;right:0}.debugPanel.isOpen{opacity:1;pointer-events:auto;padding:calc(var(--thumb) * .12) calc(var(--thumb) * .16);transform:translateY(0)}.debugLine{font-size:calc(var(--thumb) * .16);line-height:1.15;font-weight:700;letter-spacing:.02em;white-space:nowrap;-webkit-user-select:text;user-select:text}.debugToggle{display:flex;align-items:center;gap:calc(var(--thumb) * .08);font-size:calc(var(--thumb) * .16);line-height:1.15;font-weight:700;letter-spacing:.02em;white-space:nowrap;color:#52656d;-webkit-user-select:none;user-select:none;cursor:pointer}.debugToggle input{width:calc(var(--thumb) * .2);height:calc(var(--thumb) * .2);margin:0}.navElement{position:absolute;left:50%;bottom:calc(var(--thumb-gap) + var(--safe-bottom));z-index:4;width:calc(var(--thumb) * 3);height:calc(var(--thumb) * .67);margin-left:calc(var(--thumb) * -1.5);padding:calc(var(--thumb) * .08) calc(var(--thumb) * .14) 0;border:1px solid var(--theme-panel-border);border-radius:calc(var(--thumb-radius) * .9);background:var(--theme-panel-fg);box-shadow:var(--shadow);color:#fff;display:flex;flex-direction:column;justify-content:stretch;align-items:stretch;text-align:center}.navElementStatic{position:static;left:auto;bottom:auto;margin-left:0}.navElementTop{flex:1 1 50%;min-height:0;font-size:calc(var(--thumb) * .18);font-weight:700;letter-spacing:.04em;line-height:1.05;display:flex;align-items:center;justify-content:center}.navElementBottom{width:100%;flex:1 1 50%;min-height:0;overflow:hidden;display:block}.navElementCdiCenter{fill:#fff}.navElementCdiDot{fill:none;stroke:#fff;stroke-width:2.2}.navElementCdiPointer{stroke:var(--theme-cdi-pointer);stroke-width:5.6;stroke-linecap:round}.navElementCdiOffscalePointer{fill:var(--theme-cdi-pointer);stroke:#ffd2dc;stroke-width:.8;stroke-linejoin:round}.navElementCdiOffscaleReadout{fill:var(--theme-cdi-pointer);font-size:14.4px;font-weight:800;letter-spacing:.02em;paint-order:stroke;stroke:#081218d1;stroke-width:2.6px;stroke-linejoin:round}.playbackWidget{position:absolute;right:var(--thumb-gap);bottom:calc(var(--thumb-gap) + var(--safe-bottom));z-index:4;min-width:calc(var(--thumb) * 2.8);padding:calc(var(--thumb) * .12);border:1px solid var(--theme-panel-border);border-radius:calc(var(--thumb-radius) * .9);background:#fcf8f1f0;box-shadow:var(--shadow);color:var(--theme-panel-fg);display:flex;flex-direction:column;gap:calc(var(--thumb) * .08);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.playbackWidget.isLeftDocked{left:var(--thumb-gap);right:auto}.playbackWidgetTop,.playbackWidgetRow,.playbackWidgetSeekRow{display:flex;align-items:center;gap:calc(var(--thumb) * .08)}.playbackWidgetOverview{width:100%;height:calc(var(--thumb) * .56);border:1px solid rgba(19,33,41,.12);border-radius:calc(var(--thumb-radius) * .45);background:#ffffffd1;overflow:hidden;touch-action:none;cursor:pointer}.playbackWidgetOverviewSvg{display:block;width:100%;height:100%}.playbackWidgetGapSpan{stroke:#1321292e;stroke-width:1}.playbackWidgetGapSpanBg{fill:#13212914}.playbackWidgetGapSpanLine{stroke:#13212961;stroke-width:1}.playbackWidgetAltitudeProfile,.playbackWidgetSpeedProfile{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.6}.playbackWidgetAltitudeProfile{stroke:#0d6f67cc}.playbackWidgetSpeedProfile{stroke:#d45a7aeb}.playbackWidgetGapSpan{opacity:.88}.playbackWidgetGapPatternBase{fill:#1321291f}.playbackWidgetGapPatternLine{stroke:#1321298c;stroke-width:2}.playbackWidgetCursorLine{stroke:#13212985;stroke-width:1}.playbackWidgetCursorKnob{fill:#132129;stroke:#fcf8f1f0;stroke-width:1.5}.playbackWidgetTop{justify-content:space-between}.playbackWidgetTitle,.playbackWidgetMeta,.playbackWidgetClock,.playbackWidgetRateLabel{font-size:calc(var(--thumb) * .16);font-weight:700;letter-spacing:.03em}.playbackWidgetTitle{min-width:0;flex:1 1 auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.playbackWidgetMeta,.playbackWidgetClock{color:var(--theme-panel-muted);flex:0 0 auto}.playbackWidgetInput,.playbackWidgetSeek,.playbackWidgetRate{width:100%;margin:0}.playbackWidgetInput{min-width:0;flex:1 1 auto;height:calc(var(--thumb) * .42);padding:0 calc(var(--thumb) * .1);border:1px solid rgba(19,33,41,.14);border-radius:calc(var(--thumb-radius) * .6);background:#fff;color:var(--theme-panel-fg);font-size:calc(var(--thumb) * .16)}.playbackWidgetButton{height:calc(var(--thumb) * .42);padding:0 calc(var(--thumb) * .14);border:1px solid rgba(19,33,41,.14);border-radius:calc(var(--thumb-radius) * .6);background:var(--theme-panel-fg);color:#fff;font-size:calc(var(--thumb) * .16);font-weight:800;letter-spacing:.04em}.playbackWidgetButton:disabled{opacity:.45}.playbackWidgetMediaButton{width:calc(var(--thumb) * .42);min-width:calc(var(--thumb) * .42);padding:0;display:inline-flex;align-items:center;justify-content:center;color:#fff}.playbackWidgetMediaIcon{width:calc(var(--thumb) * .24);height:calc(var(--thumb) * .24);display:block;fill:currentColor}.playbackWidgetRateLabel{min-width:0;flex:1 1 auto;display:flex;align-items:center;gap:calc(var(--thumb) * .08)}.playbackWidgetSeekRow{justify-content:space-between}.centerHereButton{position:absolute;right:var(--thumb-gap);bottom:calc(var(--thumb-gap) + var(--safe-bottom));z-index:4;width:var(--thumb);height:var(--thumb);border:1px solid color-mix(in srgb,var(--theme-button-bg) 78%,black);border-radius:var(--thumb-radius);background:var(--theme-button-bg);box-shadow:var(--shadow);color:var(--theme-button-fg);font-size:calc(var(--thumb) * .2);font-weight:800;letter-spacing:.06em}.centerHereButton.isActive{background:var(--accent);border-color:color-mix(in srgb,var(--accent) 72%,black);color:#fff}.centerHereButton:disabled{background:var(--theme-disabled-button);border-color:color-mix(in srgb,var(--theme-disabled-button) 72%,black);color:var(--theme-button-fg)}.pageChrome{position:absolute;top:var(--thumb-gap);left:var(--thumb-gap);z-index:3}.toolbarButton{width:var(--thumb);height:var(--thumb);border:1px solid rgba(19,33,41,.16);border-radius:var(--thumb-radius);background:#f6f1e7f0;box-shadow:var(--shadow);color:var(--ink);font-size:calc(var(--thumb) * .2);font-weight:700;letter-spacing:.04em}.toolbarButtonTopRight{position:absolute;top:var(--thumb-gap);right:var(--thumb-gap);z-index:4}.planPage{display:flex;flex-direction:column;padding:calc(var(--thumb) * 1.25) var(--thumb-gap) calc(var(--thumb) * .9);background:var(--theme-chart-surface-bg)}.planScrollViewport{position:relative;flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-bottom:calc(var(--thumb) * .1);margin-bottom:calc(var(--thumb) * .1)}.planScrollContent{position:relative;min-height:100%}.planScrollSurface{width:100%;overflow-x:auto;overflow-y:visible}.planTableWrap{position:relative}.planTableWrap.isStructured{--plan-structured-left-gutter: calc(var(--thumb) * .5);padding-left:var(--plan-structured-left-gutter);padding-right:var(--thumb-gap)}.planTableWrap.isStructured .planTable{gap:calc(var(--thumb) * .14);padding-top:calc(var(--thumb) * .22);background:transparent;box-shadow:none;width:max-content;min-width:100%}.planStructuredArrowLayer{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;overflow:visible;z-index:2}.planStructuredGroupBoxLayer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0}.planStructuredGroupBoxOverlay{position:absolute;border:2px solid color-mix(in srgb,var(--theme-panel-border) 88%,white);border-radius:calc(var(--thumb-radius) * 1.15);background:color-mix(in srgb,var(--theme-panel-bg) 80%,rgba(19,33,41,.06));box-shadow:inset 0 0 0 1px #ffffff38}.planStructuredArrowPath{fill:none;stroke:#d45a7a;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.planStructuredArrowHead{fill:#d45a7a}.planTable{display:grid;grid-template-columns:calc(var(--thumb) * 2.5) repeat(5,minmax(calc(var(--thumb) * 1.25),1fr));gap:1px;padding-top:calc(var(--thumb) * .15);background:#1321291a;border-radius:calc(var(--thumb-radius) * .9);overflow:visible;box-shadow:var(--shadow);position:relative;z-index:1}.planHeader,.planCell,.planWaypointCell{min-height:var(--thumb);padding:calc(var(--thumb) * .16);background:var(--theme-panel-bg);border:1px solid var(--theme-panel-border);border-radius:var(--thumb-radius);display:flex;align-items:center;transition:min-height .18s ease,padding .18s ease,margin-left .18s ease,font-size .18s ease,opacity .18s ease,border-color .18s ease,background-color .18s ease}.planHeader{min-height:calc(var(--thumb) * .5);padding:calc(var(--thumb) * .08) calc(var(--thumb) * .16);color:var(--theme-panel-muted);font-size:calc(var(--thumb) * .2);font-weight:700;letter-spacing:.05em;position:sticky;top:0;z-index:3}.planCell{color:var(--theme-panel-fg);font-weight:700;justify-content:flex-end;text-align:right}.planWaypointButton{position:relative;justify-content:space-between;gap:calc(var(--thumb) * .08);border-color:color-mix(in srgb,var(--theme-button-bg) 78%,black);background:var(--theme-button-bg);color:var(--theme-button-fg);font-size:calc(var(--thumb) * .24);font-weight:700}.planWaypointButton.isSelected{background:color-mix(in srgb,var(--theme-button-bg) 84%,black);border-color:color-mix(in srgb,var(--theme-button-bg) 68%,black)}.planStructuredWaypointCell{position:relative;position:sticky;left:var(--plan-structured-left-gutter, 0px);z-index:2}.planStructuredWaypointCell.isGroupHeader{background:var(--theme-header-button);border-color:color-mix(in srgb,var(--theme-header-button) 72%,black);font-weight:800}.planStructuredWaypointCell.isChildRow{margin-left:calc(var(--thumb) * .38)}.planStructuredDataCell.isChildRow{position:relative}.planStructuredWaypointCell.isDiscontinuityItem{color:#8b3e00;background:color-mix(in srgb,#c97832 18%,white)}.planStructuredLabel{position:relative;z-index:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-right:calc(var(--thumb) * .1)}.planStructuredLabel.isIndented{padding-left:calc(var(--thumb) * .18);transition:padding-left .18s ease,opacity .18s ease,transform .18s ease}.planWaypointSymbol{position:absolute;z-index:2;right:calc(var(--thumb) * .16);top:50%;transform:translateY(-50%);display:block;flex:0 0 calc(var(--thumb) * .78);width:calc(var(--thumb) * .78);height:calc(var(--thumb) * .78);margin-left:0;overflow:visible;pointer-events:none}.planHeader.planWaypointCell{left:var(--plan-structured-left-gutter, 0px);z-index:4}.planWaypointSymbol .airportMarker,.planWaypointSymbol .vorBand,.planWaypointSymbol .vorBorder,.planWaypointSymbol .fixMarker,.planWaypointSymbol .airportRunwayBarUnder,.planWaypointSymbol .airportRunwayBar,.planWaypointSymbol .airportAnchorGlyph{vector-effect:non-scaling-stroke}.planEntryCell{padding:0;background:transparent;border:0}.planEntryDock{margin-left:calc(var(--thumb) * .5);margin-right:var(--thumb-gap);margin-top:calc(var(--thumb) * .14);z-index:2}.planEntryForm{margin:0}.planEntryInputShell{position:relative;min-height:var(--thumb);border:1px solid color-mix(in srgb,var(--theme-button-bg) 76%,black);border-radius:var(--thumb-radius);background:color-mix(in srgb,white 88%,var(--theme-button-bg) 12%);overflow:hidden}.planEntryInputShell.isReady{border-color:color-mix(in srgb,#1d6f3a 72%,black)}.planEntryOverlay,.planEntryPlaceholder,.planEntryInput{padding:calc(var(--thumb) * .16) calc(var(--thumb) * .2);font:inherit;font-size:calc(var(--thumb) * .24);font-weight:700;line-height:1.2}.planEntryOverlay,.planEntryPlaceholder{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;white-space:pre-wrap;overflow:hidden}.planEntryPlaceholder{color:color-mix(in srgb,var(--theme-panel-muted) 80%,transparent)}.planEntryInput{position:relative;width:100%;min-height:var(--thumb);border:0;background:transparent;color:transparent;caret-color:var(--theme-panel-fg);text-transform:uppercase}.planEntryInput:focus{outline:none}.planEntrySegment.isNeutral{color:var(--theme-panel-fg)}.planEntrySegment.isRecognized{color:#1d6f3a}.planEntrySegment.isInvalid{color:#ab2d1f}.planEntrySegment.hasIssue{text-decoration:underline;text-decoration-thickness:2px;text-decoration-color:#ab2d1f;text-underline-offset:calc(var(--thumb) * .08)}.planEntryFeedback{margin-top:calc(var(--thumb-gap) * .6);padding:calc(var(--thumb) * .08) calc(var(--thumb) * .16);border-radius:calc(var(--thumb-radius) * .7);background:color-mix(in srgb,white 82%,#ab2d1f 18%);color:#7a1f16;font-size:calc(var(--thumb) * .18);font-weight:700}.planTableWrap.isReordering .planStructuredWaypointCell.isChildRow,.planTableWrap.isReordering .planStructuredDataCell.isChildRow{min-height:calc(var(--thumb) * .34);padding-top:calc(var(--thumb) * .05);padding-bottom:calc(var(--thumb) * .05);opacity:.72}.planTableWrap.isReordering .planStructuredWaypointCell.isChildRow{margin-left:calc(var(--thumb) * .48)}.planTableWrap.isReordering .planStructuredWaypointCell.isChildRow .planStructuredLabel{transform:scaleY(.72);transform-origin:left center}.planTableWrap.isReordering .planStructuredDataCell.isChildRow{font-size:calc(var(--thumb) * .18)}.planFooter{position:absolute;left:50%;bottom:calc(var(--thumb-gap) + var(--safe-bottom));transform:translate(-50%);color:var(--muted);font-size:calc(var(--thumb) * .22);font-weight:700}@media (max-width: 720px) and (orientation: portrait){.planPage{padding-right:calc(var(--thumb-gap) * .5)}.planScrollSurface{overflow-x:auto;overflow-y:auto;padding-right:0}.planTableWrap.isStructured .planTable{min-width:max-content}.planTable{grid-template-columns:calc(var(--thumb) * 2) repeat(5,calc(var(--thumb) * 1))}.planHeader,.planCell,.planWaypointCell{padding-left:calc(var(--thumb) * .12);padding-right:calc(var(--thumb) * .12)}.planStructuredWaypointCell.isChildRow{margin-left:calc(var(--thumb) * .24)}.planStructuredLabel{overflow:visible;text-overflow:clip;padding-right:calc(var(--thumb) * .02)}.planStructuredLabel.isIndented{padding-left:calc(var(--thumb) * .08)}.planWaypointSymbol{right:calc(var(--thumb) * .08)}}.waypointModal{position:absolute;top:calc(var(--thumb) * 1.25);left:calc(var(--thumb-gap) + var(--thumb) * 3.15);width:min(calc(var(--thumb) * 2.35),calc(100% - var(--thumb-gap) * 2 - var(--thumb) * 3.15));max-height:calc(var(--app-height) - var(--safe-top) - var(--safe-bottom) - (var(--thumb) * 2.25));overflow-y:auto;overflow-x:hidden;box-sizing:border-box}.waypointModal{z-index:8;display:flex;flex-direction:column;gap:var(--thumb-gap);padding:var(--thumb-gap);bottom:auto;border:1px solid rgba(19,33,41,.12);border-radius:calc(var(--thumb-radius) + 2px);background:#fcf8f1f5;box-shadow:var(--shadow)}.waypointModal.isReorder{width:min(calc(var(--thumb) * 4),calc(100% - var(--thumb-gap) * 2 - var(--thumb) * 3.15));right:auto;bottom:auto;align-items:center;justify-content:flex-start}.waypointModal.isAirportInsert{width:calc(100% - var(--thumb-gap) * 2 - var(--thumb) * 3.15)}.waypointReorderTray{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--thumb-gap);width:100%}.waypointActionTray{display:flex;flex-direction:column;gap:var(--thumb-gap)}.airportInsertTray{align-items:stretch;width:100%}.airportInsertInputRow{display:flex;align-items:center;gap:var(--thumb-gap)}.airportInsertTitle{flex:0 0 auto}.airportInsertInput{flex:1 1 auto;min-width:calc(var(--thumb) * 2);height:var(--thumb);border:1px solid var(--theme-panel-border);border-radius:var(--thumb-radius);background:#fff;color:var(--theme-panel-fg);font-size:calc(var(--thumb) * .46);font-weight:800;text-align:center;text-transform:uppercase}.airportInsertEnter{flex:0 0 calc(var(--thumb) * 1.25)}.airportInsertSuggestions{display:flex;flex-direction:column;align-items:center;gap:calc(var(--thumb-gap) * .6)}.airportInsertSuggestion{display:flex;justify-content:space-between;gap:var(--thumb-gap);width:calc(var(--thumb) * 3);min-height:calc(var(--thumb) * .9);text-align:left}.airportInsertSuggestionMain{display:flex;min-width:0;flex-direction:column;align-items:flex-start;justify-content:center;gap:calc(var(--thumb-gap) * .2)}.airportInsertSuggestionName{max-width:calc(var(--thumb) * 1.8);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:calc(var(--thumb) * .18);font-weight:700;line-height:1}.airportInsertSuggestionMeta{flex:0 0 auto;align-self:center;font-size:calc(var(--thumb) * .18)}.airwayLoadingPanel{display:flex;min-height:calc(var(--thumb) * 3);flex-direction:column;align-items:center;justify-content:center;gap:calc(var(--thumb) * .18)}.spinner{width:calc(var(--thumb) * .42);height:calc(var(--thumb) * .42);border-radius:50%;border:calc(var(--thumb) * .06) solid color-mix(in srgb,var(--theme-panel-border) 80%,white);border-top-color:#d45a7a;animation:spin .9s linear infinite}.airwaySuggestionGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--thumb),var(--thumb)));gap:var(--thumb-gap);justify-content:start}.airwaySuggestionButton{width:var(--thumb);min-width:var(--thumb);max-width:var(--thumb)}.airwayChoiceButton{position:relative;width:calc(var(--thumb) * 2);min-width:calc(var(--thumb) * 2);max-width:calc(var(--thumb) * 2);min-height:var(--thumb)}.airwayChoiceButton.isSuggested{border-color:#d45a7a;box-shadow:0 0 0 2px #d45a7a38}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.chartImage{position:absolute;transform-origin:top left;-webkit-user-select:none;user-select:none;pointer-events:none;box-shadow:0 14px 46px #13212938}.chartSurface{background:var(--theme-chart-surface-bg)}.plateFolderGrid{position:absolute;inset:calc(var(--thumb) + (var(--thumb-gap) * 2.2)) calc(var(--thumb) * .3) calc(var(--thumb) * .3);z-index:1;display:grid;grid-template-columns:repeat(auto-fill,calc(var(--thumb) * 2));gap:calc(var(--thumb) * .3);align-content:start;overflow:auto;padding:calc(var(--thumb) * .3)}.plateThumb{width:calc(var(--thumb) * 2);height:calc(var(--thumb) * 3);padding:0;border:1px solid rgba(19,33,41,.16);border-radius:calc(var(--thumb-radius) * .9);background:transparent;box-shadow:var(--shadow);overflow:hidden}.plateThumb.isActive{outline:2px solid var(--accent);outline-offset:2px}.plateThumbMedia{position:relative;width:100%;height:100%}.plateThumbImage{display:block;width:100%;height:100%;object-fit:contain;object-position:center center}.plateThumbLabel{position:absolute;left:0;right:0;bottom:0;min-height:calc(var(--thumb) * .72);padding:calc(var(--thumb) * .1) calc(var(--thumb) * .12);color:#fff7ef;font-size:calc(var(--thumb) * .18);font-weight:700;line-height:1.08;text-align:left;overflow:hidden}.hud{position:absolute;z-index:2;max-width:min(18rem,calc(100vw - 32px));padding:12px 14px;border:1px solid var(--edge);border-radius:18px;background:var(--panel);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow)}.hudBottom{left:var(--thumb-gap);bottom:calc(var(--thumb-gap) + var(--safe-bottom))}.facts{display:flex;gap:8px;margin:0}.facts div{min-width:calc(var(--thumb) * 1.16);padding:10px 12px;border-radius:14px;background:#ffffff8f}.facts dt{margin-bottom:6px;color:var(--muted);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}.facts dd{margin:0;font-weight:700}@media (max-width: 720px){.planTable{grid-template-columns:calc(var(--thumb) * 2) repeat(5,var(--thumb))}.planHeader,.planCell,.planWaypointCell{padding:calc(var(--thumb) * .12)}.planStructuredWaypointCell.isChildRow{margin-left:calc(var(--thumb) * .2)}.planStructuredLabel{text-overflow:clip}.planStructuredLabel.isIndented{padding-left:calc(var(--thumb) * .1);padding-right:calc(var(--thumb) * .42)}.hud{max-width:calc(100vw - 24px);padding:10px 12px}.hudBottom{left:var(--thumb-gap);right:var(--thumb-gap);bottom:calc(var(--thumb-gap) + var(--safe-bottom))}.facts{flex-wrap:wrap}.chartTray{transform:translateY(calc(var(--thumb) * -.2))}.chartTray.isOpen{transform:translateY(0)}}
