/* Prosito · Showstopper-Paket: Kulissen-Ebene, Bewegungsknopf, Finale, Galerie-Vorschau. Nie die Bedienung verdecken (pointer-events:none). */
#llshow{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}
body.llshow #app{position:relative;z-index:3}
#llshow .ss-medium,#llshow .ss-canvas,#llshow .ss-scrim{position:absolute;inset:-4%;width:108%;height:108%;pointer-events:none}
#llshow .ss-medium video,#llshow .ss-medium img{width:100%;height:100%;object-fit:cover;display:block}
#llshow .ss-canvas{transition:opacity .8s ease}
#llshow .ss-drei{inset:0;width:100%;height:100%}
#llshow .ss-scrim{background:linear-gradient(180deg,rgba(0,0,0,.82),rgba(0,0,0,1));opacity:0;transition:opacity .4s} /* Deckkraft = gewählte Abdunklung (0,45–0,7) */
.ss-bewegung{position:fixed;left:calc(12px + env(safe-area-inset-left,0px));bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:44;border:1px solid rgba(255,255,255,.25);background:rgba(20,20,24,.55);color:#fff;
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:999px;padding:7px 12px;font:600 13px/1 system-ui,-apple-system,sans-serif;cursor:pointer;display:inline-flex;gap:8px;align-items:center}
.ss-bew-x{opacity:.6;font-size:15px;padding-left:4px;border-left:1px solid rgba(255,255,255,.25)}
.ss-finale{position:fixed;inset:0;width:100%;height:100%;z-index:40;pointer-events:none;mix-blend-mode:screen}
.ss-logo-blitz{position:fixed;left:50%;top:38%;width:min(52vw,260px);max-height:30vh;object-fit:contain;transform:translate(-50%,-50%) scale(.6);opacity:0;z-index:41;pointer-events:none;
  filter:drop-shadow(0 0 18px rgba(255,214,120,.95)) drop-shadow(0 0 48px rgba(255,190,80,.6));animation:ssBlitz 2.5s cubic-bezier(.2,.9,.2,1) forwards}
@keyframes ssBlitz{0%{opacity:0;transform:translate(-50%,-50%) scale(.6)}18%{opacity:1;transform:translate(-50%,-50%) scale(1.08);filter:brightness(2.2) drop-shadow(0 0 30px #fff)}
  40%{transform:translate(-50%,-50%) scale(1)}80%{opacity:1}100%{opacity:0;transform:translate(-50%,-50%) scale(1.02)}}
@media (prefers-reduced-motion:reduce){.ss-logo-blitz,.ss-finale{display:none}}

/* ---- Galerie-Vorschau (läuft bei Hover, Fokus oder gewählter Karte) ---- */
.ss-mini{position:relative;overflow:hidden;display:block}
.ss-mini i{position:absolute;display:block;font-style:normal;pointer-events:none}
.ss-mini *{animation-play-state:paused!important}
.gal-karte:hover .ss-mini *,.gal-karte:focus .ss-mini *,.gal-karte:focus-within .ss-mini *,.gal-karte.an .ss-mini *,.ss-mini.an *,.ss-mini:hover *{animation-play-state:running!important}
.ssm-neu{position:absolute;right:5px;top:5px;font:700 9px/1 system-ui,sans-serif;letter-spacing:.06em;color:#1a1306;background:linear-gradient(135deg,#ffe29a,#d9a441);border-radius:4px;padding:3px 5px;font-style:normal}
.ssm-sterne{inset:0;background-image:radial-gradient(1px 1px at 12% 18%,#fff,transparent),radial-gradient(1px 1px at 38% 9%,#fff,transparent),radial-gradient(1.2px 1.2px at 63% 22%,#fff,transparent),
  radial-gradient(1px 1px at 82% 12%,#fff,transparent),radial-gradient(1px 1px at 91% 33%,#fff,transparent),radial-gradient(1px 1px at 24% 36%,#fff,transparent);animation:ssmFunkel 2.4s ease-in-out infinite alternate}
@keyframes ssmFunkel{from{opacity:.45}to{opacity:1}}
.ssm-pl{left:-20%;width:140%;height:60%;top:2%;filter:blur(6px);mix-blend-mode:screen;border-radius:50%}
.ssm-pl.a{background:radial-gradient(60% 40% at 50% 70%,rgba(60,255,160,.75),transparent 70%);animation:ssmWelle 5s ease-in-out infinite alternate}
.ssm-pl.b{background:radial-gradient(50% 35% at 40% 60%,rgba(170,110,255,.6),transparent 70%);animation:ssmWelle 6.5s ease-in-out infinite alternate-reverse}
@keyframes ssmWelle{0%{transform:translateX(-8%) skewX(-10deg) scaleY(.9)}100%{transform:translateX(8%) skewX(12deg) scaleY(1.15)}}
.ssm-berg{left:0;right:0;bottom:0;height:32%;background:#05080e;clip-path:polygon(0 60%,14% 30%,26% 55%,42% 12%,58% 50%,72% 26%,88% 52%,100% 34%,100% 100%,0 100%)}
.ssm-kugel{left:50%;top:44%;width:56%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle at 34% 30%,rgba(255,255,255,.35),rgba(170,210,255,.08) 45%,rgba(255,255,255,.18) 72%);
  box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.4);overflow:hidden}
.ssm-flocken{inset:-100% 0 0 0;background-image:radial-gradient(1.4px 1.4px at 20% 10%,#fff,transparent),radial-gradient(1.4px 1.4px at 60% 25%,#fff,transparent),radial-gradient(1.2px 1.2px at 80% 5%,#fff,transparent),
  radial-gradient(1.4px 1.4px at 35% 40%,#fff,transparent),radial-gradient(1.2px 1.2px at 70% 45%,#fff,transparent);background-size:100% 50%;animation:ssmSchnee 4s linear infinite}
@keyframes ssmSchnee{to{transform:translateY(50%)}}
.ssm-sockel{left:30%;width:40%;bottom:12%;height:10%;border-radius:4px 4px 8px 8px;background:linear-gradient(#c9a24a,#6b4f17)}
.ssm-bokeh{border-radius:50%;background:radial-gradient(circle,rgba(255,214,130,.55),rgba(255,214,130,.1) 60%,transparent 70%);animation:ssmSchweben 6s ease-in-out infinite alternate}
.ssm-bokeh.a{width:38%;aspect-ratio:1;left:8%;top:20%}.ssm-bokeh.b{width:26%;aspect-ratio:1;left:60%;top:8%;animation-delay:-2s}.ssm-bokeh.c{width:30%;aspect-ratio:1;left:52%;top:55%;animation-delay:-4s}
@keyframes ssmSchweben{to{transform:translate(8%,-12%) scale(1.1)}}
.ssm-glitzer{inset:0;background-image:radial-gradient(1.2px 1.2px at 15% 70%,#ffe9b0,transparent),radial-gradient(1.5px 1.5px at 45% 30%,#fff,transparent),radial-gradient(1.2px 1.2px at 75% 75%,#ffe9b0,transparent),
  radial-gradient(1.4px 1.4px at 88% 40%,#fff,transparent),radial-gradient(1.2px 1.2px at 30% 12%,#ffe9b0,transparent);animation:ssmFunkel .9s steps(2) infinite}
.ssm-frost{left:0;right:0;top:0;height:32%;background:linear-gradient(rgba(210,240,255,.55),transparent);clip-path:polygon(0 0,100% 0,100% 40%,92% 70%,84% 38%,74% 82%,64% 40%,52% 75%,42% 36%,30% 80%,20% 42%,9% 70%,0 40%)}
.ssm-glut{left:0;right:0;bottom:0;height:40%;background:linear-gradient(transparent,rgba(255,110,30,.55))}
.ssm-funken{inset:0 0 -100% 0;background-image:radial-gradient(1.6px 1.6px at 20% 60%,#ffcf7a,transparent),radial-gradient(1.3px 1.3px at 50% 80%,#ff9a3a,transparent),radial-gradient(1.6px 1.6px at 75% 70%,#ffd88a,transparent),
  radial-gradient(1.2px 1.2px at 35% 95%,#ff8a2a,transparent),radial-gradient(1.5px 1.5px at 85% 90%,#ffcf7a,transparent);background-size:100% 50%;animation:ssmSteigen 2.6s linear infinite}
@keyframes ssmSteigen{to{transform:translateY(-50%)}}
.ssm-stadt{left:0;right:0;bottom:0;height:52%;background:#070912;clip-path:polygon(0 40%,10% 40%,10% 20%,20% 20%,20% 55%,28% 55%,28% 5%,36% 5%,36% 35%,48% 35%,48% 15%,58% 15%,58% 45%,66% 45%,66% 0,74% 0,74% 30%,86% 30%,86% 50%,100% 50%,100% 100%,0 100%)}
.ssm-fenster{left:0;right:0;bottom:0;height:46%;background-image:radial-gradient(1.3px 1.6px at 31% 30%,#ffd27a 98%,transparent),radial-gradient(1.3px 1.6px at 70% 20%,#ffd27a 98%,transparent),radial-gradient(1.3px 1.6px at 52% 50%,#ffd27a 98%,transparent),
  radial-gradient(1.3px 1.6px at 14% 60%,#ffd27a 98%,transparent),radial-gradient(1.3px 1.6px at 78% 62%,#fff1c4 98%,transparent),radial-gradient(1.3px 1.6px at 40% 75%,#ffd27a 98%,transparent);animation:ssmFenster 3s steps(3) infinite}
@keyframes ssmFenster{0%{opacity:.35;filter:hue-rotate(0)}100%{opacity:1}}
.ssm-mond{width:12%;aspect-ratio:1;left:14%;top:12%;border-radius:50%;background:#fff6dc;box-shadow:0 0 12px rgba(255,240,200,.7)}
.ssm-kris{color:#cfe0ff;text-shadow:0 0 8px rgba(150,190,255,.9);animation:ssmDreh 9s linear infinite}
.ssm-kris.a{left:14%;top:18%;font-size:26px}.ssm-kris.b{left:60%;top:38%;font-size:34px;animation-duration:14s;animation-direction:reverse}.ssm-kris.c{left:36%;top:66%;font-size:18px}
@keyframes ssmDreh{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.ss-mini *{animation:none!important}}
/* Auftritt-Bereich „Eigener Hintergrund“ (Team und Gastgeber) */
.af-medium{min-height:72px;display:flex;align-items:center;margin:6px 0 10px}
.af-medium img,.af-medium video{max-height:160px;max-width:100%;border-radius:12px;display:block;background:#000}
