/* Shared chrome, independent of each Orbit's content layout and accent. */
body:has(> main > .site-header) { padding-top: 0; }
.site-header {
  display: grid;
  grid-template-columns: minmax(88px, 1fr) minmax(0, 1.2fr) minmax(88px, 1fr);
  align-items: center;
  gap: .25rem;
  min-height: 88px;
  margin: 0 0 1.5rem;
  border-bottom: 1px solid var(--line);
}
.site-header a { text-decoration: none; }
.site-header-brand {
  display: flex;
  align-items: center;
  width: 100%;
  max-width: 144px;
  min-width: 0;
  min-height: 44px;
}
.site-header-brand img { display: block; width: 100%; height: auto; }
.site-header-section {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  min-height: 44px;
  padding: .5rem 0;
  color: var(--accent);
  font-size: 1.1rem;
  font-weight: 700;
  line-height: 1.25;
  text-align: center;
  overflow-wrap: anywhere;
}
.site-header-tools { display: flex; align-items: center; justify-self: end; }
.site-header-preferences {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  min-height: 44px;
  color: var(--muted);
}
.site-header .site-header-language { position: relative; margin: 0; padding: 0; border: 0; }
.site-header-language > summary {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .2rem;
  min-width: 44px;
  min-height: 44px;
  margin: 0;
  padding: .5rem 0;
  color: var(--muted);
  font-size: .85rem;
  line-height: 1.4;
  list-style: none;
}
.site-header-language > summary::-webkit-details-marker { display: none; }
.site-header-language .language-picker {
  position: absolute;
  top: 100%;
  right: 0;
  z-index: 20;
  display: flex;
  gap: .4rem;
  width: max-content;
  max-width: calc(100vw - 2rem);
  margin: 0;
  padding: .6rem;
  border: 1px solid var(--control-border);
  border-radius: 6px;
  background: var(--surface);
  box-shadow: 0 8px 24px #0008;
}
.site-header-language .language-picker select { min-width: 72px; margin: 0; }
.site-header-language .language-picker button { min-width: 44px; margin: 0; }
@media (max-width: 360px) {
  .site-header-section { font-size: 1rem; }
  /* Keep the longest English section label whole on narrow phones. */
  .site-header-section[href="/preferences"] { font-size: .875rem; }
}
