/* Adventskalender-Countdown (12.10.2026, Axel: „weg vom kalten Look, hin zu weihnachtlich warm, minimalistisch,
   absolut Premium“). Vier Türchen in Glühwein-Bordeaux mit Goldfolie. Je näher eine Einheit an null, desto weiter
   steht ihr Türchen einen Spalt offen und warmes Licht fällt heraus; bei null schwingt es auf, die „00“ steht im
   Licht. Das letzte Türchen öffnet sich zum Ticket-Start. Logik: /assets/winter-tuer.js. Nur transform/opacity. */
.tu-cd { --tu-w: clamp(60px, 17vw, 100px); display:flex; justify-content:center; gap:clamp(8px, 2.4vw, 14px); position:relative; }
/* v3 (12.10. abends, Axel: „Fenster sehen noch nicht gut genug aus“): Die vier Türchen sitzen jetzt in EINER Kalender-
   tafel – Bordeaux-Lack mit feinen Goldsternen, doppelter Goldkante und einer Goldschleife oben wie ein Geschenk. Die
   Türchen sind perforiert (gestrichelte Goldlinie, Scharnier links) mit kleiner Griffmulde rechts – wie ein echter
   Adventskalender, nur edler. */
.tu-cd { width:fit-content; max-width:100%; padding:clamp(14px, 3.4vw, 20px) clamp(12px, 3vw, 18px) clamp(10px, 2.4vw, 14px); border-radius:20px; isolation:isolate;
  background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='34' height='34'><path d='M8 5.6 L8.7 7.3 L10.4 8 L8.7 8.7 L8 10.4 L7.3 8.7 L5.6 8 L7.3 7.3Z' fill='%23e9c27a' fill-opacity='.42'/><circle cx='25' cy='23' r='.8' fill='%23e9c27a' fill-opacity='.35'/></svg>") 0 0/34px 34px repeat,
    radial-gradient(120% 90% at 50% 0%, rgba(255,200,140,.10), rgba(255,200,140,0) 60%),
    linear-gradient(160deg, #5c1020 0%, #3a0813 52%, #1d0308 100%);
  box-shadow:0 26px 60px rgba(0,0,0,.6), 0 4px 14px rgba(0,0,0,.45),
    inset 0 0 0 1px rgba(226,186,112,.7), inset 0 0 0 5px rgba(26,3,8,.55), inset 0 0 0 6px rgba(226,186,112,.3), inset 0 1px 18px rgba(255,214,160,.08); }
.tu-cd::before { content:''; position:absolute; left:50%; top:-19px; width:58px; height:33px; margin-left:-29px; z-index:3; pointer-events:none;
  background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 36'><defs><linearGradient id='g' x1='0' y1='0' x2='1' y2='1'><stop offset='0' stop-color='%23fff0c4'/><stop offset='.45' stop-color='%23d9a957'/><stop offset='1' stop-color='%238f6224'/></linearGradient></defs><path d='M29 19 L21 34 L25.5 33 L27.5 35.5 L32 21Z M35 19 L43 34 L38.5 33 L36.5 35.5 L32 21Z' fill='url(%23g)'/><path d='M32 17 C23 1 3 3 7 14 C10 23 25 21 32 17Z M32 17 C41 1 61 3 57 14 C54 23 39 21 32 17Z' fill='url(%23g)' stroke='%23fff3d0' stroke-opacity='.55' stroke-width='.7'/><path d='M29 15 C23 7 12 7 11 13 M35 15 C41 7 52 7 53 13' fill='none' stroke='%237a4f18' stroke-opacity='.45' stroke-width='1'/><ellipse cx='32' cy='17.5' rx='5.2' ry='4.6' fill='url(%23g)' stroke='%23fff3d0' stroke-opacity='.6' stroke-width='.7'/></svg>") center/contain no-repeat; filter:drop-shadow(0 3px 5px rgba(0,0,0,.5)); }
.tu-u { display:flex; flex-direction:column; align-items:center; }
.tu-cell { position:relative; width:var(--tu-w); height:calc(var(--tu-w) * 1.16); perspective:640px; }
/* Nische hinter dem Türchen: warmes Licht, die Zahl leuchtet golden */
.tu-nische { position:absolute; inset:0; border-radius:10px; overflow:hidden;
  background:radial-gradient(85% 70% at 50% 55%, #ffe6b3 0%, #f4bd6a 24%, #b8642a 54%, #43140c 86%, #240907 100%);
  box-shadow:inset 0 6px 14px rgba(40,8,4,.75), inset 0 -4px 10px rgba(40,8,4,.6), 0 0 0 1px rgba(214,170,100,.28); }
.tu-nische::after { content:''; position:absolute; inset:0; background:radial-gradient(circle at 50% 60%, rgba(255,240,200,.0), rgba(30,6,4,.25) 80%); }
.tu-in { position:absolute; inset:0; display:grid; place-items:center; z-index:1;
  font:300 calc(var(--tu-w) * .46)/1 'Inter',sans-serif; letter-spacing:-.03em; font-variant-numeric:tabular-nums; color:#fff7e6;
  text-shadow:0 0 18px rgba(255,214,140,.95), 0 0 2px rgba(255,255,255,.9); }
/* Türchen */
.tu-tuer { position:absolute; inset:0; z-index:2; transform-origin:0 50%; transform-style:preserve-3d;
  transform:rotateY(calc(var(--auf, 0) * -1deg)); transition:transform 1s cubic-bezier(.2,.75,.25,1); will-change:transform; }
.tu-front, .tu-back { position:absolute; inset:0; border-radius:10px; -webkit-backface-visibility:hidden; backface-visibility:hidden; }
.tu-front { overflow:hidden;
  background:
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 .5  0 0 0 0 .2  0 0 0 0 .2  0 0 0 .35 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>"),
    linear-gradient(118deg, rgba(255,220,180,0) 38%, rgba(255,220,180,.07) 50%, rgba(255,220,180,0) 62%),
    radial-gradient(circle at 100% 50%, rgba(18,2,6,.92) 0 3.5px, rgba(226,186,112,.55) 3.6px 4.4px, transparent 4.6px),
    radial-gradient(120% 90% at 30% 8%, #86202f 0%, #5a1020 48%, #2c050d 100%);
  box-shadow:inset 0 1px 0 rgba(255,214,170,.2), inset 0 -12px 22px rgba(0,0,0,.35), 0 0 0 1px rgba(10,1,3,.85), 0 6px 14px rgba(0,0,0,.45); }
.tu-front::before { content:''; position:absolute; inset:4px; border-radius:7px; border:1px dashed rgba(236,200,132,.62); border-left-style:solid; border-left-color:rgba(236,200,132,.35); }
.tu-front::after { content:''; position:absolute; top:-30%; bottom:-30%; left:-70%; width:40%; transform:skewX(-18deg);
  background:linear-gradient(90deg, rgba(255,230,190,0), rgba(255,230,190,.14), rgba(255,230,190,0)); animation:tuGlanz 10s calc(var(--i) * .5s + 2s) ease-in-out infinite; }
@keyframes tuGlanz { 0%, 82% { left:-70%; } 100% { left:140%; } }
.tu-num { position:absolute; inset:0; display:grid; place-items:center; padding-top:10%;
  font:300 calc(var(--tu-w) * .52)/1 'Inter',sans-serif; letter-spacing:-.04em; font-variant-numeric:tabular-nums;
  background:linear-gradient(172deg, #fff4d8 0%, #f4d48e 30%, #c99446 55%, #f8e0a6 72%, #a87634 100%);
  -webkit-background-clip:text; background-clip:text; color:transparent;
  filter:drop-shadow(0 -1px 0 rgba(30,3,6,.7)) drop-shadow(0 1px 0 rgba(255,228,170,.22)) drop-shadow(0 0 10px rgba(240,190,110,.18)); }
.tu-stern { position:absolute; left:50%; top:12%; width:8%; aspect-ratio:1; margin-left:-4%; color:#f0cf86; filter:drop-shadow(0 0 4px rgba(255,200,120,.6)) drop-shadow(0 1px 1px rgba(0,0,0,.5)); }
.tu-back { transform:rotateY(180deg);
  background:linear-gradient(160deg, #f1dfb8 0%, #d9b77a 55%, #b88d4c 100%); box-shadow:inset 0 0 0 1px rgba(120,70,20,.35); }
.tu-back::before { content:''; position:absolute; inset:6px; border-radius:6px; border:1px solid rgba(120,70,20,.3); }
/* Lichtspalt: warmes Licht fällt am Rand heraus, je weiter das Türchen offen steht */
.tu-licht { position:absolute; top:4%; bottom:4%; right:-6px; width:16px; z-index:3; pointer-events:none; opacity:calc(.12 + var(--lvl, 0) * .88);
  background:radial-gradient(50% 50% at 30% 50%, rgba(255,214,140,.9), rgba(255,170,80,0) 100%); filter:blur(3px); transition:opacity 1s ease; }
.tu-cell::after { content:''; position:absolute; inset:-14px; z-index:-1; pointer-events:none; border-radius:22px; opacity:calc(var(--lvl, 0) * .9);
  background:radial-gradient(60% 55% at 70% 55%, rgba(255,190,110,.42), rgba(255,170,80,0) 70%); transition:opacity 1s ease; }
.tu-lbl { margin-top:9px; font:600 9px/1 'Inter',sans-serif; letter-spacing:.28em; padding-left:.28em; text-transform:uppercase; color:rgba(240,207,134,.78); }
/* offen */
.tu-u.is-offen .tu-tuer { transition:transform 1.5s cubic-bezier(.25,1.25,.4,1); }
.tu-u.is-offen .tu-licht { opacity:0; }
.tu-u.is-offen .tu-cell::after { opacity:1; }
.tu-funke { position:absolute; left:50%; bottom:20%; z-index:4; width:3px; height:3px; margin-left:-1.5px; border-radius:50%; pointer-events:none;
  background:#ffe2a6; box-shadow:0 0 6px 1px rgba(255,200,120,.9); }
.tu-ruck { animation:tuRuck .45s ease; }
@keyframes tuRuck { 30% { transform:rotateY(calc(var(--auf, 0) * -1deg - 3deg)); } 60% { transform:rotateY(calc(var(--auf, 0) * -1deg + 1deg)); } }
@media (prefers-reduced-motion: reduce) { .tu-front::after { animation:none; display:none; } .tu-tuer { transition:none; } }
/* Ehrlicher Zähler (18.10.2026): eigene Speicherung leuchtet kurz golden auf; im „Erste“-Modus ersetzt die Zeile den
   allgemeinen „Gespeichert“-Hinweis (eine Zeile statt zwei, alles bleibt auf einem Bildschirm). */
.w-count.pop { animation:wcPop .8s cubic-bezier(.2,.8,.2,1); }
@keyframes wcPop { 0% { transform:scale(.94); opacity:.5; } 40% { transform:scale(1.06); opacity:1; color:#ffe2b0; } 100% { transform:none; } }
.w-count b { color:#ffe2b0; }
.w-count[data-modus^="erste"] ~ .w-saved, .w-count[data-modus^="erste"] ~ .wh-saved { display:none !important; }
@media (prefers-reduced-motion: reduce) { .w-count.pop { animation:none; } }
/* In-App-Browser-Hinweis v2 (23.10.2026, Axel: „sofort, Blick führen, leicht abdunkeln, mehr Wertigkeit“). Abdunklung mit
   leichtem Weichzeichner, Leiste von UNTEN (dort sind Finger und Blick), goldener Pfeil oben rechts senkrecht unter dem
   ···-Knopf von Instagram (Mitte 37,5 px vom rechten Rand – der Knopf sitzt im App-Kopf direkt über der Seite), feiner
   Goldfaden von der Leiste hinauf. Keine vh-Höhen (Instagram ändert die Fensterhöhe beim Scrollen); nur transform/opacity. */
.tu-iab-q[hidden] { display:none !important; }
.tu-iab { --tu-gold:#e9c27a; --tu-ink:#fff4e4; --tu-x:37.5px;
  position:fixed; inset:0; z-index:2147483645; visibility:hidden; pointer-events:none; transition:visibility 0s linear .42s;
  font:400 15px/1.45 'Inter',sans-serif; color:var(--tu-ink); text-align:left; -webkit-tap-highlight-color:transparent;
  overscroll-behavior:contain; -webkit-font-smoothing:antialiased; }
.tu-iab.on { visibility:visible; pointer-events:auto; transition-delay:0s; }
/* Cookie-Hinweis tritt zurück, solange die Leiste offen ist (wie beim Menü, nav.css html.menu-lock #fayaCc) */
html.tu-iab-auf #fayaCc { opacity:0 !important; visibility:hidden; pointer-events:none; }
.tu-iab-dim { position:absolute; inset:0; opacity:0; transition:opacity .22s ease-out;
  background:linear-gradient(180deg, rgba(10,2,5,.74) 0%, rgba(14,3,7,.5) 38%, rgba(10,2,5,.62) 100%);
  -webkit-backdrop-filter:blur(5px) saturate(.85); backdrop-filter:blur(5px) saturate(.85); }
.tu-iab.on .tu-iab-dim { opacity:1; }
/* Leiste */
.tu-iab-sheet { position:absolute; left:max(10px, env(safe-area-inset-left, 0px)); right:max(10px, env(safe-area-inset-right, 0px));
  bottom:calc(10px + env(safe-area-inset-bottom, 0px)); max-width:430px; margin:0 auto; box-sizing:border-box; padding:8px 16px 16px;
  border-radius:28px; outline:none;
  background:radial-gradient(120% 70% at 50% 0%, rgba(255,206,140,.07), rgba(255,206,140,0) 60%), linear-gradient(180deg, #2a0a13 0%, #1b060c 58%, #14040a 100%);
  box-shadow:0 30px 80px rgba(0,0,0,.6), 0 4px 18px rgba(0,0,0,.35), inset 0 0 0 1px rgba(233,194,122,.22), inset 0 1px 0 rgba(255,228,180,.14);
  transform:translateY(calc(100% + 28px)); transition:transform .24s cubic-bezier(.4,0,1,1); }
.tu-iab.on .tu-iab-sheet { transform:translateY(calc(-1 * var(--tu-kb, 0px))); transition:transform .36s cubic-bezier(.22,1,.36,1); }
.tu-iab-griff { width:36px; height:4px; margin:0 auto 16px; border-radius:2px; background:rgba(255,240,222,.2); }
.tu-iab-t { margin:0; text-align:center; font:600 20px/1.2 'Inter',sans-serif; letter-spacing:-.015em; color:#fff7ea; text-wrap:balance; }
.tu-iab-sub { margin:7px auto 18px; max-width:32ch; text-align:center; font-size:14.5px; line-height:1.45; color:rgba(255,238,220,.64); text-wrap:balance; }
.tu-iab-ol { list-style:none; margin:0; padding:2px 14px; border-radius:20px; background:rgba(255,255,255,.04); box-shadow:inset 0 0 0 1px rgba(255,255,255,.055); }
.tu-iab-ol li { display:flex; align-items:center; gap:12px; min-height:58px; padding:10px 0; }
.tu-iab-ol li + li { border-top:1px solid rgba(255,255,255,.07); }
.tu-iab-n { flex:none; width:26px; height:26px; border-radius:50%; display:grid; place-items:center; font:500 13px/1 'Inter',sans-serif;
  font-variant-numeric:tabular-nums; color:#f0cf86; box-shadow:inset 0 0 0 1px rgba(233,194,122,.5); }
.tu-iab-s { flex:1; min-width:0; font-size:15.5px; line-height:1.4; color:var(--tu-ink); text-wrap:balance; }
/* kleiner ···-Knopf wie im Instagram-Kopf, mit Goldrand als Brücke zum Pfeil */
.tu-iab-dots { display:inline-flex; align-items:center; justify-content:center; gap:3px; width:30px; height:30px; margin:-6px 0 -6px 3px;
  vertical-align:middle; border-radius:50%; background:#2b2b2e; box-shadow:0 0 0 1px rgba(233,194,122,.7), 0 0 14px rgba(255,200,120,.28); }
.tu-iab-dots i { width:3.5px; height:3.5px; border-radius:50%; background:#fff; }
/* Menüpunkt in eigener Zeile – so, wie er gleich in Instagrams Menü steht (Symbol + Wortlaut) */
.tu-iab-menu { display:block; margin-top:3px; font-weight:600; color:#ffdf9e; text-wrap:balance; }
.tu-iab-menu::before { content:''; display:inline-block; width:15px; height:15px; margin:0 6px 0 1px; vertical-align:-2px; background:currentColor;
  -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M14 4h6v6'/><path d='M20 4l-9 9'/><path d='M18 14v4a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h4'/></svg>") center/contain no-repeat;
          mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M14 4h6v6'/><path d='M20 4l-9 9'/><path d='M18 14v4a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h4'/></svg>") center/contain no-repeat; }
/* Mail im Hinweis, v2 (Axel 23.10.2026 abends: „Mail wirkt nach Spam, der Kalender ist moderner“): Hauptweg bleibt der
   Kalender über den Browser (Schritte ① ②, Pfeil, Goldfaden). Darunter nur ein leiser Textlink „Lieber per Mail erinnern?“
   (klein, gedämpft, kein Knopf – Tippfläche trotzdem 44 px). Erst ein Tipp klappt Mailfeld, „Erinnern“ und
   Datenschutz-Zeile weich auf (grid-template-rows 0fr → 1fr, nur transform/opacity/Raster); die Schritte treten dann
   zurück. Feld 16 px (sonst zoomt iOS), Tippflächen 52 px. Bei offener Tastatur rückt die Leiste hinauf (--tu-kb). */
.tu-iab-mailp { margin:10px 0 0; text-align:center; }
.tu-iab-maillink { min-height:44px; padding:0 10px; border:0; background:none; cursor:pointer; -webkit-appearance:none; appearance:none;
  font:400 13.5px/1.3 'Inter',sans-serif; color:rgba(255,238,220,.52); text-decoration:underline; text-underline-offset:3px;
  text-decoration-color:rgba(255,238,220,.22); transition:color .2s ease; }
.tu-iab-maillink:active { color:rgba(255,238,220,.8); }
.tu-iab-mailbox { display:grid; grid-template-rows:0fr; opacity:0; visibility:hidden;
  transition:grid-template-rows .34s cubic-bezier(.22,1,.36,1), opacity .2s ease, visibility 0s linear .34s; }
.tu-iab-mailin { min-height:0; overflow:hidden; }
.tu-iab-mailauf .tu-iab-mailbox { grid-template-rows:1fr; opacity:1; visibility:visible;
  transition:grid-template-rows .34s cubic-bezier(.22,1,.36,1), opacity .28s ease .06s, visibility 0s; }
.tu-iab-nw { white-space:nowrap; }
.tu-iab-mailtext { margin:2px auto 14px; max-width:32ch; text-align:center; font-size:14.5px; line-height:1.45; color:rgba(255,238,220,.64); text-wrap:balance; }
/* Mailfeld offen: die Browser-Schritte klappen weich zusammen, der leise Link verschwindet */
.tu-iab-ol, .tu-iab-sub { transition:opacity .2s ease; }
.tu-iab-mailauf .tu-iab-sub, .tu-iab-mailauf .tu-iab-ol, .tu-iab-mailauf .tu-iab-mailp { display:none; }
.tu-iab-mailauf .tu-iab-t { margin-bottom:12px; }
.tu-iab-mail { margin:0; padding:0 1px 2px; }
.tu-iab-mail input[type=email] { display:block; width:100%; box-sizing:border-box; height:52px; margin:0; padding:0 18px; border:0;
  border-radius:16px; font:400 16px/1.2 'Inter',sans-serif; color:#fff7ea; background:rgba(255,255,255,.07); caret-color:#e9c27a;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.12); -webkit-appearance:none; appearance:none; outline:none;
  transition:box-shadow .2s ease, background .2s ease; }
.tu-iab-mail input[type=email]::placeholder { color:rgba(255,238,220,.4); }
.tu-iab-mail input[type=email]:focus { background:rgba(255,255,255,.09); box-shadow:inset 0 0 0 1.5px rgba(233,194,122,.7); }
.tu-iab-senden { display:flex; align-items:center; justify-content:center; width:100%; height:52px; margin:10px 0 0; padding:0 16px; border:0;
  border-radius:16px; cursor:pointer; -webkit-appearance:none; appearance:none; font:600 16px/1.2 'Inter',sans-serif; color:#1b060c;
  background:#fff4e4; box-shadow:0 10px 26px rgba(0,0,0,.32); transition:transform .15s ease, opacity .15s ease; }
.tu-iab-senden:active { transform:scale(.98); opacity:.9; }
.tu-iab-senden:disabled { opacity:.72; }
.tu-iab-hp { position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
.tu-iab-ds { margin:10px 0 0; text-align:center; font-size:12.5px; line-height:1.45; color:rgba(255,238,220,.5); text-wrap:balance; }
.tu-iab-ds a { color:rgba(255,238,220,.72); text-decoration:underline; text-underline-offset:2px; text-decoration-color:rgba(255,238,220,.3); }
.tu-iab-ds.err { color:#ffb9ab; }
.tu-iab-fertig { padding:18px 0 4px; text-align:center; }
.tu-iab-fertig[hidden] { display:none; }
.tu-iab-ok-t { margin:0; font:600 20px/1.25 'Inter',sans-serif; letter-spacing:-.01em; color:#f0cf86; }
.tu-iab-ok-s { margin:6px 0 0; font-size:15px; line-height:1.45; color:rgba(255,238,220,.7); }
/* Tastatur offen: nur Feld, „Erinnern“, Datenschutz – alles über der Tastatur; Pfeil, Griff und Knöpfe treten zurück */
.tu-iab-kb .tu-iab-sheet { transition:transform .26s cubic-bezier(.22,1,.36,1); padding-top:18px; }
.tu-iab-kb .tu-iab-griff, .tu-iab-kb .tu-iab-akt { display:none; }
/* Reicht der Platz über der Tastatur nicht (iPhone SE), tritt die Überschrift zurück – der ehrliche Satz zur Liste bleibt */
.tu-iab-eng .tu-iab-t { display:none; }
.tu-iab-eng .tu-iab-mailtext { margin-top:0; }
.tu-iab.tu-iab-kb .tu-iab-pfeil, .tu-iab.tu-iab-kb .tu-iab-faden, .tu-iab.tu-iab-gesendet .tu-iab-pfeil, .tu-iab.tu-iab-gesendet .tu-iab-faden {
  opacity:0 !important; transition:opacity .18s ease !important; }
/* Nach dem Absenden: ruhig, nur die Bestätigung und Schließen */
.tu-iab-gesendet .tu-iab-t, .tu-iab-gesendet .tu-iab-sub, .tu-iab-gesendet .tu-iab-ol, .tu-iab-gesendet .tu-iab-mailp,
.tu-iab-gesendet .tu-iab-mailbox, .tu-iab-gesendet .tu-iab-copy { display:none; }
.tu-iab-akt { display:flex; gap:10px; margin-top:14px; }
.tu-iab-akt button { flex:1 1 0; min-width:0; min-height:48px; padding:0 12px; border:0; border-radius:16px; cursor:pointer; -webkit-appearance:none; appearance:none;
  display:inline-flex; align-items:center; justify-content:center; gap:8px; font:500 15px/1.2 'Inter',sans-serif; transition:transform .15s ease, opacity .15s ease; }
.tu-iab-akt button:active { transform:scale(.97); opacity:.85; }
.tu-iab-copy { color:#ffdf9e; background:transparent; box-shadow:inset 0 0 0 1px rgba(233,194,122,.38); }
.tu-iab-copy::before { content:''; flex:none; width:16px; height:16px; background:currentColor;
  -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><rect x='9' y='9' width='11' height='11' rx='2'/><path d='M5 15V6a2 2 0 0 1 2-2h9'/></svg>") center/contain no-repeat;
          mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><rect x='9' y='9' width='11' height='11' rx='2'/><path d='M5 15V6a2 2 0 0 1 2-2h9'/></svg>") center/contain no-repeat; }
.tu-iab-copy.ok { color:#cfeccb; box-shadow:inset 0 0 0 1px rgba(170,220,160,.45); }
.tu-iab-copy.ok::before { display:none; }
.tu-iab-zu { color:var(--tu-ink); background:rgba(255,255,255,.08); }
/* Pfeil: feine Spitze + Lichtschein direkt unter dem ···-Knopf (über der Abdunklung); sein Schaft ist der Goldfaden, der von der
   Leiste heraufwächst (Höhe misst winter-tuer.js). Ein Lichtpunkt wandert alle ~5 s ruhig hinauf und führt den Blick. */
.tu-iab-pfeil { position:absolute; top:0; right:calc(env(safe-area-inset-right, 0px) + var(--tu-x) - 30px); width:60px; height:30px; pointer-events:none;
  opacity:0; transition:opacity .15s ease; }
.tu-iab.on .tu-iab-pfeil { opacity:1; transition:opacity .4s ease-out .5s; }
.tu-iab-pfeil::before { content:''; position:absolute; left:50%; top:-40px; width:112px; height:76px; margin-left:-56px; border-radius:50%;
  background:radial-gradient(closest-side, rgba(255,214,140,.62), rgba(255,190,110,.2) 55%, rgba(255,190,110,0)); }
.tu-iab.on .tu-iab-pfeil::before { animation:tuIabSchein 2.8s ease-in-out .9s infinite; }
.tu-iab-pfeil svg { position:absolute; left:50%; top:3px; width:20px; height:12px; margin-left:-10px; color:#ffd88a; overflow:visible;
  filter:drop-shadow(0 0 4px rgba(255,200,120,.7)); }
@keyframes tuIabSchein { 0%, 100% { opacity:.6; } 50% { opacity:1; } }
.tu-iab-faden { position:absolute; top:6px; right:calc(env(safe-area-inset-right, 0px) + var(--tu-x) - .75px); width:1.5px; height:0; pointer-events:none;
  border-radius:1px; background:linear-gradient(to top, rgba(233,194,122,0), rgba(233,194,122,.32) 30%, rgba(246,210,140,.62) 75%, rgba(255,223,158,.95));
  transform-origin:50% 100%; transform:scaleY(0); opacity:0; transition:opacity .15s ease; }
.tu-iab.on .tu-iab-faden { transform:none; opacity:1; transition:transform .6s cubic-bezier(.22,1,.36,1) .18s, opacity .2s ease .18s; }
.tu-iab-funke { position:absolute; left:50%; top:0; width:5px; height:5px; margin-left:-2.5px; border-radius:50%; opacity:0;
  background:#fff3d2; box-shadow:0 0 6px 2px rgba(255,210,130,.75), 0 0 16px 4px rgba(255,190,110,.3); }
.tu-iab.on .tu-iab-funke { animation:tuIabFunke 5s cubic-bezier(.45,0,.25,1) .85s infinite; }
@keyframes tuIabFunke { 0% { transform:translateY(var(--h, 200px)); opacity:0; } 6% { opacity:1; } 28% { transform:translateY(0); opacity:1; }
  34%, 100% { transform:translateY(0); opacity:0; } }
@media (prefers-reduced-motion: reduce) {
  .tu-iab-mailbox, .tu-iab-mailauf .tu-iab-mailbox { transition:none; }
  .tu-iab-sheet { transform:none; opacity:0; transition:opacity .16s ease; }
  .tu-iab.on .tu-iab-sheet { transform:translateY(calc(-1 * var(--tu-kb, 0px))); transition:opacity .16s ease; }
  .tu-iab.on .tu-iab-sheet { opacity:1; }
  .tu-iab-pfeil, .tu-iab.on .tu-iab-pfeil, .tu-iab-faden, .tu-iab.on .tu-iab-faden { transform:none; transition:opacity .16s ease; }
  .tu-iab.on .tu-iab-pfeil::before, .tu-iab.on .tu-iab-funke { animation:none; }
}
html[data-lite="1"] .tu-iab.on .tu-iab-pfeil::before, html[data-lite="1"] .tu-iab.on .tu-iab-funke { animation:none; }

/* ── Erinnerungs-Baustein auf den SEO-Seiten (23.10.2026, winter_countdown.erinnern_html) ──────────────────────────
   Derselbe weiße Knopf wie auf /tickets („Erinnerung speichern“), in einer ruhigen Eisblau-Fläche wie die Winter-Karte.
   Nur Klassen unter .g5-erinnern (die Guide-Grundregeln in typo.css sind spezifischer als eine einzelne Klasse). */
.g5-erinnern { margin:14px 0 0; padding:18px 18px 16px; border-radius:18px; text-align:center; color:#fff;
  background:linear-gradient(180deg, #0b1526 0%, #060c18 100%); box-shadow:inset 0 0 0 1px rgba(200,225,255,.16); }
.g5-erinnern .g5-erinnern__k { margin:0 0 12px; max-width:none; font:500 11px/1.35 'Inter',sans-serif; letter-spacing:.2em;
  text-transform:uppercase; color:#CFE3FF; }
.g5-erinnern .g5-erinnern__btn { display:inline-flex; align-items:center; justify-content:center; gap:10px; height:50px; padding:0 28px;
  border-radius:999px; background:#fff; color:#04070d; font:500 16px/1 'Inter',sans-serif; letter-spacing:0; text-transform:none;
  text-decoration:none; white-space:nowrap; box-shadow:0 12px 34px rgba(0,0,0,.35); transition:transform .3s cubic-bezier(.22,1,.36,1), background .3s; }
.g5-erinnern .g5-erinnern__btn svg { width:16px; height:16px; flex:none; }
.g5-erinnern .g5-erinnern__btn span { display:inline; margin:0; color:inherit; font:inherit; }
.g5-erinnern .g5-erinnern__btn:hover { transform:translateY(-1px); }
.g5-erinnern .g5-erinnern__btn:active { transform:scale(.97); }
.g5-erinnern .g5-erinnern__btn:focus-visible { outline:2px solid #E0C490; outline-offset:3px; }
.g5-erinnern.ok .g5-erinnern__btn { background:#e8f3ff; }
.g5-erinnern .g5-erinnern__s { margin:12px auto 0; max-width:34ch; font:400 13px/1.45 'Inter',sans-serif; color:rgba(255,255,255,.66); }
.g5-erinnern.ok .g5-erinnern__s { color:#ffe2b0; }
.g5-erinnern .g5-erinnern__m { margin:6px 0 0; max-width:none; }
.g5-erinnern .g5-erinnern__m .remind-btn { min-height:36px; font:400 13.5px/1.3 'Inter',sans-serif; color:rgba(255,255,255,.72);
  text-decoration:underline; text-underline-offset:3px; text-decoration-color:rgba(255,255,255,.3); }
.g5-erinnern--live .g5-erinnern__btn { background:#f3d48b; }
@media (prefers-reduced-motion: reduce) { .g5-erinnern .g5-erinnern__btn { transition:none; } }
