/* Keep a dark page chrome before Vue paints. */
html, body { background: #07080c; }

/* Default marketing home only (unique terminal widget). */
div.min-h-screen:has(.terminal-window) { display: none !important; }

/*
 * Brand text is bound to the Vue default "Sub2API" until public settings
 * apply. Paint the OEM name with CSS so the first frame is already Model Max.
 */
.sidebar-brand-title {
  font-size: 0 !important;
  line-height: 0 !important;
}
.sidebar-brand-title::after {
  content: "Model Max";
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 700;
}

/* Login / register hero title uses the same default store value. */
.min-h-screen h1.text-gradient {
  font-size: 0 !important;
  line-height: 0 !important;
}
.min-h-screen h1.text-gradient::after {
  content: "Model Max";
  font-size: 1.875rem;
  line-height: 2.25rem;
  font-weight: 700;
  background-image: linear-gradient(to right, rgb(13, 148, 136), rgb(20, 184, 166));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

/* Hide the bundled Sub2API mark if the custom logo has not applied yet. */
.sidebar-logo img[src="/logo.svg"],
.min-h-screen img[src="/logo.svg"] { opacity: 0; }

/* Icon-only mark: keep sidebar/login chips compact. */
.sidebar-logo img,
.min-h-screen img[src*="mm-logo"] {
  height: 32px !important;
  width: auto !important;
  max-width: 56px !important;
  object-fit: contain !important;
  background: transparent !important;
}
