/* Public header theme placement. Copyright 2026 Fantasy.Productions L.L.C.
   Website code by Copeland Systems L.L.C. */
html[data-color-theme] body:not(.workspace-body) {
  --public-theme-background: #f8f4ec;
  --public-theme-ink: #26231f;
  --public-theme-line: #625e57;
  --public-theme-focus: #086fb8;
}
html[data-color-theme="dark"] body:not(.workspace-body) {
  --public-theme-background: #171a1d;
  --public-theme-ink: #f5f0e7;
  --public-theme-line: #c4c9cb;
  --public-theme-focus: #83c4df;
}
html[data-color-theme] body:not(.workspace-body) .public-theme-toggle {
  flex: 0 0 auto;
  min-inline-size: max(44px, 2.75rem);
  min-block-size: max(44px, 2.75rem);
  max-inline-size: 100%;
  padding: .5rem .75rem;
  background: var(--public-theme-background);
  color: var(--public-theme-ink);
  border-color: var(--public-theme-line);
  white-space: normal;
  overflow-wrap: anywhere;
  transition: none;
}
html[data-color-theme] body:not(.workspace-body) .public-theme-toggle:hover {
  background: var(--public-theme-ink);
  color: var(--public-theme-background);
}
html[data-color-theme] body:not(.workspace-body) .public-theme-toggle:focus-visible {
  outline: 3px solid var(--public-theme-focus) !important;
  outline-offset: 3px;
}
body:not(.workspace-body) .public-theme-heading,
body:not(.workspace-body) .public-theme-header,
body:not(.workspace-body) .public-theme-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .5rem 1rem;
  min-inline-size: 0;
}
body:not(.workspace-body) .public-theme-heading { justify-content: space-between; }
body:not(.workspace-body) .public-theme-heading > h1 {
  min-inline-size: 0;
  max-inline-size: 100%;
  overflow-wrap: anywhere;
}
body:not(.workspace-body) .public-theme-header h1,
body:not(.workspace-body) .public-theme-header .btn {
  max-inline-size: 100%;
  overflow-wrap: anywhere;
  white-space: normal;
}
body:not(.workspace-body) .public-theme-header > div:first-child {
  flex: 1 1 16rem;
  min-inline-size: 0;
  max-inline-size: 100%;
}
body:not(.workspace-body) .public-theme-actions {
  gap: .5rem;
  max-inline-size: 100%;
}
body:not(.workspace-body) .public-theme-actions > a,
body:not(.workspace-body) nav.public-theme-header > a {
  display: inline-flex;
  align-items: center;
  min-inline-size: 2.75rem;
  min-block-size: 2.75rem;
  max-inline-size: 100%;
  overflow-wrap: anywhere;
}
html[data-color-theme] body:not(.workspace-body) .marketing-nav[data-public-theme-header] {
  flex-wrap: wrap;
  gap: .5rem 1.5rem;
  padding-inline: clamp(.75rem, 4vw, 1.5rem);
  min-inline-size: 0;
}
html[data-color-theme] body:not(.workspace-body) .marketing-nav[data-public-theme-header] nav {
  display: flex;
  flex-wrap: wrap;
  gap: .25rem 1rem;
  order: 0;
  width: auto;
  inline-size: auto;
  min-inline-size: 0;
  overflow: visible;
}
html[data-color-theme] body:not(.workspace-body) .marketing-nav[data-public-theme-header] nav a {
  display: inline-flex;
  align-items: center;
  min-inline-size: 2.75rem;
  min-block-size: 2.75rem;
  max-inline-size: 100%;
  overflow-wrap: anywhere;
}
body:not(.workspace-body) .marketing-nav[data-public-theme-header] .marketing-brand {
  min-inline-size: 0;
  max-inline-size: 100%;
}
body:not(.workspace-body) .marketing-nav[data-public-theme-header] .marketing-brand img {
  display: block;
  inline-size: 10.075rem;
  max-inline-size: 100%;
  block-size: auto;
}
body:not(.workspace-body) .marketing-nav[data-public-theme-header] .public-theme-actions {
  margin-inline: 0;
  margin-inline-start: auto;
}
body.public-theme-session {
  display: flex;
  flex-direction: column;
  min-block-size: 100dvh;
}
body.public-theme-session > [data-private-beta-banner] { flex: 0 0 auto; }
body.public-theme-session .session-chooser {
  flex: 1 0 auto;
  height: auto;
  block-size: auto;
  min-block-size: 0;
  min-inline-size: 0;
  overflow: visible;
}
body.public-theme-session .session-chooser-card { min-inline-size: 0; }
body.public-theme-session .dialog-actions { flex-wrap: wrap; }
body.public-theme-session .btn {
  max-inline-size: 100%;
  white-space: normal;
  overflow-wrap: anywhere;
}
@media (forced-colors: active) {
  html[data-color-theme] body:not(.workspace-body) .public-theme-toggle {
    background: Canvas;
    color: ButtonText;
    border-color: ButtonText;
  }
  html[data-color-theme] body:not(.workspace-body) .public-theme-toggle:focus-visible {
    outline-color: Highlight !important;
  }
}
