/* App shell: TopChrome (header) + BottomNav (the 5 doors).
   Minimal-but-warm spine — next phase enriches. All color via vars. */

.shell { flex: 1; display: flex; flex-direction: column; }

/* ---- TopChrome ---- */
.topchrome {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: calc(14px + env(safe-area-inset-top, 0px)) 20px 12px;
}
.topchrome__brand { display: flex; align-items: center; gap: 9px; }
.topchrome__word { font-weight: 800; font-size: 1.18rem; color: var(--deep-purple); letter-spacing: -.01em; }
.topchrome__slot { margin-inline-start: auto; display: flex; align-items: center; gap: 10px; }

/* ---- SafetyPill ---- */
.safety-pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  border-radius: 999px;
  background: rgba(139, 124, 246, .12);
  color: var(--deep-purple);
  font-size: .76rem;
  font-weight: 600;
}
.safety-pill__glyph { width: 14px; height: 14px; color: var(--soft-purple); }

/* ---- BottomNav (doors, not tabs) ---- */
.bottomnav {
  position: fixed;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  max-width: var(--app-max);
  height: calc(var(--nav-h) + env(safe-area-inset-bottom, 0px));
  padding-bottom: env(safe-area-inset-bottom, 0px);
  display: flex;
  align-items: stretch;
  background: var(--glass-light);
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
  border-top: 1px solid rgba(74, 63, 99, .08);
  z-index: 50;
}
.bottomnav__item {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  color: var(--deep-purple);
  opacity: .55;
  transition: opacity var(--dur-fast) var(--ease-warm), color var(--dur-fast) var(--ease-warm);
  position: relative;
}
.bottomnav__item[aria-current="true"] { opacity: 1; color: var(--soft-purple); }
.bottomnav__icon { width: 22px; height: 22px; }
.bottomnav__label { font-size: .64rem; font-weight: 600; }
.bottomnav__badge {
  position: absolute;
  top: 10px;
  inset-inline-end: 26%;
  min-width: 7px;
  height: 7px;
  border-radius: 999px;
  background: var(--apricot); /* never red */
}
