/* RETRO BOXING e. V. — gemeinsames Plus/Minus, v1429.
 * Eine Geometrie und ein Zustandswechsel für native Aufklapper und echte
 * Aufklappbuttons. Keine Rotation, keine SVG-/Textfont-Varianten.
 * Farben kommen aus dem bestehenden Hell-/Dunkel-System.
 */
:root {
  --rb-ui-disclosure-size: 34px;
  --rb-ui-disclosure-radius: 10px;
  --rb-ui-disclosure-line: 16px;
  --rb-ui-disclosure-stroke: 2px;
  --rb-ui-disclosure-inset: 14px;
}
html body details > summary {
  position: relative !important;
  box-sizing: border-box !important;
  list-style: none !important;
  min-height: 48px !important;
  padding-inline-end: calc(var(--rb-ui-disclosure-size) + var(--rb-ui-disclosure-inset) + 12px) !important;
  cursor: pointer;
  touch-action: manipulation;
}
html body details > summary::-webkit-details-marker { display: none !important; }
html body details > summary::marker { content: '' !important; }

/* The single drawing rule: horizontal line + vertical line = plus. */
html body details:not(.rb-info-tip) > summary::after,
html body :is(.rb-home-main-arrow, .rb-nav-group-arrow, .rb-coupon-package-toggle,
  .rb-action-summary-toggle, .trial-work-toggle-icon, .rb-admin-tasks-plus,
  .finance-bank-open, .finance-entry-toggle, .rb-bank-done-toggle,
  .dashboard-club-details__arrow, .rb-coupons-create-toggle) {
  content: '' !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  box-sizing: border-box !important;
  width: var(--rb-ui-disclosure-size) !important;
  height: var(--rb-ui-disclosure-size) !important;
  min-width: var(--rb-ui-disclosure-size) !important;
  min-height: var(--rb-ui-disclosure-size) !important;
  max-width: var(--rb-ui-disclosure-size) !important;
  max-height: var(--rb-ui-disclosure-size) !important;
  flex: 0 0 var(--rb-ui-disclosure-size) !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid var(--rb-ui-border) !important;
  border-radius: var(--rb-ui-disclosure-radius) !important;
  background-color: var(--rb-ui-surface-2) !important;
  background-image: linear-gradient(currentColor, currentColor), linear-gradient(currentColor, currentColor) !important;
  background-size: var(--rb-ui-disclosure-line) var(--rb-ui-disclosure-stroke), var(--rb-ui-disclosure-stroke) var(--rb-ui-disclosure-line) !important;
  background-position: center, center !important;
  background-repeat: no-repeat !important;
  color: var(--rb-ui-text-secondary) !important;
  font-size: 0 !important;
  line-height: 0 !important;
  text-indent: 0 !important;
  box-shadow: none !important;
  clip-path: none !important;
  -webkit-mask: none !important;
  mask: none !important;
  rotate: none !important;
  animation: none !important;
  transition: background-color .15s ease, border-color .15s ease, color .15s ease !important;
}
html body details:not(.rb-info-tip) > summary::after,
html body :is(.rb-home-main-arrow, .rb-coupon-package-toggle, .rb-action-summary-toggle,
  .dashboard-club-details__arrow, .rb-coupons-create-toggle) {
  position: absolute !important;
  top: 50% !important;
  bottom: auto !important;
  left: auto !important;
  right: var(--rb-ui-disclosure-inset) !important;
  inset-inline-start: auto !important;
  inset-inline-end: var(--rb-ui-disclosure-inset) !important;
  transform: translateY(-50%) !important;
  -webkit-transform: translateY(-50%) !important;
  pointer-events: none !important;
}
html body details[open] > summary::after,
html body details[open] > summary :is(.rb-home-main-arrow, .rb-coupon-package-toggle,
  .rb-action-summary-toggle, .rb-admin-tasks-plus, .finance-bank-open,
  .finance-entry-toggle, .rb-bank-done-toggle, .dashboard-club-details__arrow,
  .rb-coupons-create-toggle),
html body .trial-work-toggle[aria-expanded="true"] .trial-work-toggle-icon,
html body .admin-menu-section:not(.is-nav-collapsed) .rb-nav-group-arrow {
  background-image: linear-gradient(currentColor, currentColor) !important;
  background-size: var(--rb-ui-disclosure-line) var(--rb-ui-disclosure-stroke) !important;
  background-color: var(--rb-ui-hover) !important;
  border-color: var(--rb-ui-border-strong) !important;
  color: var(--rb-ui-text-strong) !important;
}
/* Existing explicit button/marker keeps its semantics. Never draw a second symbol. */
html body details > summary:has(:is(.rb-home-main-arrow, .rb-coupon-package-toggle,
  .rb-action-summary-toggle, .rb-admin-tasks-plus, .finance-bank-open,
  .finance-entry-toggle, .rb-bank-done-toggle, .dashboard-club-details__arrow,
  .rb-coupons-create-toggle))::after,
html body details.rb-info-tip > summary::after,
html body :is(.rb-home-main-arrow, .rb-nav-group-arrow, .rb-coupon-package-toggle,
  .rb-action-summary-toggle, .trial-work-toggle-icon, .rb-admin-tasks-plus,
  .finance-bank-open, .finance-entry-toggle, .rb-bank-done-toggle,
  .dashboard-club-details__arrow, .rb-coupons-create-toggle)::before,
html body :is(.rb-home-main-arrow, .rb-nav-group-arrow, .rb-coupon-package-toggle,
  .rb-action-summary-toggle, .trial-work-toggle-icon, .rb-admin-tasks-plus,
  .finance-bank-open, .finance-entry-toggle, .rb-bank-done-toggle,
  .dashboard-club-details__arrow, .rb-coupons-create-toggle)::after {
  content: none !important;
  display: none !important;
}
html body :is(.rb-home-main-arrow, .rb-nav-group-arrow, .rb-coupon-package-toggle,
  .rb-action-summary-toggle, .trial-work-toggle-icon, .rb-admin-tasks-plus,
  .finance-bank-open, .finance-entry-toggle, .rb-bank-done-toggle) > svg {
  display: none !important;
}
html body details > summary :is(.rb-chevron, .rb937-chevron) { display: none !important; }
html body :is(.rb-nav-group-arrow, .trial-work-toggle-icon, .rb-admin-tasks-plus) {
  position: relative !important;
  top: auto !important; right: auto !important; bottom: auto !important; left: auto !important;
  transform: none !important;
  -webkit-transform: none !important;
  pointer-events: none !important;
}
html body :is(.finance-bank-open, .finance-entry-toggle, .rb-bank-done-toggle) {
  position: absolute !important;
  top: 50% !important; right: var(--rb-ui-disclosure-inset) !important;
  bottom: auto !important; left: auto !important;
  transform: translateY(-50%) !important;
  -webkit-transform: translateY(-50%) !important;
  pointer-events: auto !important;
  cursor: pointer !important;
  touch-action: manipulation;
}
html body.admin-page .admin-main > .admin-top .rb-admin-notifications > summary {
  display: flex !important;
  align-items: center !important;
  gap: 7px !important;
  width: 44px !important; min-width: 44px !important; max-width: 44px !important;
  height: 44px !important; min-height: 44px !important;
  padding: 4px !important;
}
html body details.rb-info-tip > summary {
  width: 44px !important; height: 44px !important;
  min-width: 44px !important; min-height: 44px !important;
  padding: 0 !important;
}
/* Native closed state cannot be visually overridden by old layout rules. */
html body details:not([open]) > :not(summary):not(script):not(style),
html body [hidden]:not([hidden="until-found"]) { display: none !important; }
html body details > summary:focus-visible,
html body :is(.trial-work-toggle, .admin-menu-section-title, .finance-bank-open,
  .finance-entry-toggle, .rb-bank-done-toggle):focus-visible {
  outline: 2px solid var(--rb-ui-accent, #bc2625) !important;
  outline-offset: 3px !important;
}
/* All six main sections use their existing shape, without pulsing/turning decorations. */
html body main.page-slug-home details.rb-home-main-fold > summary .rb-fold-overlay { display: none !important; }
html body main.page-slug-home details.rb-home-main-fold > summary .rb-fold-title { animation: none !important; transform: none !important; }
/* Trial groups: same marker; number, title and hint each keep their own space. */
html body.admin-page-probetraining .admin-main .trial-work-group > .trial-work-toggle {
  grid-template-columns: minmax(0, 1fr) auto var(--rb-ui-disclosure-size) !important;
  gap: 10px !important;
  padding: 12px 14px !important;
  min-height: 58px !important;
  opacity: 1 !important;
}
html body.admin-page-probetraining .admin-main .trial-work-group > .trial-work-toggle > span { font-weight: 800 !important; }
html body.admin-page-probetraining .admin-main .trial-work-group > .trial-work-toggle small { font-weight: 500 !important; white-space: normal !important; }
html body.admin-page-probetraining .admin-main .trial-work-group > .trial-work-toggle > strong {
  min-width: 30px !important; height: 30px !important;
  padding: 0 7px !important;
  font-size: .8125rem !important;
}
html body.admin-page-probetraining .admin-main .trial-work-group > .trial-work-toggle > .trial-work-toggle-icon {
  grid-column: 3 !important; grid-row: 1 !important;
}
/* No invisible fullscreen hit target after a transition. */
html body .rb-interaction-shield,
html body .rb-interaction-shield.is-active { pointer-events: none !important; }
.rb-info-popover-close {
  float: right;
  display: grid; place-items: center;
  min-width: 44px; min-height: 44px;
  margin: -5px -5px 4px 8px;
  border: 1px solid var(--rb-ui-border);
  border-radius: 10px;
  background: var(--rb-ui-surface-2);
  color: var(--rb-ui-text-strong);
  font: inherit; font-size: 22px;
  cursor: pointer;
}
@media (min-width: 981px) {
  html body .rb-nav-group-arrow { display: none !important; }
}
@media (max-width: 720px) {
  :root { --rb-ui-disclosure-inset: 11px; }
}
@media (prefers-reduced-motion: reduce) {
  html body details > summary::after,
  html body :is(.rb-home-main-arrow, .rb-nav-group-arrow, .trial-work-toggle-icon,
    .rb-admin-tasks-plus, .finance-bank-open) { transition: none !important; }
}
/* v1429: The six homepage sections share one shell and one header.
 * Individual light-theme/ID overrides are removed at their source. This block
 * also styles the two nested offer disclosures without changing their content.
 */
html body main.site-main.page-slug-home {
  --rb-home-fold-gap: 16px;
  --rb-home-fold-heading-gutter: calc(var(--rb-ui-disclosure-size) + var(--rb-ui-disclosure-inset) + 12px);
}
html body main.page-slug-home details.rb-home-fold-unified {
  display: block !important;
  position: relative !important;
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  padding: 0 !important;
  border: 1px solid var(--rb-ui-border) !important;
  border-radius: 18px !important;
  background: var(--rb-ui-surface) !important;
  color: var(--rb-ui-text-strong) !important;
  box-shadow: none !important;
  overflow: hidden !important;
}
html body main.page-slug-home details.rb-home-fold-unified > summary {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0 !important;
  margin: 0 !important;
  width: 100% !important;
  height: auto !important;
  max-height: none !important;
  min-height: 58px !important;
  padding: 16px var(--rb-home-fold-heading-gutter, 60px) !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--rb-ui-text-strong) !important;
  -webkit-text-fill-color: currentColor !important;
  text-align: center !important;
  font-size: 1.125rem !important;
  font-weight: 800 !important;
  line-height: 1.4 !important;
  letter-spacing: normal !important;
  text-transform: none !important;
  text-shadow: none !important;
  box-shadow: none !important;
  transform: none !important;
  animation: none !important;
  user-select: none;
  -webkit-user-select: none;
  overflow-wrap: anywhere;
}
/* Keep the state indicator immediate, including lazily rendered off-screen sections. */
html body main.page-slug-home details.rb-home-fold-unified > summary > .rb-home-main-arrow {
  transition: none !important;
}
html body main.page-slug-home details.rb-home-fold-unified > summary:focus-visible {
  outline-offset: -3px !important;
}
html body main.page-slug-home details.rb-home-main-fold > .rb-home-main-divider {
  display: none !important;
  visibility: hidden !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  height: 3px !important;
  min-height: 3px !important;
  max-height: 3px !important;
  box-sizing: border-box !important;
  margin: 0 20px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: var(--rb-ui-accent, #bc2625) !important;
  opacity: 1 !important;
  box-shadow: none !important;
}
html body main.page-slug-home details.rb-home-main-fold[open] > .rb-home-main-divider {
  display: block !important;
  visibility: visible !important;
}
html body main.page-slug-home details.rb-home-fold-unified > .rb-home-fold-content {
  padding: 18px 18px 20px !important;
  border-top: 0 !important;
  box-shadow: none !important;
}
/* Two folds share the first container; the remaining folds have their own.
 * Space the actual wrappers, not the isolated <details> test components.
 * Preserve the review section and all content between the two groups.
 */
html body main.site-main.page-slug-home .rb-home-fold-stack {
  padding-bottom: 0 !important;
}
html body main.site-main.page-slug-home :is(.rb-home-about-wrap, .rb-home-why-wrap) {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}
html body main.site-main.page-slug-home .rb-home-fold-stack > .container {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: var(--rb-home-fold-gap) !important;
}
html body main.site-main.page-slug-home > .rb-home-fold-stack + .rb-home-entry,
html body main.site-main.page-slug-home > .rb-home-main-section + .rb-home-main-section {
  margin-top: var(--rb-home-fold-gap) !important;
}
@media (max-width: 720px) {
  html body main.page-slug-home details.rb-home-fold-unified > summary {
    font-size: 1.0625rem !important;
  }
  html body main.page-slug-home details.rb-home-fold-unified > .rb-home-fold-content {
    padding: 14px 12px 16px !important;
  }
  html body main.page-slug-home details.rb-home-main-fold > .rb-home-main-divider {
    margin-inline: 15px !important;
  }
}

/* Status badges use one compact size in both themes; they are not buttons. */
html body.admin-page-dashboard .dashboard-club-details__side .badge {
  min-width: 0 !important; max-width: 100% !important; width: auto !important;
  min-height: 32px !important; height: auto !important;
  padding: 6px 10px !important;
  font-size: .8125rem !important; font-weight: 750 !important; line-height: 1.3 !important;
}

html body .rb-bank-done-toggle:not(button) { pointer-events: none !important; }

/* v1434 – Header-Aufgabenknopf ist ein kompakter 44px-Button, keine Text-Aufklappkarte.
   Die allgemeine summary-Paddingreserve schob das 34px-Plus bisher mobil aus dem Kopf. */
html body.admin-page .admin-main .rb-admin-notifications > summary,
html body.admin-page .admin-main > .admin-top .rb-admin-notifications > summary {
  box-sizing: border-box !important;
  width: 44px !important; min-width: 44px !important; max-width: 44px !important;
  height: 44px !important; min-height: 44px !important;
  padding: 4px !important;
  padding-inline-start: 4px !important; padding-inline-end: 4px !important;
  display: grid !important; place-items: center !important;
}
html body.admin-page .admin-main .rb-admin-notifications > summary > .rb-admin-tasks-plus {
  position: static !important; inset: auto !important;
  margin: 0 !important; transform: none !important;
}
