/* ============================================================
   components/header.css
   Global header + write button
   ============================================================ */

/* ===== HEADER ===== */
.header {
  position: fixed; top: 0; left: 0; right: 0; z-index: 100;
  background: #fff; box-shadow: 0 2px 8px rgba(0,0,0,0.08);
  height: 64px; display: flex; align-items: center;
}
.header__inner {
  max-width: 1280px; margin: 0 auto; padding: 0 24px;
  display: flex; align-items: center; justify-content: space-between; width: 100%;
}
.header__logo {
  font-size: var(--font-xl); font-weight: 900; color: var(--primary);
  display: flex; align-items: center; gap: 8px;
}
.header__logo-sub { color: var(--text); font-weight: 500; font-size: 12px; }
.header__logo-badge {
  background: var(--primary); color: #fff; font-size: 11px; font-weight: 700;
  padding: 2px var(--space-2); border-radius: 4px; margin-left: 4px;
}
.header__nav { display: flex; gap: 24px; align-items: center; flex-wrap: nowrap; }
.header__nav a { font-size: 14px; font-weight: 500; color: var(--text-mid); white-space: nowrap; }
.header__nav a:hover { color: var(--primary); }
.header__auth { display: flex; align-items: center; gap: 8px; }
.header__login {
  font-size: var(--font-sm); font-weight: 700; color: var(--primary);
  padding: var(--space-2) var(--space-4); border: 2px solid var(--primary); border-radius: 50px;
  transition: color .15s, background .15s, border-color .15s, box-shadow .15s, transform .15s;
}
.header__login:hover { background: var(--primary-bg); }
.header__signup {
  font-size: var(--font-sm); font-weight: 700; color: #fff;
  background: linear-gradient(135deg, var(--primary), var(--primary-light));
  padding: var(--space-2) var(--space-4); border-radius: 50px;
  transition: color .15s, background .15s, border-color .15s, box-shadow .15s, transform .15s;
}
.header__signup:hover {
  transform: translateY(-1px);
  box-shadow: 0 2px 8px rgba(var(--primary-rgb),0.3);
}
.header__back {
  font-size: var(--font-base); color: var(--text-muted);
  display: flex; align-items: center; gap: 6px;
}
.header__back:hover { color: var(--primary); }

/* 2026-04-21: ヘッダー右寄せ構造 + 口コミを書くピルボタン */
.header__nav { margin-left: auto; margin-right: 24px; }
.header__auth { gap: 12px; }
.header__write {
  font-size: var(--font-sm); font-weight: 700; color: #fff;
  background: linear-gradient(135deg, var(--primary), var(--primary-light));
  padding: var(--space-2) var(--space-4); border-radius: 50px;
  transition: color .15s, background .15s, border-color .15s, box-shadow .15s, transform .15s; white-space: nowrap;
}
.header__write:hover {
  transform: translateY(-1px);
  box-shadow: 0 2px 8px rgba(var(--primary-rgb),0.3);
  color: #fff;
}
@media (max-width: 768px) {
  .header__nav { margin-left: 0; margin-right: 0; }
}
