/* ---------- Top bar with the main tabs ---------- */
:root {
  --topbar-h: 56px;
  --brand: #0b3a5c;
}
.topbar {
  position: fixed;
  inset: 0 0 auto 0;
  z-index: 10;
  display: flex;
  gap: 18px;
  align-items: center;
  height: var(--topbar-h);
  padding: 0 16px;
  background: var(--brand);
  color: #fff;
}
.brand {
  display: flex;
  gap: 12px;
  align-items: baseline;
  white-space: nowrap;
}
.brand b {
  font-size: 18px;
  letter-spacing: 0.22em;
}
.brand span {
  font-size: 12px;
  opacity: 0.8;
}
#tabs {
  display: flex;
  gap: 2px;
  height: 100%;
  overflow-x: auto;
}
#tabs a {
  display: flex;
  align-items: center;
  padding: 0 14px;
  border-bottom: 3px solid transparent;
  color: rgb(255 255 255 / 0.75);
  font-weight: 600;
  text-decoration: none;
  white-space: nowrap;
}
#tabs a:hover {
  color: #fff;
}
#tabs a[aria-selected='true'] {
  border-bottom-color: var(--accent);
  color: #fff;
}
#topStatus {
  margin-left: auto;
}
#topStatus .status-bar {
  position: relative;
  top: auto;
  left: auto;
  flex-wrap: nowrap;
}
#topStatus .condition-list {
  position: absolute;
  top: 40px;
  right: 0;
  width: 360px;
  color: var(--hud-text);
}
.plant {
  /* --topbar-live: measured bar height (kit/topbar-height.js) when the bar wraps. */
  top: var(--topbar-live, var(--topbar-h));
}

/* Demo sign-out button (S44, Umbrella/Honeywell edition only; absent on Jabil). */
.topbar-logout {
  margin-left: 12px;
  padding: 6px 12px;
  border: 1px solid rgb(255 255 255 / 0.22);
  border-radius: 8px;
  background: transparent;
  color: #fff;
  font:
    600 12px/1 system-ui,
    sans-serif;
  white-space: nowrap;
  cursor: pointer;
  transition: background 140ms ease;
}
.topbar-logout:hover {
  background: rgb(255 255 255 / 0.12);
}
.topbar-logout:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 2px;
}
