/* Shared header navigation only; existing page and section styles stay untouched. */
.site-header .nav-shell { position: relative; margin-left: auto; }
.site-header .menu-control { display: none; }
.site-header .primary-navigation { display: flex; align-items: center; gap: clamp(14px, 2vw, 28px); width: auto; font: 12px/1.5 "SFMono-Regular", Consolas, monospace; color: #c5ced7; }
.site-header .primary-navigation > a,
.site-header .primary-navigation summary { display: flex; align-items: center; gap: 8px; min-height: 44px; padding: 10px 4px; cursor: pointer; white-space: nowrap; }
.site-header summary { list-style: none; }
.site-header summary::-webkit-details-marker { display: none; }
.site-header summary::marker { content: ""; }
.site-header summary:hover,
.site-header summary[aria-expanded="true"] { color: #e19a61; }
.site-header a:focus-visible,
.site-header summary:focus-visible { outline: 3px solid #54caff; outline-offset: 3px; border-radius: 3px; }
.site-header .project-menu { position: relative; }
.site-header .project-links { position: absolute; top: calc(100% + 8px); right: 0; width: 300px; max-width: calc(100vw - 32px); max-height: calc(100dvh - 120px); overflow-y: auto; overscroll-behavior: contain; padding: 8px; background: #07111b; border: 1px solid #a86443; border-radius: 8px; box-shadow: 0 18px 48px #000a; }
.site-header .project-links a { display: flex; align-items: center; min-height: 44px; padding: 10px 12px; white-space: normal; overflow-wrap: anywhere; }
.site-header .project-links a:hover { background: #142838; color: #edf3f8; }
.site-header .project-links a::after { display: none; }
.site-header .nav-more { border-top: 1px solid #34424f; margin-top: 6px; padding-top: 6px; }
@media (max-width: 780px) {
  .site-header { display: flex; flex-direction: row; align-items: center; justify-content: space-between; min-height: 84px; gap: 8px; padding: 8px 16px; }
  .site-header .brand { width: 180px; height: auto; }
  .site-header .brand img { width: 100%; height: auto; }
  .site-header .menu-control { display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; padding: 10px 12px; border: 1px solid #a86443; border-radius: 5px; color: #edf3f8; background: #07111b; font: 12px/1.5 Consolas, monospace; cursor: pointer; }
  .site-header .primary-navigation { position: absolute; top: calc(100% + 12px); right: 0; display: flex; flex-direction: column; align-items: stretch; flex-wrap: nowrap; gap: 2px; width: min(340px, calc(100vw - 32px)); max-height: calc(100dvh - 100px); overflow-y: auto; overscroll-behavior: contain; padding: 8px; background: #07111b; border: 1px solid #a86443; border-radius: 8px; box-shadow: 0 18px 48px #000a; }
  .site-header .primary-navigation > a, .site-header .primary-navigation summary { padding: 10px 12px; }
  .site-header .project-links { position: static; width: 100%; max-width: none; max-height: none; overflow: visible; padding: 0 0 0 8px; border: 0; border-left: 1px solid #a86443; border-radius: 0; box-shadow: none; }
}
