/* ===== TopHeader.css ===== */

.topHeader {
  /* default: público => sticky */
  position: sticky;
  top: 0;
  z-index: 100;
  height: 64px;

  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 12px;

  padding: 0 12px;
  border-bottom: 1px solid var(--border, #e8e8e8);
  background: var(--white, #fff);

  --logo-h: 40px;
  --logo-w: 110px;
}

/* app interno => volta a ser FIXED e ocupa a janela toda */
.topHeader--fixed {
  position: fixed;
  left: 0;
  right: 0;
}

.topHeader__left,
.topHeader__right { display: flex; align-items: center; gap: 12px; min-width: 0; }
.topHeader__brand { display: flex; align-items: center; gap: 10px; min-width: 0; }

.topHeader__logoBox {
  display: flex; align-items: center; justify-content: center;
  inline-size: auto; max-inline-size: var(--logo-w, 120px);
  block-size: var(--logo-h);
  padding: 0; border-radius: 0; background: transparent;
}

.topHeader__logoBox--project { --logo-h: 36px; --logo-w: 120px; }

.topHeader__logoBox img {
  height: 100%; width: auto; max-width: 100%; object-fit: contain;
}

.topHeader__titles { display: flex; flex-direction: column; line-height: 1.1; min-width: 0; }
.topHeader__title { font-weight: 600; color: var(--textPrimary,#1f1f1f); font-size: clamp(14px,1.8vw,16px); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.topHeader__subtitle { color: var(--textSecondary,#8c8c8c); font-size: clamp(11px,1.4vw,12px); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-inline-size: 420px; }

.topHeader__divider { inline-size: 3px; block-size: 38px; border-radius: 4px; background: var(--border,#e8e8e8); }
.topHeader__project { display: flex; align-items: center; gap: 8px; min-width: 0; }
.topHeader__right { gap: 8px; flex-wrap: wrap; justify-content: flex-end; }

/* ---- Mobile ---- */
@media (max-width: 768px) {
  .topHeader { height: auto; padding: 8px 12px; grid-template-columns: 1fr auto; grid-auto-rows: minmax(40px,auto); row-gap: 8px; --logo-h: 32px; --logo-w: 90px; }
  .topHeader__right { grid-column: 1/-1; justify-content: flex-start; }
  .topHeader__subtitle { max-inline-size: 60vw; }
}


/*# sourceMappingURL=styles.4ae15e5d5ea1620c4d92.css.map*/