/* =====================================================================
   Heller Modus für Unterseiten (Anleitung, Audio-Guide, Events).
   Wird NACH dem Seiten-CSS geladen und überschreibt nur Farben/Flächen –
   Layout, Abstände und Inhalte bleiben unverändert. Navigation, Hero-Kopf
   und Footer bleiben dunkel (Markenrahmen), der Inhalt darunter wird hell.
   ===================================================================== */
html.theme-light, body.theme-light{ background:#F4F4F6; color:#4A4A50; color-scheme:light; }
body.theme-light a{ color:#CA2B2F; }
body.theme-light a:hover{ color:#111114; }
body.theme-light .hero a{ color:#E06A6E; } body.theme-light .hero a:hover{ color:#fff; }
/* Navigation und Footer bleiben dunkel – Linkfarben dort unverändert lassen */
body.theme-light .topnav-links a{ color:#D8D8DC; }
body.theme-light .topnav-links a:hover, body.theme-light .topnav-links a[aria-current="page"]{ color:#fff; }
body.theme-light .topnav-shop, body.theme-light .topnav-shop:hover, body.theme-light .footer-shop, body.theme-light .mobile-menu-shop{ color:#fff; }
body.theme-light .mobile-menu > a{ color:#fff; }
body.theme-light .footer-col a{ color:#C8C8CC; } body.theme-light .footer-col a:hover{ color:#fff; }
body.theme-light .site-footer a{ color:#C8C8CC; } body.theme-light .site-footer a:hover{ color:#fff; }
body.theme-light .site-footer .footer-shop{ color:#fff; }
body.theme-light .topnav-logo, body.theme-light .partner-grid a{ color:inherit; }

/* Hero bleibt dunkel wie bisher (Markenkopf); hell wird alles darunter. Nur der Übergang zur hellen Fläche: */
body.theme-light .hero{ border-bottom-color:rgba(0,0,0,.2); }

/* Hintergrund-Shards: dezenter */
body.theme-light .bgshard{ opacity:.10; }
body.theme-light .bgshard.s2{ opacity:.07; }

/* Überschriften, Fließtext, Trenner */
body.theme-light .sec{ border-bottom-color:rgba(0,0,0,.08); }
body.theme-light .sec h2, body.theme-light .section-head h2, body.theme-light .cardtext h3{ color:#111114; }
body.theme-light .sec .lead, body.theme-light .section-lead, body.theme-light .cardtext p, body.theme-light .teaser{ color:#4A4A50; }
body.theme-light .sec .lead strong, body.theme-light .cardtext p strong, body.theme-light .acc-block strong, body.theme-light .callout p strong{ color:#111114; }
body.theme-light .disclaimer{ color:#6B6B70; border-left-color:rgba(0,0,0,.14); }
body.theme-light .section + .section{ border-top-color:rgba(0,0,0,.08); }

/* Karten, Schritte, Checklisten */
body.theme-light .card, body.theme-light .step, body.theme-light .check, body.theme-light .how-step, body.theme-light .empty,
body.theme-light .event, body.theme-light .aplayer, body.theme-light .flash{ background:#FFFFFF; border-color:rgba(0,0,0,.08); box-shadow:0 1px 2px rgba(0,0,0,.04), 0 8px 24px rgba(0,0,0,.04); }
body.theme-light .steps{ border-color:rgba(0,0,0,.08); background:rgba(0,0,0,.06); }
body.theme-light .card:hover, body.theme-light .event:hover{ border-color:rgba(202,43,47,.45); }
body.theme-light .card h3, body.theme-light .step .t h4, body.theme-light .how-step h3, body.theme-light .event-body h3{ color:#111114; }
body.theme-light .card p, body.theme-light .step .t p, body.theme-light .how-step p, body.theme-light .event-meta, body.theme-light .event-desc{ color:#5A5A60; }
body.theme-light .check p{ color:#3A3A40; }
body.theme-light .callout{ background:rgba(202,43,47,.06); border-color:rgba(202,43,47,.35); }
body.theme-light .callout p{ color:#3A3A40; }
body.theme-light .vidlink{ color:#3A3A40; border-top-color:rgba(0,0,0,.09); }
body.theme-light .vidlink::after{ color:#9A9A9E; }
body.theme-light .vidlink:hover, body.theme-light .vidlink:hover::after{ color:#CA2B2F; }

/* Seitennavigation (Anleitung) */
body.theme-light .navlink{ color:#4A4A50; }
body.theme-light .navlink:hover{ background:rgba(0,0,0,.04); color:#111114; }
body.theme-light .navlink.active{ background:rgba(202,43,47,.08); border-color:rgba(202,43,47,.35); color:#111114; }
body.theme-light .rail-track{ background:rgba(0,0,0,.12); }
body.theme-light .rail-node{ background:#F4F4F6; border-color:rgba(0,0,0,.25); }
body.theme-light .rail-node.done, body.theme-light .rail-node.active{ background:#CA2B2F; border-color:#CA2B2F; }
@media (max-width:820px){
  body.theme-light .sidenav{ background:rgba(244,244,246,.96); border-bottom-color:rgba(0,0,0,.08); }
}

/* Akkordeon (Anleitung) */
body.theme-light .acc, body.theme-light .acc-item{ border-color:rgba(0,0,0,.1); }
body.theme-light .acc-cat, body.theme-light .acc-block b{ color:#8A8A8E; }
body.theme-light .acc-title{ color:#111114; }
body.theme-light .acc-head:hover .acc-title{ color:#CA2B2F; }
body.theme-light .acc-block{ color:#4A4A50; }

/* Audio-Guide: Player und MARCH-Baum sitzen im dunklen Hero. Hell, aber nicht grell –
   warmes Hellgrau mit Tiefe (Schatten, feiner Innenrand), damit es sich in den dunklen Kopf einfügt. */
/* AIDLINE-Handschrift auf den hellen Flächen: roter Kantenstreifen links, Marken-Shards als Wasserzeichen, rote Kürzel-Kacheln */
body.theme-light .hero .aplayer{ position:relative; overflow:hidden; padding-top:34px; background:linear-gradient(135deg,#F4F4F6 0%,#ECECF0 55%,#E6E6EB 100%); border:1px solid rgba(255,255,255,.28); border-left:4px solid #CA2B2F; box-shadow:0 26px 60px rgba(0,0,0,.5), inset 0 1px 0 rgba(255,255,255,.9); }
body.theme-light .hero .aplayer::before{ content:""; position:absolute; inset:0; pointer-events:none; background:url('/assets/brand/pattern-dark.svg') right -80px top -90px / 520px auto no-repeat; opacity:.07; }
body.theme-light .hero .aplayer::after{ content:"// AIDLINE · RIDE PREPARED"; position:absolute; left:0; right:0; top:0; height:22px; line-height:22px; padding:0 18px; text-align:right; background:linear-gradient(90deg, rgba(202,43,47,.10), rgba(202,43,47,.02)); border-bottom:1px solid rgba(202,43,47,.18); color:#B1262B; font-family:'JetBrains Mono',monospace; font-size:8.5px; letter-spacing:.2em; text-transform:uppercase; pointer-events:none; z-index:0; }
body.theme-light .hero .aplayer > *{ position:relative; z-index:1; }
body.theme-light .hero .ap-map{ border-bottom-color:rgba(0,0,0,.1); }
body.theme-light .hero .mm{ background:rgba(255,255,255,.55); border-color:rgba(0,0,0,.12); color:#5A5A60; }
body.theme-light .hero .mm:hover{ border-color:rgba(202,43,47,.6); color:#111114; background:#fff; }
body.theme-light .hero .mm.done{ background:rgba(202,43,47,.10); border-color:rgba(202,43,47,.4); color:#B1262B; }
body.theme-light .hero .mm.active{ background:#CA2B2F; border-color:#CA2B2F; color:#fff; box-shadow:0 6px 16px rgba(202,43,47,.35); }
body.theme-light .hero .ap-title{ color:#111114; } body.theme-light .hero .ap-title b{ color:#111114; }
body.theme-light .hero .ap-title span{ color:#CA2B2F; }
body.theme-light .hero .ap-sub{ color:#6B6B70; } body.theme-light .hero .ap-sub em{ color:#B1262B; } body.theme-light .hero .ap-sub strong{ color:#111114; }
body.theme-light .hero .cbtn{ border-color:rgba(0,0,0,.16); background:rgba(255,255,255,.5); color:#3A3A40; }
body.theme-light .hero .cbtn:hover{ border-color:rgba(202,43,47,.7); color:#111114; background:#fff; }
body.theme-light .hero .ap-bar{ background:rgba(0,0,0,.12); }
body.theme-light .hero .ap-bar-fill::after{ box-shadow:0 2px 8px rgba(0,0,0,.3); }
body.theme-light .hero .ap-time{ color:#6B6B70; }
body.theme-light .hero .ap-loop{ background:rgba(202,43,47,.10); border-color:rgba(202,43,47,.35); color:#B1262B; }

body.theme-light .hero .node{ background:linear-gradient(90deg,#F1F1F4 0%,#ECECF0 100%); border:1px solid rgba(255,255,255,.22); border-left:4px solid rgba(202,43,47,.8); color:#4A4A50; box-shadow:0 12px 30px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.8); }
body.theme-light .hero .node:hover{ border-color:rgba(202,43,47,.6); color:#111114; background:#F4F4F6; }
body.theme-light .hero .node .tag{ background:rgba(202,43,47,.12); border-color:rgba(202,43,47,.35); color:#B1262B; box-shadow:inset 0 0 0 1px rgba(255,255,255,.5); }
body.theme-light .hero .node .lbl b{ color:#111114; }
body.theme-light .hero .node .lbl small{ color:#6B6B70; }
body.theme-light .hero .node .st{ color:#B1262B; }
body.theme-light .hero .node.active{ background:linear-gradient(135deg,#CA2B2F,#A81F23); border-color:#CA2B2F; border-left-color:#fff; color:#fff; box-shadow:0 12px 32px rgba(202,43,47,.45), 0 0 0 4px rgba(202,43,47,.18); }
body.theme-light .hero .node.active .tag{ background:rgba(255,255,255,.18); border-color:transparent; color:#fff; }
body.theme-light .hero .node.active .lbl b{ color:#fff; } body.theme-light .hero .node.active .lbl small{ color:rgba(255,255,255,.8); }
body.theme-light .hero .node.active .st{ color:#fff; }
body.theme-light .hero .node.next{ border-color:#CA2B2F; }
body.theme-light .hero .node.next .lbl b{ color:#111114; }
body.theme-light .hero .node.done{ background:#D7D7DC; border-color:rgba(255,255,255,.15); border-left-color:rgba(0,0,0,.18); opacity:.85; box-shadow:0 6px 16px rgba(0,0,0,.25); }
body.theme-light .hero .node.done:hover{ opacity:1; background:#E4E4E8; }
body.theme-light .hero .node.done .tag{ background:transparent; border-color:rgba(0,0,0,.14); color:#8A8A8E; }
body.theme-light .hero .node.done .lbl b{ color:#6B6B70; }
body.theme-light .hero .node.done .st{ color:#6B6B70; border-color:rgba(0,0,0,.18); }
body.theme-light .hero .node.done:hover .st{ color:#111114; border-color:rgba(202,43,47,.6); }
body.theme-light .hero .node.sub{ background:#F3F3F6; }
/* Aktiver/nächster Unterpunkt: genau wie bei den Oberpunkten rot leuchten (die .sub-Regel darf das nicht überstimmen) */
body.theme-light .hero .node.sub.active{ background:linear-gradient(135deg,#CA2B2F,#A81F23); border-color:#CA2B2F; border-left-color:#fff; color:#fff; box-shadow:0 12px 32px rgba(202,43,47,.45), 0 0 0 4px rgba(202,43,47,.18); }
body.theme-light .hero .node.sub.active .lbl b{ color:#fff; } body.theme-light .hero .node.sub.active .lbl small{ color:rgba(255,255,255,.8); }
body.theme-light .hero .node.sub.active .tag{ background:rgba(255,255,255,.18); border-color:transparent; color:#fff; }
body.theme-light .hero .node.sub.active .st{ color:#fff; }
body.theme-light .hero .node.sub.next{ border-color:#CA2B2F; box-shadow:0 0 0 4px rgba(202,43,47,.22), 0 12px 30px rgba(0,0,0,.35); }
body.theme-light .hero .node.sub.next .lbl b{ color:#111114; }
body.theme-light .hero .node.sub.done{ background:#D7D7DC; }
/* Fertig gehört, aber noch ausgewählt (Audio zu Ende): wie "gehört" darstellen – grau mit dunkler Schrift, kein Rot */
body.theme-light .hero .node.done.active, body.theme-light .hero .node.sub.done.active{ background:#D7D7DC; border-color:rgba(255,255,255,.15); border-left-color:rgba(0,0,0,.18); color:#4A4A50; box-shadow:0 6px 16px rgba(0,0,0,.25); animation:none; }
body.theme-light .hero .node.done.active .lbl b, body.theme-light .hero .node.sub.done.active .lbl b{ color:#3A3A40; }
body.theme-light .hero .node.done.active .lbl small, body.theme-light .hero .node.sub.done.active .lbl small{ color:#6B6B70; }
body.theme-light .hero .node.done.active .tag, body.theme-light .hero .node.sub.done.active .tag{ background:transparent; border-color:rgba(0,0,0,.14); color:#8A8A8E; }
body.theme-light .hero .node.done.active .st, body.theme-light .hero .node.sub.done.active .st{ color:#3A3A40; border:1px solid rgba(0,0,0,.18); border-radius:100px; padding:5px 10px; }
body.theme-light .hero .node.done.active .st .eqs i, body.theme-light .hero .node.sub.done.active .st .eqs i{ background:#3A3A40; }
/* "Nächster Schritt" auf hellen Karten deutlicher: kräftigerer Puls */
@keyframes pulselight{ 0%,100%{ box-shadow:0 0 0 0 rgba(202,43,47,.0), 0 12px 30px rgba(0,0,0,.35); } 50%{ box-shadow:0 0 0 8px rgba(202,43,47,.35), 0 12px 30px rgba(0,0,0,.35); } }
body.theme-light .hero .node.next, body.theme-light .hero .node.sub.next{ animation:pulselight 1.5s ease-in-out infinite; }
@media (prefers-reduced-motion: reduce){ body.theme-light .hero .node.next, body.theme-light .hero .node.sub.next{ animation:none; box-shadow:0 0 0 4px rgba(202,43,47,.35); } }
body.theme-light .hero .subs, body.theme-light .hero .subs::before, body.theme-light .hero .subs > .leaf::before{ border-color:rgba(224,106,110,.55); background-color:transparent; }
body.theme-light .hero .subs::before, body.theme-light .hero .subs > .leaf::before{ background:rgba(224,106,110,.55); }
body.theme-light .hero .credit .chip{ box-shadow:0 10px 24px rgba(0,0,0,.35); border-left:4px solid #CA2B2F; }

/* Unterhalb des Heros: Karten-Vorstellung und Hinweis hell */
body.theme-light .cardframe{ background:radial-gradient(120% 100% at 50% 0%, rgba(202,43,47,.10), rgba(255,255,255,0) 70%); border-color:rgba(0,0,0,.08); }
body.theme-light .cardframe img{ filter:drop-shadow(0 18px 36px rgba(0,0,0,.22)); }
body.theme-light .cardtext .scan{ color:#8A8A8E; }
body.theme-light .cardtext .scan .qr{ border-color:rgba(0,0,0,.14); color:#6B6B70; }

/* Rechtliches */
body.theme-light .doc{ border-bottom-color:rgba(0,0,0,.08); }
body.theme-light .doc-body, body.theme-light .Haendlerbund_Rechtstext_Absatz{ color:#4A4A50; }
body.theme-light .doc-body strong{ color:#111114; }
body.theme-light .doc-body h1, body.theme-light .doc-body h2, body.theme-light .doc-body h3,
body.theme-light .Haendlerbund_Rechtstext_Titel, body.theme-light .Haendlerbund_Rechtstext_Untertitel{ color:#111114; }

/* Events */
body.theme-light .card-badge, body.theme-light .pill-float{ background:rgba(255,255,255,.94); box-shadow:0 6px 18px rgba(0,0,0,.18); }
body.theme-light .card-badge.draft{ color:#8A6208; border-color:rgba(168,120,12,.5); }
body.theme-light .card-badge.cancelled{ color:#6B6B70; border-color:rgba(0,0,0,.2); }
body.theme-light .event-date .wd{ color:#8A8A8E; }
body.theme-light .event-date .w{ color:#3A3A40; } body.theme-light .event-date .w small{ color:#8A8A8E; }
body.theme-light .event-meta .loc:hover{ color:#CA2B2F; }
body.theme-light .btn-cal{ color:#111114; border-color:rgba(0,0,0,.18); }
body.theme-light .btn-cal:hover{ color:#CA2B2F; border-color:#CA2B2F; background:rgba(202,43,47,.06); }
body.theme-light .cal-alt{ color:#6B6B70; } body.theme-light .cal-alt:hover{ color:#111114; }
body.theme-light .event-date{ border-right-color:rgba(0,0,0,.16); }
body.theme-light .event-date .d{ color:#111114; }
body.theme-light .event-date .w{ color:#8A8A8E; }
body.theme-light .event-date::before, body.theme-light .event-date::after{ background:#F4F4F6; border-color:rgba(0,0,0,.08); }
body.theme-light .event-more summary{ color:#CA2B2F; }
body.theme-light .pill.muted{ color:#8A8A8E; border-color:rgba(0,0,0,.14); }
body.theme-light .empty{ border-style:dashed; border-color:rgba(0,0,0,.16); }
body.theme-light .empty .k{ color:#8A8A8E; } body.theme-light .empty p{ color:#4A4A50; }
body.theme-light .past-list li{ border-bottom-color:rgba(0,0,0,.08); }
body.theme-light .past-list .pd, body.theme-light .past-list .pl{ color:#8A8A8E; }
body.theme-light .past-list .pt{ color:#111114; }
body.theme-light .flash{ color:#111114; }
@media (max-width:820px){ body.theme-light .event-date{ border-bottom-color:rgba(0,0,0,.16); } }

/* Helfer-Popup (Events) */
body.theme-light .help-modal{ background:#FFFFFF; color:#4A4A50; border-color:rgba(0,0,0,.1); box-shadow:0 40px 100px rgba(0,0,0,.25); }
body.theme-light .help-modal::backdrop{ background:rgba(20,20,24,.55); }
body.theme-light .help-close{ border-color:rgba(0,0,0,.14); background:rgba(0,0,0,.04); color:#111114; }
body.theme-light .help-close:hover{ background:rgba(0,0,0,.08); }
body.theme-light .help-head h2, body.theme-light .help-success h2{ color:#111114; }
body.theme-light .help-sub{ color:#8A8A8E; }
body.theme-light .help-error{ color:#8E1B1F; background:rgba(202,43,47,.08); }
body.theme-light .field label{ color:#2A2A30; } body.theme-light .field label small{ color:#8A8A8E; }
body.theme-light .field input, body.theme-light .field select, body.theme-light .field textarea{ color:#111114; background-color:#FFFFFF; border-color:rgba(0,0,0,.16); color-scheme:light; }
body.theme-light .field select option{ color:#111114; background:#FFFFFF; }
body.theme-light .help-modal{ color-scheme:light; }
body.theme-light .field input[type="date"]{ color-scheme:light; }
body.theme-light .field select{ background-image:linear-gradient(45deg, transparent 50%, #6B6B70 50%), linear-gradient(135deg, #6B6B70 50%, transparent 50%); background-position:calc(100% - 18px) 55%, calc(100% - 13px) 55%; background-size:5px 5px; background-repeat:no-repeat; }
body.theme-light{ --dp-bg:#fff; --dp-text:#111114; --dp-muted:#8A8A8E; --dp-border:rgba(0,0,0,.12); --dp-field:rgba(0,0,0,.04); --dp-hover:rgba(0,0,0,.06); --dp-accent:#CA2B2F; --dp-we:#B1262B; }
body.theme-light .err{ color:#B1262B; }
body.theme-light .consent{ color:#4A4A50; }
body.theme-light .btn-cancel{ color:#6B6B70; } body.theme-light .btn-cancel:hover{ color:#111114; }
body.theme-light .help-success p{ color:#4A4A50; }
