/* Signed JFV header shared by WordPress and the Vereinsapp. */
.vereinapp-stadion-mast {
  --platform-nav-text: #fff;
  background: #c4102b;
  color: #fff;
}
.vereinapp-stadion-head {
  width: min(100%, 1190px);
  margin-inline: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 68px;
}
.vereinapp-stadion-brand {
  position: relative;
  isolation: isolate;
  display: flex;
  align-items: center;
  align-self: stretch;
  flex: none;
  min-height: 68px;
  padding: 7px 32px 7px 12px;
  gap: 8px;
  color: #fff !important;
  font-weight: 850;
  line-height: 1.15;
  font-size: .92rem;
  text-decoration: none;
}
.vereinapp-stadion-brand::before {
  content: '';
  position: absolute;
  inset: 0;
  background: #0a0a0c;
  clip-path: polygon(0 0, 100% 0, 88% 100%, 0 100%);
  z-index: -1;
}
.vereinapp-stadion-brand img { width: 39px; height: 44px; object-fit: contain; }
.vereinapp-stadion-subtitle { display: block; margin-top: 4px; color: #f0f0f0; font-size: .65rem; font-weight: 650; }
.vereinapp-stadion-links { display: flex; align-items: center; gap: clamp(8px, 2vw, 26px); }
.vereinapp-stadion-links a { color: #fff !important; font-size: .88rem; font-weight: 760; text-decoration: none; }
.vereinapp-stadion-links a:hover { text-decoration: underline; }
.vereinapp-platform-header .vereinapp-stadion-actions.vereinapp-platform-nav {
  min-height: 0;
  width: auto;
  max-width: none;
  margin: 0;
  background: transparent;
  gap: 5px;
  padding: 4px 10px 4px 0;
}
.vereinapp-stadion-actions.vereinapp-platform-nav :is(a, button, summary) { font-size: .88rem !important; }
.vereinapp-stadion-actions .vereinapp-profile-slot { flex-basis: 190px; }
.vereinapp-stadion-actions .vereinapp-session-menu { order: 1; position: relative; z-index: 21; }
.vereinapp-stadion-actions .vereinapp-session-menu details > div { background: #17171c; border: 1px solid #47474e; }
.vereinapp-stadion-actions .vereinapp-stadion-menu { order: 2; position: relative; }
.vereinapp-stadion-menu > summary { list-style: none; gap: 6px; }
.vereinapp-stadion-menu > summary::-webkit-details-marker { display: none; }
.vereinapp-stadion-menu nav {
  position: absolute;
  z-index: 1200;
  right: 0;
  top: 100%;
  width: min(270px, calc(100vw - 20px));
  max-height: min(70vh, 75dvh);
  overflow: auto;
  background: #17171c;
  border: 1px solid #45454a;
  box-shadow: 0 10px 26px #0009;
}
.vereinapp-stadion-menu nav ul { list-style: none; padding: 0; margin: 0; }
.vereinapp-stadion-menu nav ul ul { padding-left: 12px; }
.vereinapp-stadion-menu nav a { display: flex; width: 100%; }
.vereinapp-stadion-menu nav a:hover { background: #a50e24 !important; }

@media (max-width: 780px) {
  .vereinapp-stadion-links { display: none; }
}

@media (max-width: 620px) {
  .vereinapp-stadion-head { gap: 4px; }
  .vereinapp-stadion-head:has(.vereinapp-top-sponsor, .has-profile-switcher) { flex-wrap: wrap; }
  .vereinapp-platform-header .vereinapp-stadion-actions.has-profile-switcher,
  .vereinapp-platform-header .vereinapp-stadion-actions:has(.vereinapp-top-sponsor) {
    width: 100%;
    padding: 5px 10px;
  }
  .vereinapp-stadion-actions:has(.vereinapp-top-sponsor) { flex-wrap: wrap; justify-content: flex-end; }
  .vereinapp-stadion-actions .vereinapp-top-sponsor { order: 3; flex-basis: 100%; }
  .vereinapp-stadion-actions.has-profile-switcher > .vereinapp-stadion-menu { grid-column: 1; grid-row: 1; order: 0; }
  .vereinapp-stadion-actions.has-profile-switcher > .vereinapp-profile-slot { grid-column: 2; grid-row: 1; }
  .vereinapp-stadion-actions.has-profile-switcher > .vereinapp-session-menu { grid-column: 3; grid-row: 1; }
  .vereinapp-stadion-actions.has-profile-switcher > .vereinapp-stadion-menu > summary { width: 44px; font-size: 0 !important; }
  .vereinapp-stadion-actions.has-profile-switcher > .vereinapp-stadion-menu > summary > span { font-size: 1rem; }
  .vereinapp-stadion-actions.has-profile-switcher .vereinapp-stadion-menu nav { left: 0; right: auto; }
  .vereinapp-stadion-brand { padding-right: 19px; gap: 5px; }
  .vereinapp-stadion-brand img { width: 32px; }
  .vereinapp-stadion-actions.vereinapp-platform-nav :is(a, summary) { padding-inline: 6px !important; }
}

@media (max-width: 360px) {
  .vereinapp-stadion-brand { padding-left: 7px; padding-right: 15px; font-size: .8rem; }
  .vereinapp-stadion-subtitle { font-size: .58rem; }
  .vereinapp-stadion-brand img { width: 27px; }
  .vereinapp-platform-header .vereinapp-stadion-actions.vereinapp-platform-nav { gap: 0; padding-right: 5px; }
}

.member-app-page:has([data-sponsor-own-profile]) {
  --sponsor-panel: #18141c;
  color: #fff;
  background: #08080a;
}
.member-app-page:has([data-sponsor-own-profile]) :is(.card, .member-action-grid > a) {
  color: #fff;
  background: var(--sponsor-panel);
  border-color: #493843;
}
.member-app-page:has([data-sponsor-own-profile]) :is(.member-eyebrow, .hint, small, label, .subtitle) { color: #f6c0cb; }
