html {
  font-size: 14px;
}

a.navbar-brand {
  white-space: normal;
  text-align: center;
  word-break: break-all;
}

a {
  color: #0077cc;
}

.border-top {
  border-top: 1px solid #e5e5e5;
}

.border-bottom {
  border-bottom: 1px solid #e5e5e5;
}

.box-shadow {
  box-shadow: 0 .25rem .75rem rgba(0, 0, 0, .05);
}

.footer {
  position: absolute;
  bottom: 0;
  width: 100%;
  white-space: nowrap;
  line-height: 60px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html,
body {
  height: 100%;
}

html {
  color-scheme: dark;
}

body {
  margin: 0;
  background-color: #000000;
  color: #ffffff;
}

.application-content { height: 100%; }

.cesium-map {
  height: 100%;
  width: 100%;
}

.map-action-button {
  position: fixed;
  z-index: 1;
  top: 16px;
  left: 16px;
  border: 0;
  border-radius: 4px;
  padding: 10px 14px;
  background: #2196e5;
  color: #fff;
  font-size: 14px;
  cursor: pointer;
}

.airport-modal {
  width: min(440px, calc(100vw - 32px));
  border: 0;
  border-radius: 8px;
  padding: 0;
  background: #fff;
  color: #27445a;
  box-shadow: 0 20px 56px rgba(17, 61, 90, .28);
}

.airport-modal::backdrop { background: rgba(17, 61, 90, .36); }
.airport-modal__form { padding: 24px; font-family: Arial, Helvetica, sans-serif; }
.airport-modal__header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 24px; }
.airport-modal__header h2 { margin: 0; color: #174868; font-size: 20px; font-weight: 700; }
.airport-modal__close:not(.sight-settings-button) { display: inline-flex; flex: 0 0 32px; align-items: center; justify-content: center; width: 32px; height: 32px; border: 1px solid rgba(255,255,255,.16); border-radius: 6px; padding: 0; background: rgba(255,255,255,.04); color: rgba(255,255,255,.78); font-size: 0; line-height: 1; cursor: pointer; transition: background .15s ease, border-color .15s ease, color .15s ease; }
.airport-modal__close:not(.sight-settings-button)::after { width: 16px; height: 16px; background: currentColor; content: ""; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 6 18 18M18 6 6 18' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat; }
.airport-modal__close:not(.sight-settings-button):hover { border-color: rgba(255,255,255,.34); background: rgba(255,255,255,.1); color: #fff; }
.airport-modal__close:not(.sight-settings-button):focus-visible { outline: 2px solid #00a8e8; outline-offset: 2px; }
.airport-modal__form label { display: block; margin-bottom: 7px; color: #27445a; font-size: 13px; font-weight: 600; }
.airport-modal__form label:has(input[required], select[required])::before { margin-right: 4px; color: #c84b4b; content: "*"; }
.airport-modal__form input { box-sizing: border-box; width: 100%; height: 40px; border: 1px solid #b9cedc; border-radius: 5px; padding: 0 11px; background: #fff; color: #27445a; font: inherit; }
.airport-modal__form select { box-sizing: border-box; width: 100%; height: 40px; border: 1px solid #b9cedc; border-radius: 5px; padding: 0 36px 0 11px; background: #fff; color: #27445a; font: inherit; cursor: pointer; }
.airport-modal__form label { margin-top: 14px; }
.airport-modal__form label:first-of-type { margin-top: 0; }
.airport-modal__form input:focus { border-color: #2196e5; outline: 2px solid rgba(33, 150, 229, .18); outline-offset: 0; }
.airport-modal__form select:focus { border-color: #2196e5; outline: 2px solid rgba(33, 150, 229, .18); outline-offset: 0; }
.airport-modal__message { min-height: 18px; margin: 8px 0 0; color: #c84b4b; font-size: 12px; }
.airport-modal__warning { margin: 0; color: #27445a; font-size: 14px; line-height: 1.5; }
.airport-modal__warning strong { color: #174868; }
.airport-modal__actions { display: flex; justify-content: flex-end; gap: 10px; margin-top: 22px; }
.airport-modal__actions button { min-width: 84px; height: 36px; border-radius: 5px; padding: 0 14px; font: inherit; font-size: 13px; font-weight: 600; cursor: pointer; }
.airport-modal__cancel { border: 1px solid #b9cedc; background: #fff; color: #27445a; }
.airport-modal__cancel:hover { background: #eaf5fd; }
.airport-modal__submit { border: 1px solid #2196e5; background: #2196e5; color: #fff; }
.airport-modal__submit:hover { background: #197fc4; border-color: #197fc4; }
.airport-modal__submit:disabled { cursor: wait; opacity: .65; }
.airport-modal__delete { border: 1px solid #c84b4b; background: #c84b4b; color: #fff; }
.airport-modal__delete:hover { border-color: #af3939; background: #af3939; }
.airport-modal__delete:disabled { cursor: wait; opacity: .65; }
.mania-plan-builder { width: min(620px, calc(100vw - 32px)); }
.mania-runways { display: grid; gap: 12px; margin-top: 18px; }
.mania-runway-card { display: grid; grid-template-columns: 1fr 1fr auto; gap: 12px; align-items:end; padding: 16px; border: 1px solid #c9dce8; border-radius: 7px; background:#f8fbfd; }
.mania-runway-card__title { grid-column:1/-1; color:#174868; font-weight:700; }
.mania-threshold-details { grid-column:1/-1; display:grid; grid-template-columns:1fr 1fr; gap:8px; color:#527187; font-size:12px; }
.mania-threshold-details div { padding:8px; border-radius:4px; background:#fff; }
.mania-threshold-details strong,.mania-threshold-details span { display:block; }
.mania-runway-card label { margin:0!important; }
.mania-runway-midpoints { grid-column: 1 / -1; border-top: 1px solid #c9dce8; padding-top: 12px; }
.mania-runway-midpoints__header { display:flex; align-items:center; justify-content:space-between; color:#174868; font-size:13px; }
.mania-add-midpoint { height:36px; border:1px solid #2196e5; border-radius:5px; padding:0 12px; background:#2196e5; color:#fff; font:inherit; font-size:12px; font-weight:600; cursor:pointer; }
.mania-add-midpoint:hover { background:#197fc4; border-color:#197fc4; }
.mania-runway-midpoint { display:grid; grid-template-columns:minmax(0, 1fr) minmax(0, 2fr) auto; gap:8px; align-items:end; margin-top:8px; }
.mania-runway-midpoint label { font-size:12px; }
.mania-runway-midpoint__details { display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:8px; }
.mania-runway-midpoint button { width:40px; height:40px; align-self:end; border:0; border-radius:5px; background:#f9e8e8; color:#c84b4b; font-size:20px; line-height:1; cursor:pointer; }
.mania-create-runway,.mania-add-runway { height:40px; border:1px solid #2196e5; border-radius:5px; padding:0 14px; background:#2196e5; color:#fff; font-weight:600; cursor:pointer; }
.mania-add-runway { width:100%; margin-top:12px; background:#fff; color:#176da8; }
.mania-runway-card.is-created { border-color:#2196e5; background:#eaf5fd; }
.mania-plan-inputs { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:12px; margin-top:12px; padding:16px; border:1px solid #c9dce8; border-radius:7px; background:#f8fbfd; }
.mania-plan-inputs h3 { grid-column:1/-1; margin:0 0 2px; color:#174868; font-size:15px; }
.mania-plan-inputs > label:first-of-type { grid-column:1/-1; }
.mania-plan-inputs > label[hidden] { display:none!important; }
.mania-plan-inputs__options { grid-column:1/-1; display:flex; flex-wrap:wrap; gap:10px 18px; padding-top:2px; }
.mania-plan-inputs__options label { display:flex; align-items:center; gap:7px; margin:0!important; color:#527187!important; font-size:12px; font-weight:600; }
.mania-plan-inputs__options input { width:16px; height:16px; margin:0; accent-color:#2196e5; }

.ols-runway-dialog { width:min(900px, calc(100vw - 32px)); }
.ols-runway-dialog .airport-modal__header { align-items:flex-start; margin-bottom:18px; }
.ols-runway-dialog .airport-modal__header p { margin:5px 0 0; color:#527187; font-size:12px; line-height:1.45; }
.ols-runway-inputs { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:16px; }
.ols-runway-inputs__endpoint { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:12px; align-content:start; padding:16px; border:1px solid #c9dce8; border-radius:8px; background:#f8fbfd; }
.ols-runway-inputs__endpoint h3 { grid-column:1/-1; margin:0 0 2px; color:#174868; font-size:15px; }
.ols-runway-inputs__endpoint label { margin:0!important; }
.ols-runway-inputs__endpoint label:first-of-type { grid-column:1/-1; }

@media (max-width: 680px) {
  .ols-runway-inputs { grid-template-columns:1fr; }
}

@media (prefers-color-scheme: dark) {
  .airport-modal { background: #16384f; color: #e4f0f7; }
  .airport-modal__header h2, .airport-modal__form label { color: #e4f0f7; }
  .airport-modal__warning { color: #e4f0f7; }
  .airport-modal__warning strong { color: #fff; }
  .airport-modal__close { color: #a8c4d7; }
  .airport-modal__close:hover, .airport-modal__cancel:hover { background: #23536f; color: #fff; }
  .airport-modal__form input { border-color: #4e7790; background: #102f43; color: #fff; }
  .airport-modal__form select { border-color: #4e7790; background: #102f43; color: #fff; }
  .airport-modal__cancel { border-color: #4e7790; background: #16384f; color: #e4f0f7; }
  .mania-runway-midpoints { border-color:#4e7790; }
  .mania-runway-midpoints__header { color:#e4f0f7; }
  .mania-add-midpoint { border-color:#2196e5; background:#2196e5; color:#fff; }
  .mania-runway-midpoint button { background:#5a2b34; color:#ffd6dc; }
  .mania-plan-inputs { border-color:#4e7790; background:#102f43; }
  .mania-plan-inputs h3 { color:#e4f0f7; }
  .mania-plan-inputs__options label { color:#a8c4d7!important; }
  .ols-runway-dialog .airport-modal__header p { color:#a8c4d7; }
  .ols-runway-inputs__endpoint { border-color:#4e7790; background:#102f43; }
  .ols-runway-inputs__endpoint h3 { color:#e4f0f7; }
}

.mania-plan-modal {
  box-sizing: border-box;
  width: min(1200px, calc(100% - 32px));
  max-width: none;
  max-height: min(820px, calc(100% - 32px));
  border: 0;
  border-radius: 6px;
  padding: 0;
  box-shadow: 0 16px 48px rgba(0, 0, 0, .35);
}

.mania-plan-modal::backdrop {
  background: rgba(0, 0, 0, .45);
}

.mania-plan-page {
  box-sizing: border-box;
  min-height: 100%;
  padding: 18px;
  background: #fff;
  color: #686868;
  font-family: Arial, Helvetica, sans-serif;
}

.mania-plan-page__header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 49px; }
.mania-plan-page h1 { margin: 0; font-size: 17px; font-weight: 400; }
.mania-plan-close { border: 0; padding: 0; background: transparent; color: #767676; font-size: 27px; line-height: 1; cursor: pointer; }
.mania-plan-form { max-width: 1124px; margin: 0 auto; }
.mania-plan-runway { display: grid; gap: 11px; }
.mania-plan-runway__row { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 11px; }
.mania-plan-form label { display: grid; gap: 3px; color: #666; font-size: 13px; }
.mania-plan-form input:not([type="checkbox"]), .mania-plan-form select { box-sizing: border-box; width: 100%; height: 38px; border: 1px solid #dedede; border-radius: 5px; padding: 7px 12px; background: #fff; color: #555; font-size: 13px; }
.mania-plan-actions { display: flex; gap: 30px; margin: 20px 0 19px; }
.mania-plan-actions button { display: inline-flex; align-items: center; justify-content: space-between; min-width: 170px; border: 0; padding: 0 2px; background: transparent; color: #676767; font-size: 13px; cursor: pointer; }
.mania-plan-actions span { font-size: 19px; }
.mania-plan-divider { height: 2px; background: #202020; }
.mania-plan-details { display: grid; grid-template-columns: repeat(3, 175px); gap: 73px; margin: 8px 0 26px 17px; }
.mania-plan-options { display: flex; align-items: center; gap: 76px; margin-left: 17px; }
.mania-plan-switch, .mania-plan-checkbox { display: inline-flex !important; grid-auto-flow: column; align-items: center; gap: 10px !important; white-space: nowrap; }
.mania-plan-switch input, .mania-plan-checkbox input { position: absolute; opacity: 0; }
.mania-plan-switch span { position: relative; width: 31px; height: 18px; border-radius: 10px; background: #b7c2cb; }
.mania-plan-switch span::after { position: absolute; top: 3px; left: 3px; width: 12px; height: 12px; border-radius: 50%; background: #fff; content: ""; }
.mania-plan-switch input:checked + span { background: #2196e5; }
.mania-plan-switch input:checked + span::after { transform: translateX(13px); }
.mania-plan-checkbox span { box-sizing: border-box; width: 15px; height: 15px; border: 2px solid #aeb9c2; }
.mania-plan-checkbox input:checked + span { border-color: #2196e5; background: #2196e5; }
.mania-plan-actions--runway { margin: 21px 0 0 17px; }
.mania-plan-submit { display: flex; justify-content: flex-end; margin-top: 25px; }
.mania-plan-submit button { min-width: 80px; height: 37px; border: 0; border-radius: 4px; background: #2196e5; color: #fff; font-size: 12px; cursor: pointer; }

@media (max-width: 900px) {
  .mania-plan-runway__row { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .mania-plan-details { gap: 24px; margin-left: 0; }
  .mania-plan-options { gap: 28px; margin-left: 0; }
}

@media (max-width: 580px) {
  .mania-plan-modal { width: calc(100% - 16px); max-height: calc(100% - 16px); }
  .mania-plan-runway__row, .mania-plan-details { grid-template-columns: 1fr; }
  .mania-plan-options { flex-direction: column; align-items: flex-start; gap: 16px; margin-left: 0; }
  .mania-plan-actions { gap: 8px; justify-content: space-between; }
  .mania-plan-actions button { min-width: auto; gap: 12px; }
}

@media (prefers-color-scheme: dark) {
  :root {
    color-scheme: dark;
  }

  body {
    background-color: #212529;
    color: #f8f9fa;
  }

  .navbar {
    background-color: #212529 !important;
    border-color: #6c757d !important;
  }

  .navbar-brand,
  .nav-link,
  .footer,
  .footer a {
    color: #f8f9fa !important;
  }

  .mania-plan-modal { background: #212529; }
  .mania-plan-page { background: #212529; color: #f8f9fa; }
  .mania-plan-form label, .mania-plan-actions button { color: #e3e6e9; }
  .mania-plan-form input:not([type="checkbox"]), .mania-plan-form select { border-color: #5b636b; background: #30353a; color: #f4f6f8; }
  .mania-plan-divider { background: #e3e6e9; }
}

.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
  color: var(--bs-secondary-color);
  text-align: end;
}

@font-face { font-family: "Mosafin"; src: url("../fonts/Mosafin-SemiBold.ttf") format("truetype"); font-weight: 600; font-display: swap; }
@font-face { font-family: "Mosafin"; src: url("../fonts/Mosafin-Bold.ttf") format("truetype"); font-weight: 700; font-display: swap; }
@font-face { font-family: "Tomorrow"; src: url("../fonts/Tomorrow-Regular.ttf") format("truetype"); font-weight: 400; font-display: swap; }

.map-action-button { text-decoration: none; }
.map-action-button--shell { top: 16px; }
#openManiaPlanButton { top: 64px; }

#shellLayoutViewport { width: 100%; height: 100%; }
.language-settings-sheet__rtl-option { display: inline-flex; align-items: center; gap: 5px; margin: 0 12px 0 4px; color: rgba(255,255,255,.9); font: 400 12px "Tomorrow", sans-serif; white-space: nowrap; cursor: pointer; }
.aircraft-timeline { position: fixed; inset-inline-start: 50%; inset-block-end: 12px; transform: translateX(-50%); width: min(500px, calc(100vw - 160px)); max-height: 40vh; overflow: auto; padding: 10px 14px; z-index: 951; color: #fff; font: 12px sans-serif; pointer-events: auto; --glass-breath: 0px; }
.aircraft-timeline[hidden] { display: none; }
.aircraft-timeline summary { cursor: pointer; }
.aircraft-timeline > span { display: block; margin-block: 8px; }
.aircraft-timeline input[type="range"] { width: 100%; direction: ltr; }
.aircraft-timeline form, .aircraft-timeline > div { display: flex; gap: 8px; margin-block-start: 8px; }
.aircraft-timeline button, .aircraft-timeline input[type="datetime-local"] { padding: 6px 10px; border: 1px solid rgba(255,255,255,.2); border-radius: 6px; color: #fff; background: rgba(255,255,255,.08); font: inherit; }
.aircraft-timeline input[type="datetime-local"] { flex: 1; min-width: 0; color-scheme: dark; direction: ltr; }
.aircraft-timeline button { cursor: pointer; }
.aircraft-timeline button:disabled { opacity: .4; cursor: default; }
.aircraft-timeline-bounds { font-size: 10px; direction: ltr; }
html[dir="rtl"] .aircraft-timeline { transform: translateX(50%); }
body:has(.aircraft-timeline[open]:not([hidden])) .aircraft-focus-status { inset-block-end: 260px; }
body:has(.aircraft-timeline[open]:not([hidden])) .aircraft-route-status { inset-block-end: 320px; }
.aircraft-cockpit-overlay { position: fixed; inset: 0; z-index: 940; pointer-events: none; color: #fff; }
.aircraft-cockpit-overlay[hidden] { display: none; }
.aircraft-cockpit-overlay::before { content: '+'; position: absolute; inset-inline-start: 50%; inset-block-start: 50%; font: 28px monospace; }
.aircraft-cockpit-overlay span { position: absolute; inset-block-end: 24px; inset-inline: 0; text-align: center; font: 14px monospace; text-shadow: 0 1px 3px #000; }
.aircraft-action-menu, .aircraft-detail-panel, .aircraft-focus-status, .aircraft-route-status { position: fixed; z-index: 950; padding: 12px; color: #fff; pointer-events: auto; font: 13px sans-serif; --glass-breath: 0px; }
.aircraft-action-menu[hidden], .aircraft-detail-panel[hidden], .aircraft-focus-status[hidden], .aircraft-route-status[hidden] { display: none; }
.aircraft-action-buttons { display: flex; gap: 6px; margin-block-start: 8px; }
.aircraft-action-button { display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; border: 1px solid transparent; border-radius: 6px; padding: 6px; color: rgba(255,255,255,.8); background: transparent; cursor: pointer; }
.aircraft-action-button svg { width: 20px; height: 20px; }
.aircraft-action-button:hover, .aircraft-action-button[aria-pressed="true"] { color: #fff; background: rgba(255,255,255,.15); }
.aircraft-action-button:disabled { opacity: .35; cursor: default; }
.aircraft-action-button:focus-visible { outline: 2px solid #fff; }
.aircraft-action-menu > strong { display: block; min-height: 24px; padding-inline-end: 36px; }
.aircraft-timeline > summary { min-height: 24px; padding-inline-end: 36px; }
.aircraft-action-menu > .aircraft-panel-close, .aircraft-timeline > .aircraft-panel-close { position: absolute; inset-block-start: 6px; inset-inline-end: 6px; width: 32px; height: 32px; padding: 6px; border: 1px solid transparent; background: transparent; }
.aircraft-action-menu > .aircraft-panel-close:hover, .aircraft-timeline > .aircraft-panel-close:hover { background: rgba(255,255,255,.15); }
.aircraft-detail-panel { inset-inline-end: 20px; inset-block-start: 100px; width: min(330px, calc(100vw - 40px)); max-height: calc(100vh - 130px); overflow: auto; }
.aircraft-detail-panel > .aircraft-action-button { float: inline-end; }
.aircraft-detail-panel dl { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 8px; clear: both; }
.aircraft-detail-panel dt { opacity: .65; }
.aircraft-detail-panel dd { margin: 0; overflow-wrap: anywhere; }
.aircraft-focus-status, .aircraft-route-status { inset-inline-start: 50%; transform: translateX(-50%); inset-block-end: 70px; display: flex; align-items: center; gap: 12px; max-width: calc(100vw - 40px); }
.aircraft-route-status { inset-block-end: 130px; }
html[dir="rtl"] .aircraft-focus-status, html[dir="rtl"] .aircraft-route-status { transform: translateX(50%); }
.notam-info-text { white-space: pre-wrap; overflow-wrap: anywhere; text-align: start; }
.notam-info dd { overflow-wrap: anywhere; }
.route-info dd { overflow-wrap: anywhere; }
.terrain-heading { display: flex; align-items: center; justify-content: space-between; gap: .416667vw; }
.terrain-settings { position: relative; }
.terrain-settings-toggle { display: flex; align-items: center; justify-content: center; width: max(1.458333vw, 28px); height: max(1.458333vw, 28px); border-radius: .3125vw; color: rgba(255,255,255,.7); cursor: pointer; list-style: none; }
.terrain-settings-toggle::-webkit-details-marker { display: none; }
.layer-panel-actions { display: flex; flex-direction: column; align-items: center; flex-shrink: 0; }
.panel-resize-handle { position: absolute; inset-block: 0; inset-inline-end: 0; width: 8px; z-index: 5; cursor: ew-resize; touch-action: none; user-select: none; }
.panel-resize-handle::after { content: ''; position: absolute; inset-block-start: 50%; inset-inline-end: 2px; width: 3px; height: 40px; border-radius: 3px; background: rgba(255,255,255,.3); transform: translateY(-50%); }
.panel-resize-handle:hover::after, .panel-resize-handle:focus-visible::after { background: #70e0cb; }
.panel-resize-handle:focus-visible { outline: 2px solid #70e0cb; outline-offset: -2px; }
.layer-airport-filters { display: grid; gap: 8px; padding: 8px 12px 12px; }
.layer-airport-content { display: flex; flex-direction: column; overflow: hidden !important; }
.layer-airport-content > :not(.layer-airport-viewport) { flex-shrink: 0; }
.layer-airport-viewport { flex: 1; min-height: 0; overflow-y: auto; overflow-x: hidden; scrollbar-width: thin; }
.layer-airport-virtual-content { position: relative; width: 100%; }
.layer-airport-row { display: flex; align-items: center; width: 100%; }
.layer-object-toggle { flex-shrink: 0; margin-inline: 8px 12px; accent-color: #70e0cb; cursor: pointer; }
.layer-airport-row > .glass-item { flex: 1; min-width: 0; }
.layer-airport-row > .aircraft-action-button { flex-shrink: 0; margin-inline-end: 8px; }
.catalog-airport-info { padding: 20px; }
.catalog-airport-info dl { display: grid; grid-template-columns: minmax(100px, 1fr) minmax(0, 2fr); gap: 10px 16px; text-align: start; }
.catalog-airport-info dt { opacity: .65; }
.catalog-airport-info dd { margin: 0; overflow-wrap: anywhere; }
.coordinate-dialog label { display: grid; gap: 6px; margin-block: 12px; text-align: start; }
.airport-modal { border-radius: 10px !important; backdrop-filter: blur(14px); font-family: "Tomorrow", sans-serif; }
.airport-modal::backdrop { background: rgba(0,0,0,.62); backdrop-filter: blur(3px); }
.airport-modal__form { padding: 20px; font-family: "Tomorrow", sans-serif; }
.airport-modal__header { min-height: 36px; margin-bottom: 16px; padding-block-end: 12px; border-bottom: 1px solid rgba(255,255,255,.12); }
.airport-modal__header h2 { font-family: "Tomorrow", sans-serif; font-size: 16px; letter-spacing: .01em; }
.airport-modal__actions { margin-top: 18px; padding-block-start: 12px; border-top: 1px solid rgba(255,255,255,.12); }
.airport-modal__actions button { border-radius: 6px; font-family: "Tomorrow", sans-serif; }
.airport-modal__cancel { border-color: rgba(255,255,255,.18) !important; background: rgba(255,255,255,.05) !important; color: rgba(255,255,255,.84) !important; }
.airport-modal__submit { border-color: rgba(0,168,232,.7) !important; background: rgba(0,168,232,.82) !important; }
.airport-modal__delete { border-color: rgba(238,112,112,.7) !important; background: rgba(196,67,67,.86) !important; }
.ols-query-panel { position: fixed; inset-block-start: 84px; inset-inline-end: 20px; z-index: 950; width: min(520px, calc(100vw - 40px)); max-height: calc(100vh - 112px); overflow: hidden; border: .5px solid rgba(255,255,255,.12); border-radius: 10px; background: linear-gradient(135deg, rgba(20,20,26,.97), rgba(10,10,16,.98)); box-shadow: 0 .521vw 2.5vw rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.1); color: rgba(255,255,255,.9); font-family: "Tomorrow", sans-serif; pointer-events: auto; }
.ols-query-panel[hidden] { display: none; }
.ols-query-panel__header { display: flex; align-items: center; justify-content: space-between; min-height: 36px; padding: 14px 16px 12px; border-bottom: 1px solid rgba(255,255,255,.12); }
.ols-query-panel__header h2 { margin: 0; color: #fff; font-size: 16px; letter-spacing: .01em; }
.ols-query-panel__instruction { margin: 0; padding: 12px 16px; color: rgba(255,255,255,.68); font-size: 12px; line-height: 1.5; }
.ols-query-panel__table-wrap { max-height: calc(100vh - 224px); overflow: auto; border-top: 1px solid rgba(255,255,255,.08); }
.ols-query-panel__table { width: 100%; border-collapse: collapse; font-size: 11px; text-align: start; }
.ols-query-panel__table th, .ols-query-panel__table td { min-width: 94px; border-bottom: 1px solid rgba(255,255,255,.08); padding: 10px 12px; text-align: start; vertical-align: middle; }
.ols-query-panel__table th { position: sticky; inset-block-start: 0; z-index: 1; background: rgba(20,20,26,.98); color: rgba(255,255,255,.66); font-size: 10px; font-weight: 600; }
.ols-query-panel__table td { color: rgba(255,255,255,.9); font-variant-numeric: tabular-nums; }
.ols-query-panel__table tbody tr:hover { background: rgba(255,255,255,.05); }
.ols-query-panel__remove { min-height: 28px; border: 1px solid rgba(238,112,112,.42); border-radius: 5px; padding: 0 8px; background: rgba(238,112,112,.1); color: #ffb5b5; font: 600 10px "Tomorrow", sans-serif; cursor: pointer; }
.ols-query-panel__remove:hover { border-color: rgba(238,112,112,.7); background: rgba(238,112,112,.2); color: #fff; }
.terrain-profile { position: fixed; inset: auto; inset-block-end: 20px; inset-inline-start: 50%; transform: translateX(-50%); width: min(680px, 90vw); z-index: 10000; padding: 18px; box-sizing: border-box; }
[dir="rtl"] .terrain-profile { transform: translateX(50%); }
.terrain-profile[hidden] { display: none; }
[data-draggable-panel] .airport-modal__header { cursor: grab; touch-action: none; user-select: none; }
[data-draggable-panel].panel-dragging .airport-modal__header { cursor: grabbing; }
.terrain-profile svg { display: block; width: 100%; direction: ltr; cursor: crosshair; }
.terrain-profile-distances { display: grid; grid-template-columns: 1fr auto; gap: 6px 16px; text-align: start; }
.terrain-profile-distances dd { margin: 0; direction: ltr; font-variant-numeric: tabular-nums; }
.sight-height { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-block: 8px; text-align: start; }
.sight-header-actions { display: flex; align-items: center; gap: 6px; }
.sight-settings-button svg { width: 22px; height: 22px; vertical-align: middle; }
.sight-height input { width: 90px; padding: 6px; border: 1px solid #657077; border-radius: 4px; background: #303a40; color: #fff; }
.terrain-profile { background: #20292d; color: #fff; }
.terrain-profile .airport-modal__header h2, .terrain-profile .airport-modal__close { color: #fff; }
.coordinate-dialog input { box-sizing: border-box; width: 100%; padding: 10px; border: 1px solid rgba(255,255,255,.2); border-radius: 6px; background: rgba(255,255,255,.06); color: #fff; font: inherit; }
.coordinate-copy { padding: 8px 12px; border: 1px solid rgba(255,255,255,.2); border-radius: 6px; background: rgba(255,255,255,.1); color: #fff; cursor: pointer; }
.layer-airport-virtual-content button > span:last-child { min-width: 0; overflow: hidden; text-overflow: ellipsis; }
.layer-airport-filters label { display: grid; gap: 5px; color: rgba(255,255,255,.7); font-size: 12px; text-align: start; }
.layer-airport-filters select, .layer-airport-filters input { box-sizing: border-box; width: 100%; min-width: 0; padding: 8px 10px; border: 1px solid rgba(255,255,255,.2); border-radius: 6px; background: rgba(255,255,255,.06); color: #fff; font: inherit; text-align: start; }
.layer-airport-filters select { color-scheme: dark; }
.airport-type-options { min-width: 220px; display: grid; gap: 8px; }
.airport-type-options label { display: flex; align-items: center; gap: 8px; text-align: start; cursor: pointer; white-space: nowrap; }
.airport-type-options input { margin: 0; flex-shrink: 0; accent-color: #70e0cb; }
.layer-airport-filters select option { background-color: #253139; color: #fff; }
.layer-airport-filters select option:checked { background-color: #415764; color: #fff; }
.layer-airport-pages { display: flex; justify-content: space-between; gap: 8px; padding: 0 12px 12px; }
.layer-airport-pages button { padding: 6px 10px; border: 1px solid rgba(255,255,255,.2); border-radius: 6px; background: rgba(255,255,255,.06); color: #fff; cursor: pointer; }
.layer-airport-pages button:disabled { opacity: .4; cursor: default; }
.layer-airport-filters input::placeholder { color: rgba(255,255,255,.45); }
.layer-airport-filters select:focus-visible, .layer-airport-filters input:focus-visible { outline: 2px solid rgba(255,255,255,.8); outline-offset: 1px; }
.layer-pin-button { width: 1.25vw; height: 1.25vw; display: flex; align-items: center; justify-content: center; flex-shrink: 0; padding: 0; border: 0; border-radius: .3125vw; background: transparent; color: rgba(255,255,255,.5); cursor: pointer; }
.layer-pin-button svg { width: .833333vw; height: .833333vw; transform: rotate(35deg); }
.layer-pin-button[aria-pressed="true"] svg { transform: none; }
.layer-pin-button:hover, .layer-pin-button[aria-pressed="true"] { color: #fff; background: rgba(255,255,255,.12); }
.layer-pin-button:focus-visible { outline: 2px solid #fff; outline-offset: 1px; }
.aircraft-playback-toggle { display: flex; align-items: center; justify-content: center; width: max(1.458333vw, 28px); height: max(1.458333vw, 28px); padding: 0; border: 0; border-radius: .3125vw; background: transparent; color: rgba(255,255,255,.7); cursor: pointer; }
.aircraft-playback-toggle svg { width: max(.9375vw, 18px); height: max(.9375vw, 18px); }
.aircraft-playback-toggle:hover, .aircraft-playback-toggle[aria-expanded="true"] { background: rgba(255,255,255,.1); color: #fff; }
.aircraft-playback-toggle:disabled { opacity: .4; cursor: default; }
.aircraft-playback-toggle:focus-visible { outline: 2px solid #fff; outline-offset: 1px; }
.terrain-settings-toggle svg { width: max(.9375vw, 18px); height: max(.9375vw, 18px); stroke-width: 1; }
.terrain-settings-toggle:hover, .terrain-settings[open] .terrain-settings-toggle { background: rgba(255,255,255,.1); color: #fff; }
.terrain-settings-popup { position: absolute; inset-inline-end: 0; inset-block-start: 100%; z-index: 2; min-width: max(10vw, 160px); padding: .625vw; color: #fff; text-transform: none; letter-spacing: normal; font-size: max(.625vw, 12px); --glass-breath: 0px; }
.terrain-settings-options { display: flex; gap: .416667vw; margin-block-start: .416667vw; }
.terrain-settings-options button { flex: 1; min-height: 28px; border: 1px solid rgba(255,255,255,.15); border-radius: .3125vw; background: transparent; color: #fff; cursor: pointer; font: inherit; }
.terrain-settings-options button:hover, .terrain-settings-options button[aria-pressed="true"] { background: rgba(255,255,255,.18); }
.terrain-settings-toggle:focus-visible, .terrain-settings-options button:focus-visible { outline: 2px solid #fff; outline-offset: 1px; }
.cesium-credit-logoContainer { display: none !important; }

.map-navigation {
  position: absolute;
  inset-inline-end: var(--shell-bar-pad-x);
  inset-block-end: max(var(--shell-bar-pad-y), 32px);
  z-index: calc(var(--z-chrome) + 1);
  display: flex;
  flex-direction: column;
  gap: .208333vw;
  padding: .208333vw;
  border-radius: .416667vw;
  pointer-events: auto;
  --glass-breath: 0px;
}
.map-navigation-button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: max(2.083333vw, 32px);
  height: max(2.083333vw, 32px);
  padding: 0;
  border: 1px solid transparent;
  border-radius: .3125vw;
  background: transparent;
  color: rgba(255,255,255,.75);
  cursor: pointer;
}
.map-navigation-button svg { width: max(1.041667vw, 18px); height: max(1.041667vw, 18px); }
.map-navigation-button:hover { background: rgba(255,255,255,.1); color: #fff; }
.map-navigation-button:active { background: rgba(255,255,255,.18); }
.map-navigation-button:focus-visible { outline: 2px solid rgba(255,255,255,.8); outline-offset: 1px; }
.layer-category-bar {
  display: flex;
  align-items: center;
  gap: .416667vw;
  margin-block-end: .625vw;
  padding: .208333vw;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: .416667vw;
  background: rgba(255,255,255,.04);
}
.layer-category-button {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  height: 1.875vw;
  padding: 0;
  border: 1px solid transparent;
  border-radius: .3125vw;
  background: transparent;
  color: rgba(255,255,255,.55);
  cursor: pointer;
}
.layer-category-button svg { width: 1.041667vw; height: 1.041667vw; }
.layer-category-button:hover { background: rgba(255,255,255,.08); color: #fff; }
.layer-category-button[aria-pressed="true"] { background: rgba(255,255,255,.14); border-color: rgba(255,255,255,.18); color: #fff; }
.layer-category-button:focus-visible { outline: 2px solid rgba(255,255,255,.8); outline-offset: 1px; }
.layer-category-empty { padding: .625vw; font-size: calc(.625vw * var(--font-scale, 1)); color: rgba(255,255,255,.5); text-align: start; }
html[dir="rtl"] { direction: rtl; }
html[dir="rtl"] .glass-item { margin-right: 0; margin-left: var(--glass-breath, 1.667vw); }
html[dir="rtl"] .glass-item, html[dir="rtl"] .language-settings-sheet__language-option { text-align: right !important; }
html[dir="rtl"] [role="menu"] button { text-align: right !important; }
html[dir="rtl"] .language-settings-sheet__language-button { margin-right: 32px; margin-left: 8px; }
html[dir="rtl"] .language-settings-sheet__rtl-option { margin-right: 4px; margin-left: 12px; }
html[dir="rtl"] .language-settings-sheet__input, html[dir="rtl"] .airport-modal__form input, html[dir="rtl"] .airport-modal__form select { text-align: right; }
html[dir="rtl"] .airport-modal__form label:has(input[required], select[required])::before { margin-right: 0; margin-left: 4px; }
html[dir="rtl"] .aerostream-table-sheet { direction: rtl; }
html[dir="rtl"] .aerostream-table-sheet__back-button { margin-right: 0; margin-left: 14px; }
html[dir="rtl"] .aerostream-table-sheet__add-button { margin-left: 0; margin-right: 16px; border-left: 0; border-right: 1px solid rgba(255,255,255,.42); padding: 0 16px 0 0; }
html[dir="rtl"] .aerostream-table-sheet__add-button:hover { border-right-color: rgba(255,255,255,.8); }
html[dir="rtl"] .aerostream-table-sheet__grid-add-button { margin-inline-start: 0; margin-inline-end: .417vw; }
html[dir="rtl"] .aerostream-table-sheet__column-header [data-col-key], html[dir="rtl"] .aerostream-table-sheet__content [data-cell-key] { direction: rtl; text-align: right; }
html[dir="rtl"] .aerostream-table-sheet__row-actions { direction: rtl; }
html[dir="rtl"] .application-menu-item-label,
html[dir="rtl"] .application-menu-group-label { text-align: right !important; }
#shellLayoutMap { position: absolute; inset: 0; background: radial-gradient(ellipse at 50% 40%, #2a3038 0%, #14171b 70%); }
#shellLayoutMap::after { position: absolute; top: 50%; left: 50%; color: rgba(255, 255, 255, .28); content: "Harita alanÃ„Â±"; font: 500 .8vw system-ui; transform: translate(-50%, -50%); }

/* Language settings use the same full-screen sheet language as application lists. */
@media (max-width: 700px) { .language-settings-sheet__language-button { min-width: 0; } }
#shellLayoutOverlay {
  position: fixed;
  inset: 0;
  z-index: 1;
  pointer-events: none;
}

.shell-layout-page { --shell-color: #fff; --shell-surface: rgba(10, 12, 18, .52); position: relative; width: 100%; height: 100%; overflow: hidden; background: #000; color: var(--shell-color); font-family: "Tomorrow", sans-serif; }
.shell-layout-page__canvas { position: absolute; inset: 0; display: grid; place-items: center; background: radial-gradient(ellipse at 50% 40%, #2a3038 0%, #14171b 70%); color: rgba(255, 255, 255, .28); font-size: .8rem; }
.shell-layout-page__gradient { position: absolute; right: 0; left: 0; height: 7.813vw; z-index: 1; pointer-events: none; }
.shell-layout-page__gradient--top { top: 0; background: linear-gradient(to bottom, rgba(0, 0, 0, .75), rgba(0, 0, 0, .35) 50%, transparent); }
.shell-layout-page__gradient--bottom { bottom: 0; background: linear-gradient(to top, rgba(0, 0, 0, .75), rgba(0, 0, 0, .35) 50%, transparent); }
.shell-layout-page__header, .shell-layout-page__footer { position: absolute; right: 0; left: 0; z-index: 2; }
.shell-layout-page__header { top: 0; padding: 1.25vw .833vw; }
.shell-layout-page__footer { bottom: 0; display: flex; align-items: center; justify-content: space-between; padding: 0 .833vw 1.25vw; }
.shell-layout-page__bar, .shell-layout-page__left, .shell-layout-page__right, .shell-layout-page__center, .shell-layout-page__utilities { display: flex; align-items: center; }
.shell-layout-page__bar { position: relative; justify-content: space-between; height: 1.667vw; }
.shell-layout-page__left { gap: .417vw; }.shell-layout-page__right { gap: 1.25vw; }.shell-layout-page__center { position: absolute; left: 50%; gap: 1.25vw; transform: translateX(-50%); }
.shell-layout-page button, .shell-layout-page a { color: var(--shell-color); font: inherit; }.shell-layout-page button { cursor: pointer; }
.glass-trigger { border: .5px solid transparent; background: transparent; transition: background 120ms ease, border-color 120ms ease, backdrop-filter 120ms ease; }.glass-trigger:hover, .glass-trigger:focus-visible { border-color: rgba(255, 255, 255, .12); outline: none; background: linear-gradient(135deg, rgba(20, 20, 28, .5), rgba(12, 12, 18, .6)); backdrop-filter: blur(60px) saturate(2.2); }
.shell-layout-page__brand, .shell-layout-page__user { display: inline-flex; align-items: center; gap: .417vw; height: 1.667vw; padding: 0 .833vw; border-radius: .417vw; text-decoration: none; font-size: .625vw; border: 0; }.shell-layout-page__brand img { width: auto; height: 1.25vw; }.shell-layout-page__brand svg, .shell-layout-page__chevron { width: .365vw; height: .208vw; fill: none; stroke: #fff; stroke-width: 1; }.shell-layout-page__user > svg:first-child { width: .521vw; height: .625vw; fill: #fff; }
.shell-layout-page__icon { display: grid; width: 1.667vw; height: 1.667vw; padding: 0; place-items: center; border-radius: .417vw; border: 0; }.shell-layout-page__icon svg { width: .833vw; height: .833vw; fill: none; stroke: #fff; stroke-width: 1.35; stroke-linecap: round; stroke-linejoin: round; }.shell-layout-page__right time { min-width: 4.2vw; font-size: .625vw; font-variant-numeric: tabular-nums; }
.shell-layout-page__weather { display: inline-flex; align-items: center; gap: .365vw; width: 6.667vw; height: 2.604vw; padding: .417vw .625vw; border: 1px solid rgba(255, 255, 255, .08); border-radius: .625vw; background: var(--shell-surface); font-size: .521vw; }.shell-layout-page__weather span:first-child { color: #ffb300; font-size: .938vw; }
.shell-layout-page__tabs { position: absolute; bottom: 1.25vw; left: 50%; display: flex; gap: .417vw; transform: translateX(-50%); }.shell-layout-page__tab { width: 6.667vw; height: 2.5vw; border: 1px solid transparent; border-radius: 9999px; background: transparent; font-family: "Mosafin", "Tomorrow", sans-serif; font-size: .833vw; font-weight: 700; }.shell-layout-page__tab:hover { border-color: rgba(255, 255, 255, .12); background: rgba(255, 255, 255, .08); }.shell-layout-page__tab.is-active { color: #000; background: #fff; }
.shell-layout-page.is-light { --shell-color: #0a2537; --shell-surface: rgba(248, 250, 252, .74); }.shell-layout-page.is-light .shell-layout-page__canvas { background: radial-gradient(ellipse at 50% 40%, #b8c9d2, #71818a 70%); }.shell-layout-page.is-light .shell-layout-page__gradient--top { background: linear-gradient(to bottom, rgba(255, 255, 255, .86), rgba(255, 255, 255, .28) 50%, transparent); }.shell-layout-page.is-light .shell-layout-page__gradient--bottom { background: linear-gradient(to top, rgba(255, 255, 255, .86), rgba(255, 255, 255, .28) 50%, transparent); }.shell-layout-page.is-light svg { stroke: #0a2537; }.shell-layout-page.is-light .shell-layout-page__user > svg:first-child { fill: #0a2537; }.shell-layout-page.is-light .shell-layout-page__brand svg, .shell-layout-page.is-light .shell-layout-page__chevron { stroke: #0a2537; }.shell-layout-page.is-light .shell-layout-page__tab.is-active { color: #fff; background: #0a2537; }
@media (max-width: 700px) { .shell-layout-page__header { padding: 12px; }.shell-layout-page__footer { padding: 0 12px 12px; }.shell-layout-page__center { display: none; }.shell-layout-page__user span { display: none; }.shell-layout-page__tabs { bottom: 56px; max-width: calc(100vw - 24px); overflow-x: auto; }.shell-layout-page__tab { width: auto; min-width: 92px; height: 38px; font-size: 12px; }.shell-layout-page__weather { width: auto; height: 38px; font-size: 12px; }.shell-layout-page__brand, .shell-layout-page__user, .shell-layout-page__icon { height: 36px; width: auto; min-width: 36px; }.shell-layout-page__brand img { height: 24px; }.shell-layout-page__icon svg { width: 16px; height: 16px; }.shell-layout-page__right time { min-width: 68px; font-size: 12px; } }

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
  text-align: start;
}

/* TableSheet reference visual system: dark, translucent sheet and glass controls. */
.aerostream-table-sheet {
  background: linear-gradient(165deg, rgba(14,14,20,.82) 0%, rgba(8,8,14,.88) 40%, rgba(12,12,18,.85) 100%) !important;
  backdrop-filter: blur(60px) saturate(1.8) brightness(.85) !important;
  -webkit-backdrop-filter: blur(60px) saturate(1.8) brightness(.85) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04), inset 0 0 120px rgba(0,0,0,.15) !important;
}
.aerostream-table-sheet__header, .aerostream-table-sheet__column-header, .aerostream-table-sheet__content, .aerostream-table-sheet > div:last-child {
  background: transparent !important;
}
.aerostream-table-sheet__header span, .aerostream-table-sheet__column-header [data-col-key] span, .aerostream-table-sheet__content [data-row-idx] span {
  color: #fff !important;
  font-family: "Mosafin", "TomorrowNum", "Poppins", sans-serif !important;
}
.aerostream-table-sheet__column-header { border-color: rgba(255,255,255,.12) !important; }
.aerostream-table-sheet__content [data-row-idx] { border-color: rgba(255,255,255,.08) !important; }
.aerostream-table-sheet__column-header [data-col-key]:hover,
.aerostream-table-sheet__content [data-row-idx]:hover { background: rgba(255,255,255,.08) !important; }
.aerostream-table-sheet .glass-trigger, .aerostream-table-sheet .sheet-icon-btn {
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
}
.aerostream-table-sheet .glass-trigger:hover, .aerostream-table-sheet .glass-trigger.active, .aerostream-table-sheet .sheet-icon-btn:hover {
  background: linear-gradient(135deg, rgba(20,20,28,.50), rgba(12,12,18,.60), rgba(24,24,32,.45)) !important;
  border-color: rgba(255,255,255,.12) !important;
  backdrop-filter: blur(120px) saturate(2.2) brightness(.9) !important;
  -webkit-backdrop-filter: blur(120px) saturate(2.2) brightness(.9) !important;
}
.aerostream-table-sheet .glass-popover, .aerostream-table-sheet-popup {
  color: rgba(255,255,255,.9) !important;
  background: linear-gradient(135deg, rgba(20,20,26,.97), rgba(10,10,16,.98)) !important;
  border-color: rgba(255,255,255,.12) !important;
  box-shadow: 0 .521vw 2.5vw rgba(0,0,0,.35) !important;
  backdrop-filter: blur(120px) saturate(2.2) brightness(.9) !important;
  -webkit-backdrop-filter: blur(120px) saturate(2.2) brightness(.9) !important;
}
.aerostream-table-sheet-popup span, .aerostream-table-sheet-popup input, .aerostream-table-sheet .glass-trigger input, .aerostream-table-sheet .glass-item { color: rgba(255,255,255,.9) !important; }
.aerostream-table-sheet-popup input, .aerostream-table-sheet .glass-trigger input { caret-color: #fff !important; }
.aerostream-table-sheet .glass-item:hover, .aerostream-table-sheet-popup [data-selected="true"] { background: rgba(0,168,232,.22) !important; }
.aerostream-table-sheet__row-text-action, .aerostream-table-sheet__row-actions .sheet-icon-btn { color: rgba(255,255,255,.72); background: transparent; }
.aerostream-table-sheet__row-text-action:hover, .aerostream-table-sheet__row-actions .sheet-icon-btn:hover { color: #fff; background: rgba(0,168,232,.22); }
.aerostream-table-sheet__row-actions { display: flex; align-items: center; gap: .417vw; flex-wrap: nowrap; }
.aerostream-table-sheet__back-button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.083vw;
  height: 2.083vw;
  flex: 0 0 auto;
  margin-inline-end: .729vw;
  padding: 0;
  border: 1px solid transparent;
  border-radius: .417vw;
  background: transparent;
  color: rgba(255,255,255,.78);
  cursor: pointer;
  box-sizing: border-box;
  transition: background .12s ease, border-color .12s ease, color .12s ease;
}
.aerostream-table-sheet__back-button:hover {
  border-color: rgba(255,255,255,.12);
  background: linear-gradient(135deg, rgba(20,20,28,.50), rgba(12,12,18,.60), rgba(24,24,32,.45));
  color: #fff;
}
.aerostream-table-sheet__back-button svg { display: block; }
.aerostream-table-sheet__add-button {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 2.083vw;
  margin-inline-start: .417vw;
  border: 1px solid rgba(255,255,255,.28);
  border-radius: .417vw;
  padding: 0 .729vw;
  color: #fff;
  background: rgba(255,255,255,.04);
  font-family: "Mosafin", "TomorrowNum", "Poppins", sans-serif;
  font-size: 1.042vw;
  font-weight: 700;
  line-height: 1;
  letter-spacing: -.05em;
  white-space: nowrap;
  cursor: pointer;
  box-sizing: border-box;
  transition: border-color .12s ease, background .12s ease, color .12s ease;
}
.aerostream-table-sheet__add-button:hover {
  border-color: rgba(255,255,255,.48);
  color: #fff;
  background: rgba(255,255,255,.08);
  text-decoration: none;
}
.aerostream-table-sheet__grid-add-button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.083vw;
  height: 2.083vw;
  flex: 0 0 auto;
  margin-inline-start: .417vw;
  padding: 0;
  border: 1px solid rgba(255,255,255,.28);
  border-radius: .417vw;
  color: #fff;
  background: rgba(255,255,255,.04);
  cursor: pointer;
  box-sizing: border-box;
  transition: border-color .12s ease, background .12s ease, color .12s ease;
}
.aerostream-table-sheet__grid-add-button:hover {
  border-color: rgba(255,255,255,.48);
  color: #fff;
  background: rgba(255,255,255,.08);
}
.aerostream-table-sheet__grid-add-button:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
.aerostream-table-sheet__grid-add-button svg { display: block; }

/* Application forms and sheets use the same dark glass surface as the reference shell. */
.airport-modal, .language-settings-sheet__content, .mania-plan-page {
  color: rgba(255,255,255,.9) !important;
  background: linear-gradient(135deg, rgba(20,20,26,.97), rgba(10,10,16,.98)) !important;
  border: .5px solid rgba(255,255,255,.12) !important;
  box-shadow: 0 .521vw 2.5vw rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.1) !important;
}
.airport-modal__header h2, .airport-modal__form label, .airport-modal__warning, .airport-modal__warning strong,
.mania-runway-card__title, .mania-plan-inputs h3, .ols-runway-inputs__endpoint h3, .mania-runway-midpoints__header,
.language-settings-sheet__key { color: #fff !important; }
.airport-modal__close, .airport-modal__form label, .mania-threshold-details, .mania-plan-inputs__options label,
.ols-runway-dialog .airport-modal__header p, .language-settings-sheet__status { color: rgba(255,255,255,.72) !important; }
.airport-modal__close:hover, .airport-modal__cancel:hover { color: #fff !important; background: rgba(255,255,255,.12) !important; }
.airport-modal__form input, .airport-modal__form select, .language-settings-sheet__input,
.mania-threshold-details div, .mania-runway-card, .mania-plan-inputs, .ols-runway-inputs__endpoint {
  color: rgba(255,255,255,.9) !important;
  background: rgba(255,255,255,.06) !important;
  border-color: rgba(255,255,255,.12) !important;
}
.airport-modal__form input:focus, .airport-modal__form select:focus, .language-settings-sheet__input:focus {
  border-color: rgba(255,255,255,.42) !important;
  outline: 0 !important;
  box-shadow: 0 0 0 2px rgba(255,255,255,.12) !important;
}
.language-settings-sheet__input {
  width: 100%;
  height: 34px;
  box-sizing: border-box;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 6px;
  padding-inline: 10px;
  font: 400 13px "Tomorrow", sans-serif;
  line-height: 1.2;
  transition: border-color 150ms ease, background-color 150ms ease, box-shadow 150ms ease;
}
.language-settings-sheet__input:hover:not(:focus) {
  border-color: rgba(255,255,255,.26) !important;
  background: rgba(255,255,255,.09) !important;
}
#thresholdType {
  color-scheme: dark;
  background-color: #18181f !important;
}
#thresholdType option {
  color: #fff;
  background: #18181f;
}

/* Keep every native select visually consistent with the application glass forms. */
.airport-modal__form select, .mania-plan-form select {
  appearance: none;
  -webkit-appearance: none;
  padding-inline: 12px 40px;
  color-scheme: dark;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='m4 6 4 4 4-4' stroke='%23ffffff' stroke-opacity='.78' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 16px;
  transition: border-color .15s ease, box-shadow .15s ease, background-color .15s ease;
}
.airport-modal__form select:hover:not(:disabled), .mania-plan-form select:hover:not(:disabled) {
  border-color: rgba(255,255,255,.32) !important;
  background-color: rgba(255,255,255,.1) !important;
}
.airport-modal__form select:disabled, .mania-plan-form select:disabled {
  cursor: not-allowed;
  opacity: .55;
}
.airport-modal__form select option, .mania-plan-form select option {
  color: #fff;
  background: #18181f;
}
html[dir="rtl"] .airport-modal__form select, html[dir="rtl"] .mania-plan-form select {
  padding-inline: 40px 12px;
  background-position: left 12px center;
  text-align: right;
}
.airport-modal__cancel, .mania-add-runway {
  color: rgba(255,255,255,.9) !important;
  background: rgba(255,255,255,.08) !important;
  border-color: rgba(255,255,255,.2) !important;
}
.airport-modal__submit, .mania-add-midpoint, .mania-create-runway, .mania-plan-submit button {
  color: #fff !important;
  background: rgba(0,168,232,.72) !important;
  border-color: rgba(0,168,232,.9) !important;
}
.mania-runway-card.is-created, .mania-runway-midpoint button { background: rgba(0,168,232,.16) !important; border-color: rgba(0,168,232,.42) !important; }
.mania-runway-midpoint button { color: #fff !important; }
.language-settings-sheet__language-menu {
  position: fixed;
  z-index: calc(var(--z-dropdown) + 1);
  min-width: 176px;
  padding: 6px;
  background: linear-gradient(135deg, rgba(20,20,26,.97), rgba(10,10,16,.98)) !important;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 8px;
  border-color: rgba(255,255,255,.12) !important;
  box-shadow: 0 .521vw 2.5vw rgba(0,0,0,.35) !important;
}
.language-settings-sheet__language-button {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-width: 176px;
  height: 42px;
  margin-inline: 32px 8px;
  border: 1px solid rgba(255,255,255,.32);
  border-radius: 6px;
  padding: 0 14px;
  color: #fff;
  background: rgba(255,255,255,.08);
  font: 500 13px "Tomorrow", sans-serif;
  cursor: pointer;
}
.aerostream-table-sheet__header .language-settings-sheet__language-button span { font: inherit !important; color: inherit !important; }
.language-settings-sheet__language-button svg { width: 12px; height: 8px; fill: none; stroke: currentColor; stroke-width: 1.8; }
.language-settings-sheet__language-option { display: block; width: 100%; height: 34px; padding: 0 10px; border: 0; border-radius: 6px; background: transparent; color: rgba(255,255,255,.9) !important; font: 400 13px "Tomorrow", sans-serif; text-align: left; cursor: pointer; }
.language-settings-sheet__language-option:hover, .language-settings-sheet__language-option[aria-selected="true"] { color: #fff !important; background: rgba(0,168,232,.22) !important; }

/* AIXM file selection and inspection */
.aixm-import { min-height:100vh; box-sizing:border-box; padding:40px clamp(20px,5vw,90px); background:#101c2a; color:#e6eff6; font:15px/1.6 system-ui,sans-serif; }
.aixm-import__header { display:flex; justify-content:space-between; align-items:center; gap:24px; margin-block-end:30px; }
.aixm-import__header h1 { margin:0; font-size:32px; }
.aixm-import__header p { color:#9cb3c5; }
.aixm-import__eyebrow { color:#79ddd5!important; letter-spacing:.12em; }
.aixm-import a { color:#79ddd5; }
.aixm-import__columns { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); gap:24px; }
.aixm-import__card { padding:24px; background:#182838; border:1px solid #304454; border-radius:14px; min-width:0; }
.aixm-import__card h2 { margin-block-start:0; font-size:20px; }
.aixm-import button { border:1px solid #426071; border-radius:8px; padding:10px 16px; background:#233c4d; color:#edf7ff; cursor:pointer; font:inherit; text-align:start; }
.aixm-import button:disabled { opacity:.5; cursor:not-allowed; }
.aixm-import button:focus-visible { outline:2px solid #79ddd5; outline-offset:3px; }
.aixm-import__toolbar { display:flex; gap:10px; }
.aixm-import__path { overflow-wrap:anywhere; color:#8de0d9; }
.aixm-import__files { padding:0; list-style:none; max-height:55vh; overflow:auto; }
.aixm-import__files li { margin-block:8px; }
.aixm-import__files button { width:100%; overflow-wrap:anywhere; }
.aixm-import__files button:hover { background:#304d60; }
.aixm-import dl { display:grid; grid-template-columns:auto minmax(0,1fr); gap:12px; }
.aixm-import dl[hidden] { display:none; }
.aixm-import dd { margin:0; overflow-wrap:anywhere; }
.aixm-import dt,.aixm-import__note { color:#9cb3c5; }
.aixm-import__note { font-size:13px; }
@media(max-width:760px) { .aixm-import__columns { grid-template-columns:1fr; } .aixm-import__header { align-items:start; flex-direction:column; } }
.aixm-import__progress { margin-top: 24px; padding-top: 16px; border-top: 1px solid #ffffff24; }
.aixm-import__progress progress { width: 100%; height: 16px; accent-color: #40b9dc; }
.aixm-import__progress h3 { overflow-wrap: anywhere; }
.aixm-import__progress p { line-height: 1.6; }

.aerostream-status-toast {
  position: fixed;
  inset-inline-end: 24px;
  inset-block-end: 24px;
  z-index: calc(var(--z-sheet-ctx, 720) + 1);
  display: flex;
  align-items: center;
  gap: 12px;
  width: min(380px, calc(100vw - 48px));
  min-height: 68px;
  box-sizing: border-box;
  padding: 12px 16px 12px 12px;
  color: #fff;
  background: linear-gradient(135deg, rgba(20,20,26,.97), rgba(10,10,16,.98));
  border: 1px solid rgba(34,197,94,.32);
  border-inline-start: 3px solid #22c55e;
  border-radius: 10px;
  box-shadow: 0 10px 30px rgba(0,0,0,.38);
  backdrop-filter: blur(20px);
  opacity: 0;
  pointer-events: none;
  transform: translateY(12px);
  transition: opacity .2s ease, transform .2s ease;
}
.aerostream-status-toast.is-visible { opacity: 1; transform: translateY(0); }
.aerostream-status-toast__icon {
  display: grid;
  place-items: center;
  flex: 0 0 32px;
  width: 32px;
  height: 32px;
  color: #22c55e;
  background: rgba(34,197,94,.10);
  border: 1px solid rgba(34,197,94,.20);
  border-radius: 8px;
}
.aerostream-status-toast__icon svg { width: 16px; height: 16px; }
.aerostream-status-toast__content { display: flex; flex: 1; min-width: 0; flex-direction: column; gap: 2px; }
.aerostream-status-toast__title { font: 600 calc(.677083vw * var(--font-scale, 1)) "Mosafin", "TomorrowNum", "Poppins", sans-serif; }
.aerostream-status-toast__message { color: rgba(255,255,255,.55); font: 400 calc(.572917vw * var(--font-scale, 1)) "TomorrowNum", "Poppins", sans-serif; line-height: 1.4; }
html[dir="rtl"] .aerostream-status-toast { padding: 12px 12px 12px 16px; }
