/* White ceramic world + translucent pearl glass. Brand red and action geometry stay fixed. */
/* Default is dark-only, also before JS and without JS. The former theme is
   retained behind the explicit policy; hidden controls never flash or take focus. */
html:not([data-theme-mode="switchable"]) [data-theme-toggle] { display: none !important; }
.intro-theme {
  position: absolute; z-index: 4; top: max(24px, env(safe-area-inset-top)); right: max(32px, env(safe-area-inset-right));
  display: inline-flex; align-items: center; justify-content: center; min-height: 44px; min-width: 72px; padding: 8px 15px;
  border: 1px solid var(--button-contour); border-radius: var(--button-radius); background: var(--button-surface);
  color: var(--text); font: 600 12px/1.5 var(--ci-font-family); cursor: pointer;
}
.intro-theme:hover { border-color: var(--ci-interaction-red); }
.intro--entering .intro-theme, .intro--preparing .intro-theme { display: none; }
.detail-header .theme-toggle { min-height: 44px; font-size: 12px; padding: 8px 14px; }
html[data-theme="light"] {
  color-scheme: light; background: #eef0f2; color: #17191d;
  --ci-room-text: #17191d; --ci-room-secondary: #454a53;
  --text: #17191d; --text-2: #343942; --linie: rgb(24 29 36 / 22%);
  --ci-base-colour: rgb(32 38 46 / 60%);
  --t-text: none; --t-dim: 1.03; --t-sat: .8;
  --m-glas: linear-gradient(150deg, rgb(255 255 255 / 89%), rgb(240 242 245 / 88%) 55%, rgb(225 229 234 / 88%));
  --g-reflex: radial-gradient(120% 70% at 18% 0%, rgb(255 255 255 / 80%), transparent 70%);
  --m-glas-schatten: 0 30px 60px -38px rgb(35 43 55 / 32%), 0 8px 24px -18px rgb(35 43 55 / 20%);
  --g-kante: inset 0 14px 22px -14px rgb(255 255 255 / 95%);
  --button-surface: rgb(255 255 255 / 75%); --button-contour: rgb(35 42 51 / 55%);
}
html[data-theme="light"] :is(.buehne,.poster) { background-color: #eef0f2; }
html[data-theme="light"] .poster { background-image: url('../shared/media/theme-light-world.webp'); }
html[data-theme="light"] .stationen .bahn { background: rgb(24 29 36 / 32%); }
html[data-theme="light"] .stationen a.aktion { color: #343942; }
html[data-theme="light"] .stationen a.aktion[aria-current="step"] { color: #101216; }
html[data-theme="light"] .stationen a.aktion::before { background-color: rgb(24 29 36 / 55%); }
html[data-theme="light"] .stationen a.aktion[aria-current="step"]::before { background-color: var(--ci-interaction-red); }
html[data-theme="light"] :is(.settings-trigger,.media-toggle) { color: var(--text); }
html[data-theme="light"] .settings-panel :is(h2,.setting-toggle,.settings-name,.settings-state) { color: var(--text); }
html[data-theme="light"] .settings-panel .setting-toggle[aria-checked="false"] .settings-name { color: #505762; }
html[data-theme="light"] .settings-switch { background: #d0d4da; border-color: #727b87; }
html[data-theme="light"] .setting-toggle[aria-checked="true"] .settings-switch { background: var(--ci-interaction-red); border-color: var(--ci-interaction-red); }
html[data-theme="light"] .schild { color: var(--text); background: var(--m-glas); text-shadow: none; }
html[data-theme="light"] .schild::after { background: rgb(24 29 36 / 55%); }
html[data-theme="light"][data-ansicht="pur"][data-modus="buehne"] .clean-caption {
  color: var(--text); text-shadow: 0 1px 3px #fff, 0 0 14px #fff, 0 0 26px #fff;
}
html[data-theme="light"] :is(.clean-caption .clean-eyebrow,.clean-legal a) { color: var(--text); }
html[data-theme="light"] :where(.feld,.detail-page,.detail-panel,.hinweis,.clean-caption,.clean-service-fallback) :is(.aktion,.service-link) { color: var(--text); }
html[data-theme="light"] :where(.feld,.detail-page,.detail-panel,.hinweis,.clean-caption,.clean-service-fallback) :is(.aktion,.service-link):active { background-color: rgb(218 223 230 / 90%); }
html[data-theme="light"] :is(.detail-panel,.detail-panel-title,.detail-panel-document,.eva-consent) { color: var(--text); }
html[data-theme="light"] :is(.detail-panel-toolbar,.detail-section,.detail-contact,.detail-footer,.work-item,.detail-faq details,.service-visual figcaption,.related-projects article + article,.detail-header,.work-item .work-image,.case-image img) { border-color: rgb(24 29 36 / 24%); }
html[data-theme="light"] :is(.detail-page,.detail-panel-document) :is(.detail-kicker,.detail-context,.detail-note,.detail-faq details p,.work-status,figcaption,.detail-footer,.breadcrumbs,.example-flow dd,.detail-toc > span,.detail-steps li::before,.detail-list li::marker,.breadcrumbs li + li::before) { color: #414852; }
html[data-theme="light"] body.detail-page { background: #f3f4f6; }
html[data-theme="light"] :is(.detail-page,.detail-panel-document) .detail-steps li::before,
html[data-theme="light"] :is(.detail-page,.detail-panel-document) .breadcrumbs li + li::before,
html[data-theme="light"] :is(.detail-page,.detail-panel-document) .detail-list li::marker { color: #414852; }
html[data-theme="light"] :is(.detail-panel-scroll,.eva-widget-transcript) { scrollbar-color: #606975 #eef0f2; }
html[data-theme="light"] .eva-widget { color: var(--text); }
html[data-theme="light"] .eva-widget button { color: var(--text); }
html[data-theme="light"] .eva-widget-hinweis-text { color: var(--text); }   /* eigene Farbe der Hinweis-Pille (V19.4), auf hellem Glas dunkel */
html[data-theme="light"] .eva-widget-words::before { background: radial-gradient(ellipse, rgb(255 255 255 / 90%), rgb(255 255 255 / 65%) 44%, transparent 74%); }
html[data-theme="light"] .eva-widget-words { text-shadow: 0 1px 3px rgb(255 255 255 / 95%), 0 0 9px rgb(255 255 255 / 80%); }
html[data-theme="light"] .eva-widget-sphere::before {
  /* Neutral translucent support; the 3D shell supplies the shaped reflections.
     The inherited clip follows its projected circular silhouette exactly. */
  background-image: linear-gradient(rgb(249 250 251 / 74%), rgb(245 247 249 / 74%));
  backdrop-filter: blur(5px) brightness(1.03); -webkit-backdrop-filter: blur(5px) brightness(1.03);
}
html[data-theme="light"] .eva-widget :is(.eva-widget-toggle,.eva-widget-info-toggle,.eva-widget-play) { color: var(--text); }
html[data-theme="light"] :is(.eva-widget-toolbar,.eva-widget-attachment,.eva-widget .eva-privacy-controls) { border-color: rgb(24 29 36 / 22%); }
html[data-theme="light"] :is(.eva-widget-notice > a,.eva-consent a,.eva-consent .aktion,.eva-widget .eva-privacy-erase,.eva-widget-composer textarea) { color: var(--text); caret-color: var(--text); }
html[data-theme="light"] .eva-widget-composer textarea::placeholder { color: #505762; }
html[data-theme="light"] .eva-consent::backdrop { background: rgb(80 88 100 / 28%); }
html[data-theme="light"] .intro { --intro-graphite: #eef0f2; --intro-white: #17191d; color: #17191d; }
html[data-theme="light"] .intro::before { background: #eef0f2 url('../shared/media/theme-light-aerial.webp') center / cover no-repeat; filter: none; transform: none; }
html[data-theme="light"] .intro--loading::before { background: #eef0f2; }
html[data-theme="light"] .intro-wall::before {
  /* A protected pearl core keeps the original mark and copy clear; moving
     graphite/red signals carry contrast in the surrounding white circuitry. */
  background: radial-gradient(ellipse at 50% 43%, rgb(248 249 250 / 94%) 0%, rgb(248 249 250 / 88%) 38%, rgb(248 249 250 / 16%) 62%, transparent 82%),
    linear-gradient(0deg, rgb(246 248 250 / 78%), transparent 14%, transparent 88%, rgb(246 248 250 / 14%));
}
html[data-theme="light"] :is(.intro-destination,.intro-hint,.intro-legal,.intro-skip) { color: #272d36; }
html[data-theme="light"] .intro-skip { text-decoration-color: #656d79; }
html[data-theme="light"] .intro-loader { background: rgb(24 29 36 / 18%); }
html[data-theme="light"] .intro-status--waiting { background: #eef0f2; color: #17191d; }
html[data-theme="light"] .intro--entering .intro-mute { background: rgb(242 244 247 / 90%); color: #17191d; }
html[data-theme="light"] :is(a,button,input,textarea,summary,[tabindex]):focus-visible { outline-color: #17191d; }
@media (hover: hover) and (pointer: fine) {
  html[data-theme="light"] :where(.feld,.detail-page,.detail-panel,.hinweis,.clean-caption,.clean-service-fallback) :is(.aktion,.service-link):hover { background-color: #fff; }
}
@media (max-width: 700px) {
  .intro-theme { right: max(22px, env(safe-area-inset-right)); top: max(22px, env(safe-area-inset-top)); }
  html[data-theme="light"] .intro:not(.intro--loading)::before { background-image: url('../shared/media/theme-light-aerial-phone.webp'); }
}
@media (forced-colors: active) {
  html[data-theme="light"] :is(.glas,.settings-panel,.intro-theme,.eva-widget-composer) { background: Canvas; color: CanvasText; border-color: CanvasText; }
}

/* Original Tabler sun/moon, same silhouette glow as every icon action. */
.intro-theme.icon-action {
  width: 44px; height: 44px; min-width: 44px; padding: 10px;
  border: 0; border-radius: 50%; background: transparent; box-shadow: none;
}
.intro-theme.icon-action .control-icon { width: 24px; height: 24px; }
