/* Kabutschi · shared logo / brand */
:root {
  --kabutschi-logo-scale: 1;
}

.kabutschi-logo {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  line-height: 0;
  flex-shrink: 0;
  background: transparent;
}

.kabutschi-logo img,
img.kabutschi-logo {
  display: block;
  width: auto;
  height: var(--kabutschi-logo-height, calc(48px * var(--kabutschi-logo-scale)));
  max-width: min(100%, calc(420px * var(--kabutschi-logo-scale)));
  object-fit: contain;
  object-position: left center;
  background: transparent;
}

/* Kein Flash: Custom-Logo erst zeigen, wenn JS die richtige URL gesetzt hat */
html[data-kabutschi-custom-logo="1"] .kabutschi-logo img,
html[data-kabutschi-custom-logo="1"] img[data-kabutschi-logo],
html[data-kabutschi-custom-logo="1"] img.kabutschi-logo {
  opacity: 0;
}

html.kabutschi-logo-ready .kabutschi-logo img,
html.kabutschi-logo-ready img[data-kabutschi-logo],
html.kabutschi-logo-ready img.kabutschi-logo {
  opacity: 1;
}

.kabutschi-logo--nav { --kabutschi-logo-height: calc(56px * var(--kabutschi-logo-scale)); }
.kabutschi-logo--header { --kabutschi-logo-height: calc(64px * var(--kabutschi-logo-scale)); }
.kabutschi-logo--xl { --kabutschi-logo-height: calc(88px * var(--kabutschi-logo-scale)); }
.kabutschi-logo--compact { --kabutschi-logo-height: calc(44px * var(--kabutschi-logo-scale)); }
.kabutschi-logo--boot { --kabutschi-logo-height: calc(64px * var(--kabutschi-logo-scale)); }

.eltern-brand-logo {
  display: flex;
  align-items: center;
  gap: 0.55rem;
  min-width: 0;
}

.eltern-brand-logo .eltern-brand-label {
  font-weight: 700;
  font-size: 0.95rem;
  color: var(--accent);
  white-space: nowrap;
}

.signup-header {
  margin-bottom: 0.1rem;
}

.signup-header h1 {
  margin-top: 0.65rem;
}

.kind-brand {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 0.35rem;
}

@media (max-width: 640px) {
  .kabutschi-logo--nav { --kabutschi-logo-height: calc(48px * var(--kabutschi-logo-scale)); }
}
