:root {
  --zgai-blue: #1f55e8;
  --zgai-navy: #173a8f;
}

.sidebar-header {
  min-height: 68px;
}

.sidebar-logo-img {
  max-width: 178px;
  padding: 2px 8px;
}

.sidebar-logo-icon-img,
.login-logo,
.home-logo {
  object-fit: contain;
}

.login-logo {
  width: min(232px, 72vw);
  height: 80px;
}

.login-tagline {
  max-width: 23rem;
  margin-left: auto;
  margin-right: auto;
  line-height: 1.6;
}

.app-footer {
  padding-top: 18px;
  padding-bottom: 18px;
}

.app-footer-inner {
  gap: 0 !important;
  font-size: 0 !important;
}

/*
 * Preserve the upstream React nodes, but keep the product-facing footer
 * visually stable through CSS-generated text. Removing or reparenting those
 * nodes breaks React reconciliation during route changes.
 */
.app-footer-inner > * {
  display: none !important;
}

.app-footer-inner::before {
  color: var(--color-text-primary);
  content: "ZGAI · 招个AI\A企业AI员工服务平台\A让AI上岗，而不只是在线 · 能协同、能交付、能验收";
  font-size: 12px;
  font-weight: 600;
  line-height: 1.75;
  text-align: center;
  white-space: pre-line;
}

.app-footer-inner::after {
  color: var(--color-text-muted);
  content: "© 2026 招个AI · 技术底座：AegisLM Gateway · 基于 LocalAI（MIT）";
  display: block;
  font-size: 11px;
  line-height: 1.7;
  text-align: center;
}

[data-theme="dark"] .sidebar-logo-img {
  filter: brightness(0) invert(1);
  opacity: 0.94;
}

@media (max-width: 720px) {
  .sidebar-logo-img {
    max-width: 156px;
  }
}
