/**
 * Phase AC-2 — localhost / 离线 branding fallback
 * 不依赖 opennexus.fun CORS；与生产 jiuyan-branding 视觉对齐的轻量子集
 */
:root {
  --brand-cyan-glow: rgba(0, 243, 255, 0.55);
  --brand-gold-glow: rgba(245, 197, 24, 0.45);
  --brand-chrome-top: linear-gradient(180deg, rgba(0, 243, 255, 0.08) 0%, transparent 100%);
}

/* 顶栏：生产域 branding 缺失时的 chrome 补强 */
.topbar {
  background: linear-gradient(180deg, rgba(4, 8, 18, 0.98) 0%, rgba(2, 3, 8, 0.97) 100%);
  border-bottom-color: rgba(0, 243, 255, 0.22);
  box-shadow: 0 1px 0 rgba(0, 243, 255, 0.06), 0 8px 24px rgba(0, 0, 0, 0.35);
}

.topbar::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 1px;
  background: linear-gradient(
    90deg,
    transparent 0%,
    var(--brand-cyan-glow) 20%,
    rgba(184, 79, 255, 0.35) 50%,
    var(--brand-cyan-glow) 80%,
    transparent 100%
  );
  pointer-events: none;
}

.tb-logo {
  letter-spacing: 4px;
  text-shadow:
    0 0 12px var(--brand-cyan-glow),
    0 0 24px rgba(0, 243, 255, 0.15);
}

.tb-logo span {
  animation: brand-logo-pulse 4s ease-in-out infinite;
}

@keyframes brand-logo-pulse {
  0%,
  100% {
    text-shadow: 0 0 8px var(--brand-cyan-glow);
  }
  50% {
    text-shadow: 0 0 16px var(--brand-cyan-glow), 0 0 28px rgba(0, 243, 255, 0.2);
  }
}

/* 顶栏状态点 */
.status-dot {
  box-shadow: 0 0 8px rgba(0, 255, 136, 0.55);
}

/* 模式切换 */
.mode-toggle .mode-btn.active.train {
  box-shadow: inset 0 0 12px rgba(245, 197, 24, 0.12), 0 0 8px rgba(245, 197, 24, 0.08);
}

.mode-toggle .mode-btn.active.live {
  box-shadow: inset 0 0 12px rgba(255, 42, 42, 0.12), 0 0 8px rgba(255, 42, 42, 0.08);
}

/* 返回/外链按钮 */
.back-btn {
  transition: border-color 0.2s, color 0.2s, box-shadow 0.2s;
}

.back-btn:hover {
  border-color: rgba(0, 243, 255, 0.45);
  box-shadow: 0 0 10px rgba(0, 243, 255, 0.12);
}

/* OODA / 顶栏 Tab */
.ooda-tab.tb-menu-tab {
  border-bottom: 2px solid transparent;
  transition: color 0.2s, border-color 0.2s, background 0.2s;
}

.ooda-tab.tb-menu-tab:hover,
.ooda-tab.tb-menu-tab.active {
  border-bottom-color: rgba(0, 243, 255, 0.55);
  background: rgba(0, 243, 255, 0.04);
}

.ooda-dot {
  box-shadow: 0 0 6px currentColor;
}

/* 右栏 / 左栏面板标题 */
.panel-title,
.ooda-tab {
  text-shadow: 0 0 8px rgba(0, 243, 255, 0.08);
}

/* Bootstrap / Runtime 芯片统一光晕 · BOOT-NOISE 软黄 */
.brain-bootstrap-chip.live,
.brain-runtime-gate-chip.live {
  box-shadow: 0 0 10px rgba(0, 255, 136, 0.15);
}
.brain-bootstrap-chip.degraded,
.brain-bootstrap-chip.soft {
  border-color: rgba(230, 190, 80, 0.55);
  color: #e8c96a;
  box-shadow: 0 0 10px rgba(230, 190, 80, 0.12);
}

/* 地图 HUD 坐标条 */
.map-hud,
.map-coord {
  text-shadow: 0 0 6px rgba(0, 0, 0, 0.8);
}

/* FOUC 兜底：字体未加载时保持战术 UI 可读 */
body.branding-lite-pending .topbar,
body.branding-lite-pending .left-panel,
body.branding-lite-pending .right-panel {
  opacity: 1;
  visibility: visible;
}

body.branding-lite-ready {
  transition: filter 0.25s ease;
}

/* 字体加载完成微抛光（可选，极轻） */
body.branding-lite-ready .tb-logo {
  filter: saturate(1.05);
}
