/*! Copyright (c) 2025-2026 Markus Schüssler. All rights reserved.
 * SPDX-License-Identifier: LicenseRef-Markus-Schuessler-Proprietary; see repository LICENSE.
 */
/* The analyzer shares BeyondXC's alpine, compact visual language. Keep map and chart data colors intact. */
body.layout-default {
  background: var(--ui-color-bg);
  color: var(--ui-color-text);
  color-scheme: light;
}
body.dark-mode.layout-default { color-scheme: dark; }

body.layout-default .tra-nav {
  --tra-nav-bg: var(--ui-color-nav);
  --tra-nav-text-color: var(--ui-color-text);
  --tra-nav-button-bg: transparent;
  --tra-nav-button-text: var(--ui-color-text);
  --tra-nav-button-hover-bg: var(--ui-color-surface-hover);
  --tra-nav-button-hover-text: var(--ui-color-text);
  --tra-nav-button-border: var(--ui-color-border);
  --tra-nav-button-shadow: none;
  --tra-nav-shadow: none;
  padding: .5rem var(--ui-page-gutter);
  gap: .75rem;
  border-bottom: 1px solid var(--ui-color-border);
  background: var(--ui-color-nav);
  color: var(--ui-color-text);
  box-shadow: none;
  backdrop-filter: none;
}
body.layout-default .tra-nav__section { gap: .4rem; }
body.layout-default .tra-nav__button,
body.layout-default button.tra-nav__button {
  min-height: 44px;
  padding: .45rem .7rem;
  border: 1px solid var(--ui-color-border);
  border-radius: var(--ui-radius-md);
  background: var(--ui-color-surface);
  color: var(--ui-color-text);
  font-size: .875rem;
  font-weight: 600;
  box-shadow: none;
}
body.layout-default .tra-nav__button:hover,
body.layout-default .tra-nav__button:focus-visible {
  background: var(--ui-color-surface-hover);
  color: var(--ui-color-primary-strong);
  box-shadow: none;
  transform: none;
}
body.layout-default .tra-nav__section--primary .tra-nav__button:first-child {
  border-color: var(--ui-color-border-strong);
  background: var(--ui-color-surface-hover);
  color: var(--ui-color-primary-strong);
}
body.layout-default .tra-nav__button--user,
body.dark-mode.layout-default .tra-nav__button--user,
body.layout-default .tra-nav__button--external,
body.dark-mode.layout-default .tra-nav__button--external {
  color: var(--ui-color-text);
  background: var(--ui-color-surface);
}
body.layout-default .tra-nav__environment {
  min-height: 32px;
  border: 1px solid var(--ui-color-border);
  border-radius: var(--ui-radius-sm);
  background: var(--ui-color-surface-alt);
  color: var(--ui-color-text-muted);
  box-shadow: none;
}
body.layout-default .beyondxc-nav__language-switch,
body.dark-mode.layout-default .beyondxc-nav__language-switch {
  gap: 0;
  margin-left: 0;
  padding: 0;
  border: 1px solid var(--ui-color-border);
  border-radius: var(--ui-radius-md);
  background: var(--ui-color-surface);
  box-shadow: none;
}
body.layout-default .beyondxc-nav__language-link,
body.dark-mode.layout-default .beyondxc-nav__language-link {
  min-width: 44px;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 .6rem;
  border: 0;
  border-radius: var(--ui-radius-sm);
  background: transparent;
  color: var(--ui-color-text-muted);
  font-size: .8125rem;
  font-weight: 600;
  line-height: 1;
  box-shadow: none;
}
body.layout-default .beyondxc-nav__language-link:hover,
body.dark-mode.layout-default .beyondxc-nav__language-link:hover {
  border: 0;
  background: var(--ui-color-surface-hover);
  color: var(--ui-color-primary-strong);
  box-shadow: none;
}
body.layout-default .beyondxc-nav__language-link--active,
body.dark-mode.layout-default .beyondxc-nav__language-link--active,
body.layout-default .beyondxc-nav__language-link--active:hover,
body.dark-mode.layout-default .beyondxc-nav__language-link--active:hover {
  border: 0;
  background: var(--ui-color-surface-hover);
  color: var(--ui-color-primary-strong);
  box-shadow: none;
}
body.layout-default .tra-nav__mobile-toggle {
  min-height: 44px;
  border: 1px solid var(--ui-color-border);
  border-radius: var(--ui-radius-md);
  background: var(--ui-color-surface);
  color: var(--ui-color-text);
}
body.layout-default .tra-nav__mobile-toggle-bar { background: var(--ui-color-primary-strong); }
body.layout-default .tra-aktivierung-reiter,
body.dark-mode.layout-default .tra-aktivierung-reiter {
  padding: .55rem var(--ui-page-gutter);
  border-bottom: 1px solid var(--ui-color-border);
  background: var(--ui-color-surface);
  color: var(--ui-color-text);
  font-size: 1.1rem;
  font-weight: 650;
  line-height: 1.25;
  box-shadow: none;
}

body.layout-default .xc-flightcheck-layout { --left-panel-width: 320px; --left-toggle-width: 12px; }
body.layout-default .left-panel {
  border-right: 1px solid var(--ui-color-border);
  background: var(--ui-color-surface);
  color: var(--ui-color-text);
}
body.layout-default .left-wrapper { gap: .5rem; padding: .75rem 0; }
body.layout-default #clear-tracks-btn {
  min-height: 44px !important;
  padding: .55rem .7rem !important;
  border: 1px solid var(--ui-color-primary-strong) !important;
  border-radius: var(--ui-radius-md) !important;
  background: var(--ui-color-primary-strong) !important;
  color: var(--ui-color-on-primary) !important;
  font-size: .875rem;
  font-weight: 650 !important;
}
body.layout-default #clear-tracks-btn:hover,
body.layout-default #clear-tracks-btn:active {
  background: var(--ui-color-primary) !important;
  color: var(--ui-color-on-primary) !important;
}
body.layout-default .igc-shared-flight-actions {
  grid-template-columns: minmax(0, 1fr);
  gap: .5rem;
  margin: 0 .75rem .75rem;
}
body.layout-default .igc-shared-flight-actions :is(.igc-replay-launch, .igc-flightbook-launch, .igc-planner-launch) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  width: 100%;
  min-width: 0;
  min-height: 44px;
  margin: 0;
  padding: .55rem .65rem;
  border: 1px solid var(--ui-color-border);
  border-radius: var(--ui-radius-md);
  background: var(--ui-color-surface-alt);
  color: var(--ui-color-primary-strong);
  font-size: .875rem;
  font-weight: 600;
  line-height: 1.3;
  text-align: center;
  text-decoration: none;
  white-space: normal;
  box-shadow: none;
  transform: none;
}
body.layout-default .igc-shared-flight-actions :is(.igc-replay-launch, .igc-flightbook-launch, .igc-planner-launch):hover {
  border-color: var(--ui-color-primary-strong);
  background: var(--ui-color-surface-hover);
  color: var(--ui-color-primary-strong);
  box-shadow: none;
  transform: none;
}
body.layout-default #upload-controls-overlay { margin-top: 0; background: transparent; }
body.layout-default #upload-controls-overlay:not(:has(.upload-status-panel.is-visible, #recall-url-container:not(:empty))) { display: none; }
body.layout-default .upload-status-panel {
  gap: .75rem;
  padding: .75rem;
  border: 1px solid var(--ui-color-border);
  border-radius: var(--ui-radius-md);
  background: var(--ui-color-surface-alt);
  color: var(--ui-color-text);
  box-shadow: none;
}
body.layout-default :is(.status-title, .status-step-name, .status-progress-label) { color: var(--ui-color-text); }
body.layout-default :is(.status-subtitle, .status-step-message) { color: var(--ui-color-text-muted); }
body.layout-default .status-progress-ring__value { stroke: var(--ui-color-primary-strong); }
body.layout-default .left-wrapper > .left-tabs {
  gap: .25rem;
  margin: 0 1rem;
  padding: 0 0 .35rem;
  border-bottom: 1px solid var(--ui-color-border);
  border-radius: 0;
  background: transparent;
}
body.layout-default .left-tab-button {
  min-height: 44px;
  padding: .45rem .6rem;
  border-radius: var(--ui-radius-sm);
  background: transparent;
  color: var(--ui-color-text-muted);
  font-size: .875rem;
  font-weight: 500;
}
body.layout-default .left-tab-button:hover { background: var(--ui-color-surface-hover); color: var(--ui-color-text); }
body.layout-default .left-tab-button.is-active,
body.dark-mode.layout-default .left-tab-button.is-active {
  background: var(--ui-color-surface-hover);
  color: var(--ui-color-primary-strong);
  font-weight: 650;
}
body.layout-default .tab-section { color: var(--ui-color-text); }
body.layout-default #enhanced-track-info { padding: 0 .75rem; }

/* The analyzer's generated track details still use the former dark sidebar palette. */
body.layout-default #enhanced-track-info .enhanced-track-info,
body.layout-default #enhanced-track-info .accordion-container {
  min-width: 0;
  background: transparent;
  color: var(--ui-color-text);
  border: 0;
  box-shadow: none;
}
body.layout-default #enhanced-track-info .accordion-card {
  border-bottom: 1px solid var(--ui-color-border);
}
body.layout-default #enhanced-track-info .accordion-header,
body.dark-mode.layout-default #enhanced-track-info .accordion-header,
body.dark-mode.layout-default #enhanced-track-info .accordion-card.violation-card .accordion-header {
  min-height: 44px;
  padding: .6rem .75rem;
  border: 0;
  background: var(--ui-color-surface-alt);
  color: var(--ui-color-text);
}
body.layout-default #enhanced-track-info .accordion-header:hover,
body.dark-mode.layout-default #enhanced-track-info .accordion-header:hover,
body.dark-mode.layout-default #enhanced-track-info .accordion-card.violation-card .accordion-header:hover,
body.layout-default #enhanced-track-info .accordion-header.active,
body.dark-mode.layout-default #enhanced-track-info .accordion-header.active,
body.dark-mode.layout-default #enhanced-track-info .accordion-card.violation-card .accordion-header.active {
  background: var(--ui-color-surface-hover);
}
body.layout-default #enhanced-track-info .accordion-title,
body.dark-mode.layout-default #enhanced-track-info .accordion-title {
  min-width: 0;
  color: var(--ui-color-text);
  font-size: .875rem;
  font-weight: 600;
}
body.layout-default #enhanced-track-info .accordion-title i,
body.dark-mode.layout-default #enhanced-track-info .accordion-title i,
body.layout-default #enhanced-track-info .accordion-chevron,
body.dark-mode.layout-default #enhanced-track-info .accordion-chevron {
  color: var(--ui-color-primary-strong);
}
body.layout-default #enhanced-track-info .accordion-content .card-body,
body.dark-mode.layout-default #enhanced-track-info .accordion-content .card-body,
body.layout-default #enhanced-track-info .accordion-card.violation-card .accordion-content .card-body {
  padding: .75rem;
  background: var(--ui-color-surface);
  color: var(--ui-color-text);
  font-size: .875rem;
  line-height: 1.4;
}
body.layout-default #enhanced-track-info :is(.info-row, .distance-overview-row) {
  min-width: 0;
  color: var(--ui-color-text);
  overflow-wrap: anywhere;
}
body.layout-default #enhanced-track-info .info-row strong,
body.layout-default #enhanced-track-info .trackinfo-pilot-name,
body.layout-default #enhanced-track-info .stats-title {
  color: var(--ui-color-text);
}
body.layout-default #enhanced-track-info .info-row i,
body.layout-default #enhanced-track-info .companion-track-stats__identity > i {
  color: var(--ui-color-primary-strong);
}
body.layout-default #enhanced-track-info .info-row__icon--success,
body.layout-default #enhanced-track-info .status-icon--success { color: var(--ui-color-success) !important; }
body.layout-default #enhanced-track-info .info-row__icon--danger,
body.layout-default #enhanced-track-info .status-icon--danger { color: var(--ui-color-danger) !important; }
body.layout-default #enhanced-track-info .info-row__icon--warning,
body.layout-default #enhanced-track-info .status-icon--warning { color: var(--ui-color-warning) !important; }
body.layout-default #enhanced-track-info :is(.info-row__icon--muted, .info-row__icon--neutral, .status-icon--muted) { color: var(--ui-color-text-muted) !important; }
body.layout-default #enhanced-track-info :is(.info-row__icon--primary, .info-row__icon--notice, .info-row__icon--left) { color: var(--ui-color-primary-strong) !important; }
body.layout-default #enhanced-track-info .info-row__icon--accent { color: var(--ui-color-warning) !important; }
body.layout-default #enhanced-track-info :is(.info-row.info-note, .info-row__muted, .trackinfo-pilot-meta, .companion-track-stats__meta, .country-segment-meta, .distance-leg-meta) {
  color: var(--ui-color-text-muted);
}
body.layout-default #enhanced-track-info :is(.info-row--divider, .info-row--divider-soft, .igc-file-info, .stats-title, .distance-leg) {
  border-color: var(--ui-color-border);
}
body.layout-default #enhanced-track-info :is(.trackinfo-pilot-link, .trackinfo-pilot-username-link, .igc-inline-auth-link) {
  color: var(--ui-color-primary-strong);
}
body.layout-default #enhanced-track-info :is(.trackinfo-pilot-link, .trackinfo-pilot-username-link, .igc-inline-auth-link):hover {
  color: var(--ui-color-primary);
}
body.layout-default #enhanced-track-info .trackinfo-action-button {
  min-height: 44px;
  padding: .4rem .6rem;
  border: 1px solid var(--ui-color-border-strong);
  border-radius: var(--ui-radius-sm);
  background: var(--ui-color-surface-alt);
  color: var(--ui-color-primary-strong);
  font-size: .8125rem;
  font-weight: 600;
}
body.layout-default #enhanced-track-info .trackinfo-action-button:hover {
  border-color: var(--ui-color-primary-strong);
  background: var(--ui-color-surface-hover);
  color: var(--ui-color-primary-strong);
}
body.layout-default #enhanced-track-info :is(.info-section-heading, .distance-summary-section-title) {
  padding-bottom: .3rem;
  border-bottom: 1px solid var(--ui-color-border);
  color: var(--ui-color-text-muted);
  font-size: .75rem;
  font-weight: 600;
  letter-spacing: 0;
  text-transform: none;
}
body.layout-default #enhanced-track-info .info-section-heading--success { color: var(--ui-color-success); }
body.layout-default #enhanced-track-info .info-section-heading--accent { color: var(--ui-color-warning); }
body.layout-default #enhanced-track-info :is(.stat-item, .distance-summary-metric, .distance-summary-section-body, .distance-summary-closure, .companion-track-stats__metric, .companion-track-stats__note, .airspace-fl-calc-card, .airspace-fl-calc-grid > div, .airspace-fl-reference__row, .airspace-fl-reference__station) {
  border: 1px solid var(--ui-color-border);
  border-radius: var(--ui-radius-sm);
  background: var(--ui-color-surface-alt);
  color: var(--ui-color-text);
  box-shadow: none;
}
body.layout-default #enhanced-track-info .stat-item:hover {
  background: var(--ui-color-surface-hover);
  transform: none;
}
body.layout-default #enhanced-track-info :is(.companion-track-stats__metric dt, .airspace-fl-calc-card__subtitle, .airspace-fl-calc-grid span, .airspace-fl-reference__row > span, .airspace-fl-reference__station-meta, .airspace-fl-reference__station-more) {
  color: var(--ui-color-text-muted);
}
body.layout-default #enhanced-track-info :is(.companion-track-stats__metric dd, .airspace-fl-calc-card__title, .airspace-fl-calc-grid strong, .airspace-fl-reference__row strong, .airspace-fl-reference__station-main) {
  color: var(--ui-color-text);
}
body.layout-default #enhanced-track-info :is(.airspace-fl-calc-card__clearance, .airspace-fl-calc-card__meta span) {
  border: 1px solid var(--ui-color-border);
  background: var(--ui-color-surface-hover);
  color: var(--ui-color-text);
}
body.layout-default #enhanced-track-info .airspace-fl-calc-card__clearance strong,
body.layout-default #enhanced-track-info .airspace-fl-reference__station-pressure { color: var(--ui-color-warning); }
body.layout-default #enhanced-track-info .airspace-fl-calc-card--penetration :is(.airspace-fl-calc-card__clearance strong, .airspace-fl-calc-card__clearance-secondary--penetration) { color: var(--ui-color-danger); }
body.layout-default #enhanced-track-info .violation-chip {
  border: 1px solid var(--ui-color-border);
  background: var(--ui-color-surface);
  color: var(--ui-color-text-muted);
  letter-spacing: 0;
}
body.layout-default #enhanced-track-info .violation-chip.is-ok { color: var(--ui-color-success); }
body.layout-default #enhanced-track-info .violation-chip.is-violation { color: var(--ui-color-danger); }
body.layout-default #enhanced-track-info :is(.status-text--success, .igc-validation-status.valid, .violation-card__status--success) { color: var(--ui-color-success); }
body.layout-default #enhanced-track-info :is(.status-text--danger, .igc-validation-status.invalid, .violation-card__status--danger) { color: var(--ui-color-danger); }
body.layout-default #enhanced-track-info :is(.status-text--warning, .igc-validation-status.warning) { color: var(--ui-color-warning); }
body.layout-default #enhanced-track-info :is(.status-text--info, .violation-card__status--pending) { color: var(--ui-color-primary-strong); }
body.layout-default #enhanced-track-info :is(.status-text--muted, .igc-validation-status.unknown, .violation-card__status--neutral) { color: var(--ui-color-text-muted); }
body.layout-default #enhanced-track-info .download-btn {
  min-height: 44px;
  border: 1px solid var(--ui-color-border);
  border-radius: var(--ui-radius-sm);
  background: var(--ui-color-surface-alt);
  color: var(--ui-color-primary-strong);
  box-shadow: none;
}
body.layout-default #enhanced-track-info .download-btn:hover:not(:disabled) {
  border-color: var(--ui-color-primary-strong);
  background: var(--ui-color-surface-hover);
  color: var(--ui-color-primary-strong);
  box-shadow: none;
  transform: none;
}
body.layout-default #enhanced-track-info .download-btn:disabled { color: var(--ui-color-text-muted); }
body.layout-default #enhanced-track-info .download-btn--error {
  border-color: var(--ui-color-danger);
  color: var(--ui-color-danger);
}
body.layout-default #enhanced-track-info .weather-station-cards-section {
  border-top: 1px solid var(--ui-color-border);
  background: transparent;
}
body.layout-default #enhanced-track-info .weather-station-section-title,
body.layout-default #enhanced-track-info .weather-station-card__title {
  color: var(--ui-color-text);
}
body.layout-default #enhanced-track-info .weather-station-section-title i,
body.layout-default #enhanced-track-info .weather-station-card__chevron { color: var(--ui-color-primary-strong); }
body.layout-default #enhanced-track-info :is(.weather-station-section-meta, .weather-station-card__turnpoint-count, .weather-station-card__badge, .turnpoint-chip) {
  border: 1px solid var(--ui-color-border);
  border-radius: var(--ui-radius-sm);
  background: var(--ui-color-surface-hover);
  color: var(--ui-color-primary-strong);
  letter-spacing: 0;
}
body.layout-default #enhanced-track-info :is(.weather-station-card, .weather-station-card__metric, .altitude-gain-item, .altitude-loss-item) {
  border: 1px solid var(--ui-color-border);
  border-radius: var(--ui-radius-sm);
  background: var(--ui-color-surface-alt);
  color: var(--ui-color-text);
  box-shadow: none;
}
body.layout-default #enhanced-track-info :is(.weather-station-card:hover, .weather-station-card.is-active, .weather-station-card.is-expanded, .altitude-gain-item:hover, .altitude-loss-item:hover) {
  border-color: var(--ui-color-border-strong);
  background: var(--ui-color-surface-hover);
  box-shadow: none;
  transform: none;
}
body.layout-default #enhanced-track-info :is(.weather-station-card__subtitle, .weather-station-card__metric .metric-label, .weather-station-card__turnpoints, .weather-station-card__labels, .turnpoints-label, .turnpoints-empty, .click-hint) {
  color: var(--ui-color-text-muted);
}
body.layout-default #enhanced-track-info :is(.weather-station-card__metric .metric-value, .weather-station-card__labels strong) {
  color: var(--ui-color-text);
}
body.layout-default #enhanced-track-info .weather-station-card__action {
  border: 1px solid var(--ui-color-border);
  border-radius: var(--ui-radius-sm);
  background: var(--ui-color-surface);
  color: var(--ui-color-primary-strong);
}
body.layout-default #enhanced-track-info .weather-station-card__action:hover {
  border-color: var(--ui-color-primary-strong);
  background: var(--ui-color-surface-hover);
  color: var(--ui-color-primary-strong);
  transform: none;
}
body.layout-default #enhanced-track-info .weather-station-card__table :is(th, td) {
  border-color: var(--ui-color-border);
  background: var(--ui-color-surface);
  color: var(--ui-color-text);
}
body.layout-default #enhanced-track-info .altitude-gain-header,
body.layout-default #enhanced-track-info .altitude-gain-value { color: var(--ui-color-success); }
body.layout-default #enhanced-track-info .altitude-loss-header,
body.layout-default #enhanced-track-info .altitude-loss-value { color: var(--ui-color-danger); }
body.layout-default .analyzer-empty-state {
  display: grid;
  gap: .25rem;
  margin: .45rem 0;
  padding: .75rem;
  border: 1px solid var(--ui-color-border);
  border-radius: var(--ui-radius-md);
  background: var(--ui-color-surface-alt);
  color: var(--ui-color-text-muted);
  font-size: .8125rem;
  line-height: 1.4;
}
body.layout-default .analyzer-empty-state strong { color: var(--ui-color-text); font-size: .875rem; }
body.layout-default #left-panel-toggle,
body.layout-default .right-panel-toggle {
  background: var(--ui-color-surface-alt);
  color: var(--ui-color-text-muted);
  border-left: 1px solid var(--ui-color-border);
}
body.layout-default #left-panel-toggle:hover,
body.layout-default .right-panel-toggle:hover { background: var(--ui-color-surface-hover); color: var(--ui-color-primary-strong); }

body.layout-default .map-wrapper { border-bottom: 1px solid var(--ui-color-border); background: var(--ui-color-surface-alt); }
body.layout-default .analyzer-map-control,
body.layout-default .analyzer-color-option {
  border: 1px solid var(--ui-color-border-strong);
  border-radius: var(--ui-radius-md);
  background: var(--ui-color-surface);
  color: var(--ui-color-text);
  box-shadow: none;
  backdrop-filter: none;
  opacity: 1;
}
body.layout-default .analyzer-map-control:not(.is-active):not([aria-pressed="true"]):not(:disabled),
body.layout-default .analyzer-color-option:not(.is-active):not([aria-pressed="true"]):not(:disabled) { opacity: 1; }
body.layout-default .analyzer-map-control:hover:not(:disabled),
body.layout-default .analyzer-color-option:hover:not(:disabled) {
  border-color: var(--ui-color-primary-strong);
  background: var(--ui-color-surface-hover);
  color: var(--ui-color-primary-strong);
}
body.layout-default .analyzer-map-control.is-active,
body.layout-default .analyzer-map-control[aria-pressed="true"],
body.layout-default .analyzer-color-option.is-active,
body.layout-default .analyzer-color-option[aria-pressed="true"] {
  border-color: var(--ui-color-primary-strong);
  background: var(--ui-color-primary-strong);
  color: var(--ui-color-on-primary);
}
body.layout-default .analyzer-map-control.is-active:hover,
body.layout-default .analyzer-map-control[aria-pressed="true"]:hover,
body.layout-default .analyzer-color-option.is-active:hover,
body.layout-default .analyzer-color-option[aria-pressed="true"]:hover {
  background: var(--ui-color-primary);
  color: var(--ui-color-on-primary);
}
body.layout-default .analyzer-map-menu,
body.layout-default .analyzer-color-menu {
  border: 1px solid var(--ui-color-border-strong);
  border-radius: var(--ui-radius-overlay);
  background: var(--ui-color-surface);
  color: var(--ui-color-text);
  box-shadow: var(--ui-shadow-overlay);
  backdrop-filter: none;
}
body.layout-default .analyzer-menu-title,
body.layout-default .analyzer-altitude-values { color: var(--ui-color-text-muted); }
body.layout-default .analyzer-menu-option { min-height: 40px; border-radius: var(--ui-radius-sm); color: var(--ui-color-text); font-weight: 550; }
body.layout-default .analyzer-menu-option:hover,
body.layout-default .analyzer-menu-option:focus-visible,
body.layout-default .analyzer-menu-option.is-active,
body.layout-default .analyzer-menu-option[aria-pressed="true"] {
  border-color: var(--ui-color-border);
  background: var(--ui-color-surface-hover);
  color: var(--ui-color-primary-strong);
}
body.layout-default .analyzer-menu-option i { background: var(--ui-color-surface-alt); color: var(--ui-color-text-muted); }
body.layout-default .analyzer-menu-option.is-active i { background: var(--ui-color-primary-soft); color: var(--ui-color-primary-strong); }
body.layout-default .analyzer-map-control-menu .analyzer-altitude-slider { background: var(--ui-color-surface-alt); color: var(--ui-color-text); }

body.layout-default .chart-panel,
body.layout-default .chart-table-container,
body.layout-default .interactive-details-container,
body.layout-default .meteo-debug-panel,
body.layout-default .airspace-fl-debug-panel {
  border-color: var(--ui-color-border);
  background: var(--ui-color-surface);
  color: var(--ui-color-text);
  box-shadow: none;
}
body.layout-default .chart-table-container { border-left: 0; border-right: 0; }
body.layout-default .analyzer-collapsible__header {
  min-height: 44px;
  padding: .55rem .75rem;
  border-color: var(--ui-color-border);
  background: var(--ui-color-surface-alt);
  color: var(--ui-color-text);
  font-weight: 650;
}
body.layout-default .analyzer-collapsible__title i { color: var(--ui-color-primary-strong); }
body.layout-default .analyzer-collapsible__icon { border-radius: var(--ui-radius-sm); background: var(--ui-color-surface-hover); }
body.layout-default .altitude-chart-toggles {
  gap: .35rem;
  margin: 0;
  padding: .4rem .6rem;
  border-bottom: 1px solid var(--ui-color-border);
  background: var(--ui-color-surface-alt);
  color: var(--ui-color-text);
}
body.layout-default .altitude-chart-toggles .toggle-pill,
body.layout-default .altitude-chart-toggles .trackline-toggle {
  min-height: 36px;
  border: 1px solid var(--ui-color-border);
  border-radius: var(--ui-radius-sm);
  background: var(--ui-color-surface);
  color: var(--ui-color-text);
}
body.layout-default .altitude-chart-toggles .toggle-pill:hover,
body.layout-default .altitude-chart-toggles .trackline-toggle:hover { background: var(--ui-color-surface-hover); }
body.layout-default .altitude-chart-wrapper,
body.layout-default #altitude-chart-container { background: var(--ui-color-surface); color: var(--ui-color-text); }
body.layout-default .altitude-scale-controls { border-color: var(--ui-color-border); background: var(--ui-color-surface-alt); color: var(--ui-color-text); }
body.layout-default .altitude-scale-controls__caption { color: var(--ui-color-text-muted); }
body.layout-default .map-track-info-placeholder { border: 1px solid var(--ui-color-border); border-radius: var(--ui-radius-sm); background: var(--ui-color-surface-alt); color: var(--ui-color-text-muted); }
body.layout-default .map-track-info-placeholder i { color: var(--ui-color-primary-strong); }

body.layout-default .popup { background: rgba(16, 27, 33, .66); backdrop-filter: none; }
body.layout-default .popup-content,
body.dark-mode.layout-default .popup-content {
  width: min(740px, calc(100vw - 24px));
  max-height: calc(100dvh - 24px);
  padding: 1.25rem;
  border: 1px solid var(--ui-color-border-strong);
  border-radius: var(--ui-radius-overlay);
  background: var(--ui-color-surface);
  color: var(--ui-color-text);
  box-shadow: var(--ui-shadow-overlay);
  animation: none;
}
body.layout-default .popup-upload-row { gap: .75rem; margin-bottom: .75rem; }
body.layout-default .aircraft-type-section,
body.layout-default .email-row {
  padding: .75rem;
  border: 1px solid var(--ui-color-border);
  border-radius: var(--ui-radius-md);
  background: var(--ui-color-surface-alt);
  color: var(--ui-color-text);
}
body.layout-default .aircraft-type-label,
body.layout-default .primary-text { color: var(--ui-color-text); }
body.layout-default .secondary-text,
body.layout-default .aircraft-type-hint { color: var(--ui-color-text-muted); }
body.layout-default .aircraft-type-hint { color: var(--ui-color-danger); }
body.layout-default .aircraft-type-options { gap: .35rem; }
body.layout-default .aircraft-type-option {
  min-height: 44px;
  padding: .5rem .6rem;
  border: 1px solid var(--ui-color-border);
  border-radius: var(--ui-radius-sm);
  background: var(--ui-color-surface);
  color: var(--ui-color-text);
  box-shadow: none;
}
body.layout-default .aircraft-type-option.is-selected { border-color: var(--ui-color-primary-strong); background: var(--ui-color-primary-soft); box-shadow: none; }
body.layout-default .modern-checkbox:focus-within { outline: 2px solid var(--ui-color-focus); outline-offset: 2px; }
body.layout-default .checkmark { border-color: var(--ui-color-border-strong); border-radius: var(--ui-radius-sm); background: var(--ui-color-surface); }
body.layout-default .modern-checkbox input[type="checkbox"]:checked + .checkmark { border-color: var(--ui-color-primary-strong); background: var(--ui-color-primary-strong); }
body.layout-default .modern-dropzone,
body.layout-default .modern-dropzone:hover,
body.layout-default .modern-dropzone.drag-over,
body.layout-default .modern-dropzone.is-error {
  min-height: 120px;
  border: 1px dashed var(--ui-color-border-strong);
  border-radius: var(--ui-radius-md);
  background: var(--ui-color-surface-alt);
  color: var(--ui-color-text);
  box-shadow: none;
  transform: none;
}
body.layout-default .modern-dropzone:hover,
body.layout-default .modern-dropzone.drag-over { border-color: var(--ui-color-primary-strong); background: var(--ui-color-surface-hover); }
body.layout-default .modern-dropzone.is-error { border-color: var(--ui-color-danger); }
body.layout-default .upload-icon,
body.layout-default .modern-dropzone:hover .upload-icon { color: var(--ui-color-primary-strong); transform: none; }
body.layout-default .file-type-badge { border-radius: var(--ui-radius-sm); background: var(--ui-color-primary-soft); color: var(--ui-color-primary-strong); }
body.layout-default .popup-actions { justify-content: flex-end; gap: .5rem; }
body.layout-default .modern-btn { min-height: 44px; border-radius: var(--ui-radius-md); box-shadow: none; }
body.layout-default .modern-btn:not(:disabled):hover { transform: none; box-shadow: none; }
body.layout-default .btn-primary.modern-btn { border: 1px solid var(--ui-color-primary-strong); background: var(--ui-color-primary-strong); color: var(--ui-color-on-primary); }
body.layout-default .btn-secondary.modern-btn,
body.layout-default .btn-secondary.modern-btn:not(:disabled):hover { border: 1px solid var(--ui-color-border); background: var(--ui-color-surface); color: var(--ui-color-text); }
body.layout-default .popup-footnote {
  margin: .75rem 0 0;
  padding: .75rem;
  border: 1px solid var(--ui-color-border);
  border-radius: var(--ui-radius-md);
  background: var(--ui-color-surface-alt);
  color: var(--ui-color-text-muted);
  box-shadow: none;
}
body.layout-default .popup-footnote a { color: var(--ui-color-primary-strong); }
body.layout-default .igc-public-notice { border-color: var(--ui-color-border); border-radius: var(--ui-radius-md); background: var(--ui-color-surface); color: var(--ui-color-text); }
body.layout-default .igc-public-notice--floating { border: 0; border-radius: 0; background: rgba(16, 27, 33, .66); }
body.layout-default .igc-public-notice__panel { border: 1px solid var(--ui-color-border); border-radius: var(--ui-radius-overlay); background: var(--ui-color-surface); color: var(--ui-color-text); box-shadow: var(--ui-shadow-overlay); backdrop-filter: none; }
body.layout-default .igc-public-notice__button { min-height: 44px; border-radius: var(--ui-radius-md); }
body.layout-default .igc-public-notice__button--login { background: var(--ui-color-primary-strong); color: var(--ui-color-on-primary); }
body.layout-default .igc-public-notice__button--register,
body.layout-default .igc-public-notice__button--guide { border-color: var(--ui-color-border); background: var(--ui-color-surface-alt); color: var(--ui-color-primary-strong); }
body.layout-default .igc-public-notice__button--guide:hover { border-color: var(--ui-color-border-strong); background: var(--ui-color-surface-hover); color: var(--ui-color-primary-strong); }

body.layout-default :is(button, a, input, select, textarea, summary, [role="button"]):focus-visible { outline: 2px solid var(--ui-color-focus); outline-offset: 2px; }
@media (max-width: 992px) {
  body.layout-default .xc-flightcheck-layout { min-height: 0; }
  body.layout-default .left-panel { min-height: 0; border-right: 0; border-bottom: 1px solid var(--ui-color-border); }
  body.layout-default .left-wrapper { min-height: 0; padding: .75rem 0; }
  body.layout-default .tab-section.is-active:empty { display: none; }
}
@media (max-width: 768px) {
  body.layout-default .tra-nav { padding: .5rem var(--ui-page-gutter); }
  body.layout-default .popup-content { padding: .85rem; }
  body.layout-default .popup-upload-row { grid-template-columns: minmax(0, 1fr); }
  body.layout-default .popup-actions { flex-wrap: wrap; }
  body.layout-default .popup-actions .modern-btn { flex: 0 0 auto; width: 100%; justify-content: center; }
  body.layout-default .analyzer-map-control,
  body.layout-default .analyzer-color-option { min-width: 44px; min-height: 44px; }
}
@media (prefers-reduced-motion: reduce) {
  body.layout-default .popup, body.layout-default .popup-content { animation: none; }
}
