/* Additional rules apply only to the generated, independent WIP shell. */
body[data-member-live] .wip-switcher {
  position: fixed; z-index: 2600; left: 44px; top: 3px; color: #6c6153;
  font: 10px/1.4 Arial, sans-serif; letter-spacing: .02em;
}
body[data-member-live] .wip-switcher > summary { cursor: pointer; width: max-content; }
body[data-member-live] .wip-home-headline-preview,
body[data-member-live] .wip-home-headline-badge { display: none; }
body[data-member-live]:has(main.imprint-landing) .wip-home-headline-preview {
  display: grid; gap: 5px; margin-top: 10px;
  width: min(340px, calc(100vw - 68px));
  font: 600 12px/1.4 Arial, sans-serif;
}
body[data-member-live] .wip-home-headline-preview select {
  width: 100%; min-width: 0; min-height: 44px; padding: 6px 8px;
  border: 1px solid #a79476; border-radius: 5px; background: #fffaf0;
  color: inherit; font: 16px/1.4 Arial, sans-serif;
}
body[data-member-live]:has(main.imprint-landing) .wip-switcher[data-headline-preview] .wip-home-headline-badge {
  display: inline;
}
body[data-member-live] .wip-switcher[open] {
  padding: 12px 16px; top: 8px; border: 1px solid #a79476; border-radius: 5px;
  background: #faf6ed; box-shadow: 0 6px 30px #251d2026; color: #302c25;
}
body[data-member-live] .wip-switcher p { margin: 8px 0; font: 11px/1.4 Arial, sans-serif; }
body[data-member-live] .wip-switcher nav { display: grid; gap: 4px; }
body[data-member-live] .wip-switcher button {
  display: flex; justify-content: space-between; gap: 22px; align-items: center;
  width: 100%; padding: 9px 2px; text-align: left; border: 0; border-bottom: 1px solid #c5b89b55;
  color: inherit; background: transparent; cursor: pointer; font: 16px/1.3 var(--pluritual-wip-serif, Georgia, serif);
}
body[data-member-live] .wip-switcher button small { font: 10px/1.3 Arial, sans-serif; color: #84745d; }
body[data-member-live] .wip-switcher button:hover { color: #9c573e; }
body[data-member-live] .wip-switcher .wip-reset-participation {
  min-height:44px; justify-content:center; padding:10px 14px; margin:10px 0 4px;
  font:600 13px/1.4 Arial,sans-serif; color:#fffaf0; background:#302c25;
  border:1px solid #302c25; border-radius:5px;
}
body[data-member-live] .wip-switcher .wip-reset-participation:hover { background:#51493d; color:#fffaf0; }
body[data-member-live] .wip-switcher button:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
body[data-member-live] .wip-trail-material-controls[hidden] { display: none; }
body[data-member-live] .wip-trail-material-controls { margin-top: 12px; padding-top: 4px; border-top: 1px solid #c5b89b70; }
body[data-member-live] .wip-trail-material-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
body[data-member-live] .wip-switcher [data-trail-material] { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: 4px; min-height: 44px; width: 100%; padding: 7px; border: 1px solid #173d2f35; border-radius: 3px; color: #173d2f; }
body[data-member-live] .wip-switcher [data-trail-material][aria-pressed="true"] { border-color: #173d2f; background: #173d2f0b; box-shadow: inset 0 0 0 1px #173d2f; }
body[data-member-live] .wip-switcher [data-trail-material="original"] { margin-top: 8px; align-items: center; font: 12px/1.4 Arial, sans-serif; }
body[data-member-live] .wip-paper-swatch { width: 100%; height: 40px; background-size: 220px; border-radius: 2px; }
body[data-member-live] .wip-trail-material-grid strong { font: 16px/1.2 var(--pluritual-serif, Georgia, serif); }
body[data-member-live] .wip-trail-material-status { min-height: 2.8em; }
body[data-member-live] .wip-trail-layout-controls[hidden] { display: none; }
body[data-member-live] .wip-trail-layout-controls { margin-top: 10px; padding-top: 4px; border-top: 1px solid #c5b89b55; }
body[data-member-live] .wip-trail-layout-controls > div { display: flex; gap: 8px; }
body[data-member-live] .wip-switcher .wip-trail-layout-controls button { min-height: 44px; justify-content: center; font: 14px/1.3 var(--pluritual-wip-serif, Georgia, serif); border: 1px solid #173d2f40; border-radius: 3px; padding: 9px 14px; }
body[data-member-live] .wip-trail-layout-controls button[aria-pressed="true"] { background: #e6ddc6; color: #173d2f; border-color: #173d2f99; }
body[data-member-live] .wip-home-field { margin-top: 14px; padding-top: 10px; border-top: 1px solid #c5b89b; }
body[data-member-live] .wip-home-field h3 { margin: 0 0 4px; font: 600 11px/1.4 Arial, sans-serif; }
body[data-member-live] .wip-home-field button { font: 12px/1.3 Arial, sans-serif; min-height: 40px; padding-inline: 6px; border-radius: 4px; }
body[data-member-live] .wip-home-field button[aria-pressed="true"] { background: #eae1d1; font-weight: 600; }
body[data-member-live] .wip-home-field p { max-width: 236px; color: #84745d; }
@media (max-width: 600px) {
  body[data-member-live] .wip-switcher { left: 16px; }
  body[data-member-live] .wip-switcher[open] { max-width: calc(100vw - 32px); box-sizing: border-box; max-height: calc(100dvh - 16px); overflow-y: auto; }
}
body[data-member-live] main.ritual-room.journey {
  --module-accent: #173d2f; --journey-gold: #173d2f;
  --navigation-ink: #173d2f; --annual-label-surface: #f5f1e6;
  background: #f5f1e6; color: #173d2f; isolation: auto;
}
body[data-member-live] main.ritual-room.journey > :is(.ritual-header, .module-side-navigation) { z-index: 740; }
body[data-member-live] main.ritual-room.journey > header.pluritual-header {
  --brand-color: #173d2f; color: #173d2f;
}
/* Let the landscape continue under the shell. Keep the brand ink sharp,
   without paper backplates, outlines around glyphs, or a viewport vignette. */
body[data-member-live] main.ritual-room.journey > header.pluritual-header .imprint-brand {
  filter: none; text-shadow: none;
}
body[data-member-live] main.ritual-room.journey > header.pluritual-header .imprint-next-reveal {
  filter: none; text-shadow: none;
}
body[data-member-live] main.ritual-room.journey > header.pluritual-header :is(.imprint-brand, .imprint-next-reveal, .module-how-trigger, .account-button) { color: #173d2f; }
body[data-member-live] main.ritual-room.journey > header.pluritual-header :is(.account-button, .module-how-trigger, .live-work-access) {
  box-sizing: border-box; appearance: none;
  border: 1px solid #173d2f40; border-radius: 6px; background: #f5f1e666;
  color: #0b2d21; filter: none; text-shadow: none; transform: none;
  box-shadow: inset 0 1px 0 #fffdf24d, 0 1px 3px #173d2f14;
  backdrop-filter: blur(3px);
}
body[data-member-live] main.ritual-room.journey > header.pluritual-header :is(.account-button, .module-how-trigger, .live-work-access):hover {
  border-color: #173d2f66; background: #f5f1e68c; color: #0b2d21;
  box-shadow: none; transform: none;
}
body[data-member-live] main.ritual-room.journey > header.pluritual-header :is(.account-button, .module-how-trigger, .live-work-access):focus-visible {
  outline: 2px solid var(--brand-color); outline-offset: 4px;
}
body[data-member-live] main.ritual-room.journey > header.pluritual-header .live-site-utilities {
  display: grid; place-items: center; padding: 0; gap: 0;
}
body[data-member-live] main.ritual-room.journey > header.pluritual-header .live-work-access[hidden] {
  display: none !important;
}
/* Reuse the Workview23 module help control and its existing question SVG. */
body[data-member-live] main.ritual-room.journey > header.pluritual-header .module-how-trigger {
  font-size: 0; line-height: 1; text-decoration: none;
}
body[data-member-live] main.ritual-room.journey > header.pluritual-header .module-how-trigger > span { display: none; }
body[data-member-live] main.ritual-room.journey > header.pluritual-header .module-how-trigger > svg.help-question-icon {
  display: block; width: 25px; height: 25px; margin: 0;
}
body[data-member-live] main.ritual-room.journey :is(.module-nav-arrow, .module-step) { --step-color: #173d2f; color: #173d2f; }
body[data-member-live] main.ritual-room.journey .module-step::before {
  border-color: #173d2f7a;
}
body[data-member-live]:has(main.ritual-room.journey) .wip-switcher { color: #173d2f; }
body[data-member-live] main.ritual-room.journey > .room-content {
  position: relative; inset: auto; grid-row: 2; width: 100%; height: 100%; min-height: 0; padding: 0; margin: 0;
}
body[data-member-live] .wip-trail-slot { width: 100%; height: 100%; min-height: 0; }
body[data-member-live] .wip-trail-loading { display: grid; height: 100%; margin: 0; place-content: center; font: 16px var(--pluritual-wip-serif, Georgia, serif); }
body[data-member-live] .wip-trail-loading[hidden] { display: none; }
body[data-member-live] .wip-trail-frame { position: fixed; border: 0; z-index: 20; background: #f5f1e6; }
body[data-member-live] .ritual-room:has(.live-work-access[aria-pressed="true"]) > .room-content {
  animation: none;
}
/* Preserve the map's viewport while another room is shown. A zero-sized
   hidden iframe can give an asynchronous terrain camera NaN coordinates. */
body[data-member-live] .wip-trail-frame[hidden] { display: block; visibility: hidden; pointer-events: none; }
body[data-member-live] main.ritual-room.journey .annual-progress { z-index: 740; color: #173d2f; }
body[data-member-live] main.ritual-room.journey .annual-progress > span {
  width: max-content; max-width: 100%; justify-self: start;
  padding: 0; border-radius: 0; background: transparent;
}
body[data-member-live] main.ritual-room.journey .annual-progress > span:last-child {
  justify-self: end;
}
body[data-member-live] main.ritual-room.journey .annual-days:focus-visible { outline: 2px solid #173d2f; outline-offset: 5px; }
body[data-member-live] main.ritual-room.journey .module-step::before { box-shadow: none; }
body[data-member-live] main.ritual-room.journey .module-nav-arrow { filter: none; text-shadow: none; }
body[data-member-live] main.ritual-room.journey .flow-preview-controls { display: none; }
body[data-member-live][data-wip-trail-layout="paper"] main.ritual-room.journey { --annual-label-surface: #eee3ca; background: #f2e8d0; }
body[data-member-live][data-wip-trail-layout="paper"] main.ritual-room.journey > header.pluritual-header :is(.account-button, .module-how-trigger, .live-work-access) {
  background: #f8f6ed55; border-color: #173d2f40; box-shadow: none; backdrop-filter: none; border-radius: 6px;
}
body[data-member-live][data-wip-trail-layout="paper"] main.ritual-room.journey > header.pluritual-header :is(.account-button, .module-how-trigger, .live-work-access):hover { background: #173d2f08; }
body[data-member-live][data-wip-trail-layout="paper"] main.ritual-room.journey .module-side-navigation { background: transparent; box-shadow: none; backdrop-filter: none; border-color: transparent; }
body[data-member-live][data-wip-trail-layout="paper"] main.ritual-room.journey .module-progress { background: transparent; box-shadow: none; backdrop-filter: none; border-color: transparent; }
body[data-member-live][data-wip-trail-layout="paper"] main.ritual-room.journey > header .module-navigation::before { display: none; }
body[data-member-live] main.ritual-room.review .room-content { min-height: 0; overflow: auto; }
@media (max-width: 900px), (max-width: 1024px) and (max-height: 500px) {
  body[data-member-live] main.ritual-room.journey > header.pluritual-header :is(.account-button, .module-how-trigger, .live-work-access) { border-radius: 8px; }
  body[data-member-live] main.ritual-room.journey > header.pluritual-header .module-how-trigger > svg.help-question-icon { width: 22px; height: 22px; }
}
@media (max-width: 640px) {
  body[data-member-live] .wip-switcher { left: 16px; font-size: 9px; }
  body[data-member-live] .wip-switcher[open] { max-width: calc(100vw - 32px); box-sizing: border-box; }
}

/* Keep the countdown in the same place below the touch, using the module numerals. */
body[data-member-live] main.landing.imprint-landing.gravity-landing .imprint-entry > .imprint-next-reveal {
  margin-top: 17px;
  color: #211f1a;
  opacity: 1;
}
body[data-member-live] main.landing.imprint-landing.gravity-landing .imprint-entry > .imprint-next-reveal strong {
  font-size: 28px;
  font-weight: 500;
  font-variant-numeric: tabular-nums;
}
body[data-member-live] main.landing.imprint-landing.gravity-landing .landing-wordmark {
  width: 184px;
}
@media (max-width: 900px), (max-width: 1024px) and (max-height: 500px) {
  body[data-member-live] main.landing.imprint-landing.gravity-landing .imprint-entry > .imprint-next-reveal strong {
    font-size: 26px;
  }
}
@media (max-width: 600px) and (max-height: 700px), (max-height: 500px) {
  body[data-member-live] main.landing.imprint-landing.gravity-landing .landing-wordmark {
    width: 120px;
  }
}
@media (max-width: 600px) and (max-height: 450px) {
  body[data-member-live] main.landing.imprint-landing.gravity-landing {
    --contact-size: 88px;
  }
  body[data-member-live] main.landing.imprint-landing.gravity-landing .imprint-entry > .imprint-next-reveal {
    margin-top: 2px;
    top: calc(50dvh + var(--contact-size) / 2);
  }
  body[data-member-live] .landing-footer .site-legal-links {
    column-gap: 6px;
  }
}
@media (min-width: 601px) and (max-height: 500px) {
  body[data-member-live] main.landing.imprint-landing.gravity-landing .imprint-entry > .imprint-next-reveal {
    margin-top: 9px;
  }
}
/* Preserve the authored lines at narrow widths and on short screens. */
body[data-member-live] .gravity-landing .imprint-entry-guidance {
  container-type: inline-size;
  justify-content: center;
}
body[data-member-live] main.landing.imprint-landing.gravity-landing .imprint-entry-guidance .imprint-context {
  --headline-size: clamp(47px, min(5.3vw, 7.3vh), 74px);
  max-width: none;
  font-size: min(var(--headline-size), calc(100cqi / var(--headline-width, 8)));
}
body[data-member-live] .gravity-landing .imprint-headline-line {
  display: block;
  white-space: nowrap;
}
body[data-member-live] .gravity-landing .imprint-context:has(.imprint-headline-line[data-long-line]) {
  --headline-width: 10.2;
}
@media (max-width: 600px) {
  body[data-member-live] main.landing.imprint-landing.gravity-landing .imprint-entry-guidance .imprint-context {
    --headline-size: clamp(43px, 11.6vw, 57px);
  }
}
@media (max-width: 600px) and (max-height: 700px) {
  body[data-member-live] main.landing.imprint-landing.gravity-landing .imprint-entry-guidance .imprint-context {
    --headline-size: clamp(39px, 10.6vw, 49px);
  }
}
@media (max-height: 500px) {
  body[data-member-live] main.landing.imprint-landing.gravity-landing .imprint-entry-guidance .imprint-context {
    --headline-size: clamp(18px, calc((50dvh - 94px) / 2.8), 45px);
  }
}
