/* Shared public chrome; never targets the in-game HUD. */
.shell.public-shell, #authScreen .public-shell {
  width: min(1240px, 100%);
  margin: 0 auto;
  padding: 0 44px;
}
:is(.public-content, #authScreen) .public-header {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  grid-template-areas: "brand nav count";
  align-items: center;
  gap: 24px;
  min-height: 105px;
  padding: 18px 0;
  border-bottom: 1px solid #bdc7a829;
  color: #e2c38a;
  font: 14px/1.5 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
:is(.public-content, #authScreen) .public-header a { text-decoration: none; }
:is(.public-content, #authScreen) .public-header a:focus-visible { outline: 2px solid #e2c38a; outline-offset: 5px; }
:is(.public-content, #authScreen) .public-header__brand {
  grid-area: brand;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  width: fit-content;
  min-height: 44px;
  color: #e2c38a;
}
.public-header__brand svg { flex: 0 0 auto; }
.public-header__brand > span { font: 14px/1.15 Georgia, "Times New Roman", serif; letter-spacing: 2px; }
.public-header__brand small { display: block; margin-top: 5px; font: 10px/1.1 system-ui, sans-serif; letter-spacing: 4px; }
.public-header__nav { grid-area: nav; display: flex; align-items: center; justify-content: flex-start; gap: 22px; min-width: 0; }
:is(.public-content, #authScreen) .public-header__nav a { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 8px 0; color: #c5cdbf; white-space: nowrap; }
:is(.public-content, #authScreen) .public-header__nav a:hover,
:is(.public-content, #authScreen) .public-header__nav a[aria-current] { color: #f6deb1; }
.public-header__languages { display: inline-flex; align-items: center; gap: 4px; padding-left: 14px; border-left: 1px solid #bdc7a829; font-size: 12px; letter-spacing: .04em; }
:is(.public-content, #authScreen) .public-header__languages a { min-width: 36px; padding: 8px 4px; }
:is(.public-content, #authScreen) .public-header__languages a[aria-current] { text-decoration: underline; text-underline-offset: 4px; }
:is(.public-content, #authScreen) .public-header__count {
  grid-area: count;
  margin: 0;
  min-width: 112px;
  text-align: right;
  color: #a9b8ab;
  font-size: 10px;
  line-height: 1.45;
}
.public-header__count[hidden] { display: none; }
.public-header__count strong { display: block; color: #e2c38a; font: 500 17px/1.25 system-ui, sans-serif; font-variant-numeric: tabular-nums; }
.public-header__count > span { display: block; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
@media (max-width: 1000px) {
  .shell.public-shell, #authScreen .public-shell { padding: 0 24px; }
  :is(.public-content, #authScreen) .public-header { gap: 18px; }
}
@media (max-width: 600px) {
  .shell.public-shell, #authScreen .public-shell { padding: 0 20px; }
  :is(.public-content, #authScreen) .public-header { grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "brand count" "nav nav"; gap: 10px 12px; min-height: 0; padding: 14px 0 12px; }
  :is(.public-content, #authScreen) .public-header__brand { gap: 9px; }
  .public-header__brand svg { width: 28px; height: 36px; }
}
