
/* Shared site chrome: fixed header. */
.site-head { position: sticky; top: env(safe-area-inset-top, 0px); z-index: 20; background: rgb(255 255 255 / 85%); backdrop-filter: saturate(1.4) blur(10px); border-bottom: 1px solid var(--line); }
body::before { content: ""; position: fixed; inset: 0 0 auto; height: env(safe-area-inset-top, 0px); z-index: 30; background: #fff; }
.site-head-in { display: flex; align-items: center; gap: 28px; height: 60px; }
.site-nav { display: flex; gap: 2px; }
.site-nav a { color: var(--muted); text-decoration: none; font-size: 13.5px; padding: 6px 10px; border-radius: 6px; }
.site-nav a:hover { color: var(--ink); background: var(--hover); }
.site-cta { margin-left: auto; display: flex; gap: 6px; }
@media (max-width: 720px) { .site-nav, .site-cta .btn-ghost { display: none; } }
.site-cta { align-items: center; }
.site-avatar {
  display: inline-grid; place-items: center; width: 32px; height: 32px; margin-left: 4px; border-radius: 50%;
  border: 1px solid var(--line-strong); background: linear-gradient(135deg, #fff, var(--hover));
  font: 600 13px var(--font); color: var(--ink); text-decoration: none; text-transform: uppercase;
}
.site-avatar:hover { border-color: var(--ink); }
