.theme-title {
  max-width: 100%;
  text-wrap: balance;
  line-break: strict;
  word-break: normal;
  overflow-wrap: break-word;
  white-space: normal;
}

.theme-subtitle {
  max-width: 52ch;
  margin: 0;
  font-weight: 600;
  line-height: 1.45;
  text-wrap: balance;
}

.neon-subtitle {
  color: #d9e8f4;
  font-size: clamp(19px, 2.4vw, 28px);
  letter-spacing: -0.035em;
}

.editorial-subtitle {
  color: var(--cyan);
  font: 600 clamp(17px, 2vw, 24px) / 1.35 Manrope, sans-serif;
  letter-spacing: -0.03em;
}

.terminal-subtitle {
  color: var(--term-bright, #77ffac);
  font: 500 clamp(15px, 2vw, 21px) / 1.5 'DM Mono';
}

.mesh-subtitle {
  color: var(--mesh-accent, #3a5cff);
  font: 600 clamp(18px, 2.1vw, 25px) / 1.45 Manrope, sans-serif;
  letter-spacing: -0.02em;
}

.chrome-subtitle {
  color: #cfd4dc;
  font: 500 clamp(17px, 2vw, 23px) / 1.5 Manrope, sans-serif;
  letter-spacing: -0.01em;
}

.globe-subtitle {
  color: #d4d4d8;
  font: 500 clamp(17px, 2vw, 22px) / 1.55 'DM Mono';
  letter-spacing: -0.01em;
}

.isometric-subtitle {
  color: var(--cyan, #4f8cff);
  font: 700 clamp(18px, 2.1vw, 24px) / 1.45 Manrope, sans-serif;
  letter-spacing: -0.02em;
}

.site-logo-image {
  display: block;
  flex: 0 0 auto;
  object-fit: contain;
}

/* 品牌名不换行；后台可选择字体并在需要时固定字号。 */
body.logo-font-system a[class*="brand"],
body.logo-font-system .circuit-rail-logo-text {
  font-family: Manrope, 'Microsoft YaHei', sans-serif !important;
}

body.logo-font-serif a[class*="brand"],
body.logo-font-serif .circuit-rail-logo-text {
  font-family: 'Noto Serif SC', SimSun, serif !important;
}

body.logo-font-mono a[class*="brand"],
body.logo-font-mono .circuit-rail-logo-text {
  font-family: 'DM Mono', 'Microsoft YaHei', monospace !important;
}

body.logo-size-custom a[class*="brand"],
body.logo-size-custom .circuit-rail-logo-text {
  font-size: var(--configured-logo-font-size) !important;
}

a[class*="brand"] {
  max-width: 100%;
  min-width: 0;
  white-space: nowrap;
}

.light-brand > span:last-child {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
