.mc-map-dual-stage{position:relative;width:100%;min-height:420px;background:var(--portal-map-canvas-bg);overflow:hidden}
[data-bs-theme="dark"] .mc-map-dual-stage{background:var(--portal-dark-map-canvas-bg)}
.mc-map-dual-pane{position:absolute;inset:0;width:100%;height:100%}
.mc-map-dual-pane[hidden]{display:none!important}
.mc-globe-canvas,.mc-map-dual-pane.mc-globe-canvas{background:#08131d}
.mc-globe-canvas .cesium-viewer,.mc-globe-canvas .cesium-viewer-cesiumWidgetContainer,.mc-globe-canvas .cesium-widget,.mc-globe-canvas canvas{width:100%;height:100%}
.mc-globe-canvas .cesium-viewer-bottom{font-size:10px}
.mc-globe-canvas .cesium-widget-credits{max-width:70%;opacity:.78}
.mc-globe-controls{position:absolute;z-index:19;top:14px;right:14px;display:flex;align-items:center;gap:5px;padding:5px;border:1px solid rgba(255,255,255,.2);border-radius:12px;background:rgba(8,19,29,.86);box-shadow:0 8px 24px rgba(0,0,0,.25);backdrop-filter:blur(10px)}
.mc-globe-controls button{width:36px;height:34px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:rgba(255,255,255,.06);color:#fff;cursor:pointer;transition:background .15s ease,transform .15s ease}
.mc-globe-controls button:hover{background:rgba(255,255,255,.15);transform:translateY(-1px)}
.mc-globe-hint{position:absolute;z-index:10;right:14px;bottom:28px;padding:8px 11px;border:1px solid rgba(255,255,255,.28);border-radius:10px;background:rgba(8,19,29,.88);color:#fff;font-size:.76rem;font-weight:800;white-space:nowrap;pointer-events:none;box-shadow:0 6px 18px rgba(0,0,0,.28);backdrop-filter:blur(8px);transition:opacity .6s ease}
.mc-globe-hint.is-dimmed{opacity:.74}
.mc-globe-info{position:absolute;z-index:18;right:14px;top:64px;display:none;max-width:min(360px,calc(100% - 28px));padding:12px 38px 12px 14px;border:1px solid rgba(255,255,255,.18);border-radius:10px;background:rgba(8,19,29,.9);box-shadow:0 10px 28px rgba(0,0,0,.28);backdrop-filter:blur(10px);color:#fff;font-size:.84rem;line-height:1.35}
.mc-globe-info.is-visible{display:block}
.mc-globe-info a{color:#9bd6ff;font-weight:800}
.mc-globe-info-title{display:block;margin-bottom:6px;font-size:.92rem}
.mc-globe-info-close{position:absolute;right:8px;top:6px;border:0;background:transparent;color:#fff;font-size:1.35rem;line-height:1;opacity:.8;cursor:pointer}
.mc-globe-info-close:hover{opacity:1}
.mc-globe-loading{position:absolute;inset:0;z-index:25;display:flex;align-items:center;justify-content:center;gap:9px;background:rgba(8,19,29,.82);color:#fff;font-weight:800}
.mc-globe-error{position:absolute;inset:0;z-index:25;display:flex;align-items:center;justify-content:center;padding:30px;text-align:center;background:rgba(8,19,29,.94);color:#fff}
.mc-pirep-replay{display:grid;grid-template-columns:auto minmax(220px,1fr) auto;align-items:center;gap:10px 14px;padding:12px 14px;border-top:1px solid var(--portal-border-current);background:var(--portal-surface-current)}
.mc-pirep-replay-primary{display:flex;align-items:center;gap:7px}
.mc-pirep-replay-timeline{display:flex;align-items:center;gap:10px;min-width:0}
.mc-pirep-replay input[type="range"]{flex:1;min-width:160px;accent-color:var(--portal-primary)}
.mc-pirep-replay-options{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.mc-pirep-replay-select{height:34px;border:1px solid var(--portal-border-current);border-radius:8px;background:var(--portal-surface-current);color:var(--portal-text-current);padding:0 8px;font-size:.76rem;font-weight:800}
.mc-pirep-replay-readout{min-width:220px;font-size:.78rem;color:var(--portal-muted-current);font-weight:800;white-space:nowrap}
.mc-pirep-replay .btn{min-width:38px}
.mc-pirep-replay-speed-label,.mc-pirep-replay-height-label{font-size:.68rem;color:var(--portal-muted-current);font-weight:800;text-transform:uppercase;letter-spacing:.035em}
@media (max-width:767.98px){.mc-pirep-replay{grid-template-columns:1fr}.mc-pirep-replay-options{justify-content:flex-start}.mc-pirep-replay-readout{min-width:0;white-space:normal}.mc-globe-hint{right:10px;bottom:10px;font-size:.68rem;max-width:calc(100% - 20px);white-space:normal}}
@media (max-width:575.98px){.mc-map-dual-stage{min-height:360px}.mc-map-mode-overlay{left:50%;top:9px}.mc-map-mode-switch .btn{min-width:52px;padding:.38rem .58rem}.mc-globe-controls{right:9px;top:9px}.mc-globe-controls button{width:32px;height:31px}.mc-globe-info{left:10px;right:10px;top:54px;max-width:none}}

/* 1.6.88 - Fullscreen maps must fill the fullscreen viewport, not keep their embedded height. */
.mc-map-dual-stage:fullscreen,
.mc-live-map:fullscreen {
  width:100vw !important;
  height:100vh !important;
  height:100dvh !important;
  min-height:100vh !important;
  min-height:100dvh !important;
  max-width:none !important;
  max-height:none !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  overflow:hidden !important;
  background:#08131d !important;
}
.mc-live-map:fullscreen > .mc-live-map-canvas {
  width:100% !important;
  height:100% !important;
  min-height:100% !important;
  max-height:none !important;
}
.mc-map-dual-stage:fullscreen > .mc-map-dual-pane {
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  min-height:100% !important;
}
.mc-map-dual-stage::backdrop,
.mc-live-map::backdrop { background:#08131d; }
/* WebKit fallback for older fullscreen implementations. */
.mc-map-dual-stage:-webkit-full-screen,
.mc-live-map:-webkit-full-screen {
  width:100vw !important;
  height:100vh !important;
  min-height:100vh !important;
  max-width:none !important;
  max-height:none !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  overflow:hidden !important;
  background:#08131d !important;
}
.mc-live-map:-webkit-full-screen > .mc-live-map-canvas { width:100% !important; height:100% !important; min-height:100% !important; max-height:none !important; }
.mc-map-dual-stage:-webkit-full-screen > .mc-map-dual-pane { inset:0 !important; width:100% !important; height:100% !important; min-height:100% !important; }

/* PIREP landing/runway analysis (FPE-backed, render-only) */
.mc-runway-analysis{padding:2px 0}.mc-runway-analysis-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}.mc-runway-analysis-head strong{font-family:var(--portal-font-headings);font-size:1.02rem;color:var(--portal-text-current)}.mc-runway-source{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;background:rgba(var(--portal-primary-rgb),.12);border:1px solid rgba(var(--portal-primary-rgb),.3);color:var(--portal-primary);font-size:.72rem;font-weight:900;letter-spacing:.05em}.mc-runway-schematic{border:1px solid var(--portal-border-current);border-radius:calc(var(--portal-radius) + 2px);background:linear-gradient(180deg,rgba(var(--portal-primary-rgb),.035),rgba(var(--portal-primary-rgb),.01));padding:8px;overflow:hidden}.mc-runway-schematic svg{display:block;width:100%;height:auto;min-height:180px;color:var(--portal-muted-current)}.mc-rwy-zone-end{stroke:#21c17a;stroke-width:4;stroke-dasharray:9 8}.mc-rwy-label,.mc-rwy-zone-label,.mc-rwy-touchdown-label,.mc-rwy-dimension-label{font-family:var(--portal-font-body);font-weight:900;fill:var(--portal-text-current)}.mc-rwy-label,.mc-rwy-zone-label{font-size:18px}.mc-rwy-zone-label{fill:#18b26e}.mc-rwy-touchdown-ring{fill:rgba(255,191,63,.15);stroke:#ffbf3f;stroke-width:5}.mc-rwy-touchdown-dot{fill:#ffbf3f;stroke:#111827;stroke-width:2}.mc-rwy-touchdown-label{font-size:18px;fill:#f7b733}.mc-rwy-dimension{stroke:var(--portal-muted-current);stroke-width:2}.mc-rwy-dimension-label{font-size:17px;fill:var(--portal-muted-current)}.mc-runway-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}.mc-runway-stats>div{padding:10px 12px;border:1px solid var(--portal-border-current);border-radius:var(--portal-radius);background:rgba(var(--portal-primary-rgb),.025);min-width:0}.mc-runway-stats small{display:block;color:var(--portal-muted-current);font-size:.69rem;font-weight:800;text-transform:uppercase;letter-spacing:.035em;margin-bottom:2px}.mc-runway-stats strong{display:block;color:var(--portal-text-current);font-size:.92rem;font-variant-numeric:tabular-nums}.mc-runway-stats strong span{color:var(--portal-muted-current);font-weight:700}@media(max-width:767.98px){.mc-runway-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:575.98px){.mc-runway-analysis-head{display:block}.mc-runway-source{margin-top:8px}.mc-runway-stats{grid-template-columns:1fr}.mc-runway-schematic{padding:2px}.mc-runway-schematic svg{min-width:620px}}


/* MercargoPortal 1.6.82 · logos de aerolínea y fondos internos independientes.
   Landing y video no se alteran. */
.portal-airline-theme-logo-dark { display: none !important; }
[data-bs-theme="dark"] .portal-airline-theme-logo-light { display: none !important; }
[data-bs-theme="dark"] .portal-airline-theme-logo-dark { display: inline-block !important; }

.mc-profile-hero,
.mc-pirep-hero,
.mc-airport-hero.mc-page-title {
  background:
    linear-gradient(90deg, rgba(var(--portal-primary-rgb), var(--portal-hero-overlay-opacity)), rgba(var(--portal-primary-rgb), calc(var(--portal-hero-overlay-opacity) * .62))),
    var(--portal-header-bg-image, var(--portal-bg-image)) center / cover no-repeat;
  color: var(--portal-hero-text);
}
.mc-profile-copy h1,
.mc-profile-copy p,
.mc-profile-meta,
.mc-profile-rank small,
.mc-profile-rank strong,
.mc-pirep-hero .mc-route-name,
.mc-pirep-hero .small,
.mc-airport-hero.mc-page-title h1,
.mc-airport-hero.mc-page-title p { color: var(--portal-hero-text) !important; }
.mc-profile-avatar { border-color: rgba(255,255,255,.32); }


/* MercargoPortal 1.6.83 · vuelos en vivo + Tours */
.mc-live-flight-table .mc-live-flight-airline-logo {
  display: inline-block;
  width: auto !important;
  height: auto !important;
  max-width: 96px !important;
  max-height: 28px !important;
  object-fit: contain !important;
  vertical-align: middle;
}
.mc-tour-card-award {
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:12px;
  padding:9px 11px;
  border:1px solid var(--portal-border-current);
  border-radius:var(--portal-radius);
  background:rgba(var(--portal-primary-rgb),.03);
}
.mc-tour-card-award img { width:46px !important; height:46px !important; max-width:46px !important; max-height:46px !important; object-fit:contain !important; flex:0 0 46px; }
.mc-tour-card-award small,.mc-tour-card-award strong { display:block; }
.mc-tour-card-award small { color:var(--portal-muted-current); font-size:.66rem; text-transform:uppercase; letter-spacing:.05em; font-weight:800; }
.mc-tour-card-award strong { color:var(--portal-heading-current); font-size:.84rem; line-height:1.25; }
.mc-tour-card-footer { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:10px 14px; background:rgba(var(--portal-primary-rgb),.02); }
@media (max-width:575.98px) { .mc-tour-card-footer { align-items:stretch; flex-direction:column; } .mc-tour-card-footer .btn { width:100%; } }


/* MercargoPortal 1.6.84 · ajuste de logo en vuelos activos */
.mc-live-flight-table th:first-child,
.mc-live-flight-table td:first-child { min-width:104px; width:104px; }
.mc-live-flight-table .mc-live-flight-airline-logo { max-width:96px !important; max-height:28px !important; }



.mc-map-mode-switch{display:flex;gap:3px;background:#102c43;border:1px solid #729bbd;border-radius:24px;padding:4px;z-index:30}.mc-map-mode-overlay{position:absolute;top:14px;left:50%;transform:translateX(-50%)}.mc-map-mode-switch .btn{border-radius:20px;color:#fff}.mc-map-mode-switch .btn.active{background:var(--portal-primary,#004477);color:#fff}.oe-tour-map-stage,.pv-assignment-map-stage{position:relative;overflow:hidden}.pv-assignment-map-stage .mc-map-dual-pane{height:100%;width:100%}

/* Keep Leaflet's panes and controls inside their own map stacking context. */
.mc-map-dual-stage,.mc-live-map,.oe-tour-map-stage,.pv-assignment-map-stage{isolation:isolate;position:relative}
.mc-map-dual-pane,.mc-live-map>.mc-live-map-canvas{z-index:0;isolation:isolate}
.mc-map-mode-switch.mc-map-mode-overlay{z-index:1000!important;pointer-events:auto!important;display:flex!important;visibility:visible!important;opacity:1!important;white-space:nowrap;box-shadow:0 3px 12px #0008}
.mc-map-mode-switch .btn{pointer-events:auto;min-width:54px;font-weight:700;border:1px solid transparent}
.mc-map-mode-switch .btn:not(.active){color:#fff!important;background:#18364e!important}
.mc-map-mode-switch .btn.active{color:#fff!important;background:#176ba0!important;border-color:#a3d4ff}

/* Replay readout must not resize the seek bar as its numbers change. */
.mc-pirep-replay-timeline{display:grid;grid-template-columns:minmax(0,1fr);gap:6px;width:100%;min-width:0}
.mc-pirep-replay-timeline input[type="range"]{display:block;width:100%;min-width:0;box-sizing:border-box;margin:0}
.mc-pirep-replay-readout{display:block;min-width:0;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-variant-numeric:tabular-nums}
.mc-pirep-replay-primary{flex-wrap:wrap}
