/* footflow 共通ヘッダー */

#app-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  height: 48px;
  min-height: 48px;
  padding: 0 12px;
  background: var(--kr-bg);
  color: var(--kr-ink);
  border-bottom: 1px solid var(--kr-hair);
  font-family: var(--kr-font-sans);
}

.app-header__back,
.app-header__back-spacer {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  color: var(--kr-ink);
  text-decoration: none;
  border-radius: 6px;
  flex-shrink: 0;
}
.app-header__back:hover { background: var(--kr-accent-sub); }
.app-header__back .material-symbols-outlined { font-size: 22px; }

.app-header__title {
  flex: 1;
  color: var(--kr-ink);
  text-decoration: none;
  font-size: 1rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: left;
  padding: 0 4px;
  margin: 0;
}
.app-header__title--hero {
  font-size: 1.3rem;
  font-weight: 700;
}
.app-header__title--brand {
  display: inline-flex;
  align-items: center;
}
.app-header__logo {
  display: block;
  height: 26px;
  width: auto;
}
.app-header__title--hero .app-header__logo { height: 32px; }

.app-header__right {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  flex-shrink: 0;
  max-width: 60%;
}

.app-header__account,
.app-header__login {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--kr-ink);
  text-decoration: none;
  padding: 6px 8px;
  border-radius: 6px;
  font-size: 0.85rem;
  flex-shrink: 0;
  max-width: 100%;
}
.app-header__account:hover,
.app-header__login:hover { background: var(--kr-accent-sub); }
.app-header__account .material-symbols-outlined { font-size: 20px; color: var(--kr-accent); }

.app-header__admin {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  color: var(--kr-ink);
  text-decoration: none;
  border-radius: 6px;
  flex-shrink: 0;
}
.app-header__admin:hover { background: var(--kr-accent-sub); }
.app-header__admin .material-symbols-outlined { font-size: 22px; color: var(--kr-accent); }

.app-header__identity,
.app-header__email {
  max-width: 180px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: var(--kr-ink-dim);
}

@media (max-width: 480px) {
  .app-header__identity,
  .app-header__email { max-width: 140px; font-size: 0.8rem; }
  .app-header__title { font-size: 0.95rem; }
}

/* ライトテーマのページで使う場合のオーバーライド */
body.app-theme-light #app-header {
  background: var(--kr-surface);
  color: var(--kr-ink);
  border-bottom-color: var(--kr-hair);
}
body.app-theme-light .app-header__back,
body.app-theme-light .app-header__title,
body.app-theme-light .app-header__account,
body.app-theme-light .app-header__login { color: var(--kr-ink); }
body.app-theme-light .app-header__identity,
body.app-theme-light .app-header__email { color: var(--kr-ink-dim); }
