/* Approved centered welcome. Artwork stays intact; explanatory text can enlarge. */
#welcome-screen.active{
  display:grid;
  grid-template-rows:auto auto auto auto;
  grid-template-columns:minmax(0,1fr);
  align-content:safe center!important;
  padding-top:calc(24px + env(safe-area-inset-top));
  padding-bottom:calc(24px + env(safe-area-inset-bottom));
}
#welcome-screen .brand-lockup.full-logo{
  width:100%;
  max-width:340px;
  margin-inline:auto;
  flex-direction:column;
  flex-wrap:nowrap;
  gap:20px!important;
}
#welcome-screen .kablo-logo-mark{width:132px;max-width:100%;height:auto;flex:none}
#welcome-screen .wordmark{min-width:0;width:100%;flex:none;justify-items:center;gap:8px!important;text-align:center}
#welcome-screen .camp-wordmark-image{
  display:block;
  width:180px;
  max-width:100%;
  height:auto;
  object-fit:contain;
}
#welcome-screen .wordmark .tagline{
  font-size:14px!important;
  line-height:1.4!important;
  overflow-wrap:anywhere;
  hyphens:auto;
  word-break:normal;
}
#welcome-screen .intro-copy{font-size:14px;line-height:1.42857143;margin:28px auto 32px;overflow-wrap:anywhere;hyphens:auto;word-break:normal}
#welcome-screen button{font-size:16px;line-height:1.4;min-height:52px;padding:14px 16px;border-radius:16px;box-shadow:none;white-space:normal;overflow-wrap:anywhere}
#welcome-screen .ghost{margin-top:12px;border:1px solid var(--line);background:white}

/* Keep auth controls out of the first paint while boot restores the session. */
#startup-screen.active{
  display:grid;
  place-items:center;
  padding:24px;
  padding-top:calc(24px + env(safe-area-inset-top));
  padding-bottom:calc(24px + env(safe-area-inset-bottom));
}
#startup-screen .brand-lockup.full-logo{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:20px;
  width:100%;
  max-width:340px;
  margin:0 auto;
}
#startup-screen .kablo-logo-mark{width:132px;max-width:100%;height:auto;flex:none}
#startup-screen .wordmark{display:grid;justify-items:center;gap:8px;min-width:0;width:100%;text-align:center}
#startup-screen .camp-wordmark-image{display:block;width:180px;max-width:100%;height:auto;object-fit:contain}
#startup-screen .tagline{display:block;color:var(--primary);font-size:14px;font-weight:900;line-height:1.4;overflow-wrap:anywhere}
