/* Shared header: brand, central categories and right-aligned account utilities. */
.interface-refresh .site-header { display:grid; grid-template-columns:auto minmax(0,1fr); align-items:center; gap:28px; width:100%; max-width:none; min-height:84px; padding:0 max(28px,calc((100vw - 1220px)/2)); position:sticky; top:0; z-index:50; overflow:visible; background:#0e1117f5; border-bottom:1px solid var(--line); backdrop-filter:blur(14px); }
.site-header .brand { white-space:nowrap; }
.site-header .header-navigation { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; align-self:stretch; gap:20px; position:static; width:auto; margin:0; padding:0; background:none; border:0; box-shadow:none; }
.site-header .member-dropdown { display:flex; align-items:stretch; justify-content:center; align-self:stretch; gap:0; position:static; isolation:auto; }
.site-header .member-menu-category { display:flex; position:static; }
.site-header .member-menu-trigger { display:flex; justify-content:center; align-items:center; gap:9px; min-width:112px; min-height:84px; padding:0 18px; margin:0; border:0; border-bottom:3px solid transparent; border-radius:0; background:none; box-shadow:none; color:var(--ink); font:700 15px var(--sans); transition:color .18s ease,border-color .18s ease; }
.site-header .member-menu-trigger:hover, .site-header .member-menu-trigger[aria-expanded=true] { background:none; color:var(--gold); border-bottom-color:var(--gold); transform:none; }
.site-header .member-menu-trigger:focus-visible { outline:2px solid var(--gold); outline-offset:-7px; }
.site-header .member-menu-caret { color:var(--muted); font-size:13px; }
.site-header .member-menu-trigger [data-menu-label] { white-space:nowrap; }
.site-header .header-utilities { display:flex; align-items:center; justify-content:flex-end; gap:12px; justify-self:end; }
.site-header .language-switcher { margin:0; flex-shrink:0; }
.site-header .account-button { max-width:190px; margin:0; }
.site-header #account-name { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }

/* Submenus extend the header across the entire viewport, without floating cards. */
.site-header .member-menu-panel { position:absolute; top:100%; left:0; right:0; z-index:60; width:100%; min-width:0; margin:0; padding:0; border:0; border-bottom:1px solid #ffffff26; border-radius:0; background:#151a21fc; box-shadow:0 14px 26px #0004; backdrop-filter:blur(18px); opacity:0; transform:translateY(-6px); transform-origin:top; transition:opacity .18s ease,transform .2s ease; max-height:calc(100dvh - 84px); overflow-y:auto; }
.site-header .member-menu-panel.open { opacity:1; transform:translateY(0); }
.interface-refresh .site-header .member-menu-panel { background:#151a21; }
.member-menu-inner { display:grid; grid-template-columns:200px minmax(0,1fr); gap:36px; width:min(1220px,calc(100% - 56px)); min-height:196px; margin:0 auto; padding:30px 0; }
.member-menu-heading { padding:12px 28px 12px 0; border-right:1px solid var(--line); font-size:24px; font-weight:700; color:var(--ink); }
.member-menu-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-content:start; gap:6px 32px; }
.site-header .member-menu-panel a { display:flex; align-items:center; justify-content:space-between; min-height:48px; padding:10px 12px; gap:14px; margin:0; border:0; border-radius:3px; font-size:14px; color:var(--ink); transition:color .16s ease,background-color .16s ease; }
.site-header .member-menu-panel a:hover, .site-header .member-menu-panel a:focus-visible { background:#ffffff07; color:var(--gold); transform:none; }
.site-header .member-menu-panel a:focus-visible { outline:2px solid var(--gold); outline-offset:-2px; }
.site-header .member-menu-panel a[aria-current=page] { background:#ffd23e09; color:var(--gold); }
.site-header .member-menu-label { min-width:0; overflow-wrap:normal; }
.site-header .member-menu-arrow { margin-left:auto; color:var(--muted); font-size:15px; }
.member-menu-empty { grid-column:1/-1; padding:12px; color:var(--muted); font-size:14px; }
.site-header .member-menu-admin-trigger, .site-header .member-menu-admin-panel .member-menu-heading, .site-header .member-menu-admin { color:#ff9999; }
.site-header .member-menu-admin-trigger:hover, .site-header .member-menu-admin-trigger[aria-expanded=true] { color:#ffb0b0; border-bottom-color:#ff9999; background:none; }
.site-header .member-menu-admin:hover, .site-header .member-menu-admin:focus-visible { color:#ffb0b0; background:#ff515110; }
.directory-tools { display:flex; justify-content:flex-end; }
.directory-tools:has(button:not([hidden])) { margin-bottom:12px; }

@media(max-width:1100px) and (min-width:761px) {
  .interface-refresh .site-header { gap:18px; padding-inline:24px; }
  .site-header .header-navigation { gap:12px; }
  .site-header .member-menu-trigger { min-width:86px; padding-inline:12px; font-size:14px; }
  .site-header .header-utilities { gap:8px; }
  .site-header .account-button { max-width:150px; font-size:12px; }
}
@media(max-width:1000px) and (min-width:761px) { .site-header .brand > span:last-child { display:none; } }
@media(max-width:760px) {
  .interface-refresh .site-header { grid-template-columns:auto minmax(0,1fr); gap:8px 16px; min-height:0; padding:12px 18px 0; }
  .site-header .header-navigation { display:contents; }
  .site-header .brand { grid-column:1; grid-row:1; }
  .site-header .header-utilities { grid-column:2; grid-row:1; gap:8px; }
  .site-header .member-dropdown { grid-column:1/-1; grid-row:2; justify-content:center; width:100%; }
  .site-header .member-menu-category { flex:1; }
  .site-header .member-menu-trigger { width:100%; min-width:0; min-height:48px; padding:0 5px; font-size:12px; gap:4px; }
  .site-header .member-menu-caret { font-size:11px; }
  .site-header .language-switcher button { min-height:32px; padding:6px 8px; font-size:12px; }
  .site-header .account-button { min-height:36px; padding:6px 9px; max-width:150px; font-size:12px; }
  .site-header .brand > span:last-child { display:none; }
  .site-header .brand-mark { width:32px; height:32px; }
  .site-header .member-menu-panel { max-height:calc(100dvh - 108px); }
  .member-menu-inner { grid-template-columns:1fr; gap:12px; width:calc(100% - 36px); min-height:164px; padding:18px 0 24px; }
  .member-menu-heading { padding:0 0 12px; border-right:0; border-bottom:1px solid var(--line); font-size:19px; }
  .member-menu-links { grid-template-columns:1fr; gap:3px; }
  .site-header .member-menu-panel a { padding:10px; min-height:46px; font-size:13px; }
}
@media(prefers-reduced-motion:reduce) { .site-header .member-menu-panel, .site-header .member-menu-trigger, .site-header .member-menu-caret { transition:none; } }
