Tour-Korrekturen (Spotlight, Schritte) + 3a-Schalter nach Schritt 5
Deploy App / deploy (push) Successful in 1m1s

Tour:
- Spotlight neu aus vier fixed-Abdunkelflaechen um die Bounding-Box statt
  box-shadow -- funktioniert jetzt unabhaengig von z-index (sticky
  Matrix-Koepfe blieben hell) und overflow (im Matrix-Scrollbereich blieb
  fast alles hell); folgt dem Ziel per requestAnimationFrame
- Schritte ueberarbeitet: Zeitachse + Endvermoegen neu erklaert; der
  vormalige "Analysen"-Schritt beschreibt jetzt die obere Funktions-Leiste;
  neuer Schritt fuer das linke Menue (Analysen/Berichte/Effektive Werte);
  unsichtbare Ziele werden uebersprungen

Wizard:
- 3a-Schalter "Selbststaendig ohne PK" von Schritt 4 nach Schritt 5
  (er betrifft die Einzahlung / Sparraten-Verteilung)

SPEZIFIKATION 0.30 (9.24 neu gefasst). 267 Tests unveraendert.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-07-24 22:59:51 +02:00
parent efcc04c645
commit 96fdd00d5c
6 changed files with 188 additions and 121 deletions
+9 -12
View File
@@ -207,23 +207,20 @@ body {
}
/* Hervorhebung des aktuellen Tour-Ziels. */
/* Spotlight: Der riesige (9999px) erste Schatten dunkelt ALLES um das Element herum ab, das
Element selbst bleibt hell (der Schatten liegt ausserhalb). Der zweite Schatten ist der
pulsierende Akzent-Rahmen. So braucht es kein separates Overlay, und es gibt keine
Transparenz-Probleme. */
@keyframes tour-pulse-kf {
/* Tour-Spotlight: Der abgedunkelte Bereich entsteht aus vier fixed-Flächen UM das Ziel herum
(in Tour.tsx aus der Bounding-Box berechnet) -- das funktioniert unabhängig von z-index und
overflow. Hier nur der pulsierende Rahmen, der als eigene fixed-Fläche über dem Loch liegt. */
@keyframes tour-ring-kf {
0%, 100% {
box-shadow: 0 0 0 9999px rgba(0, 0, 0, 0.55), 0 0 0 3px color-mix(in srgb, var(--accent) 85%, transparent);
box-shadow: 0 0 0 3px color-mix(in srgb, var(--accent) 85%, transparent), 0 0 14px 2px color-mix(in srgb, var(--accent) 40%, transparent);
}
50% {
box-shadow: 0 0 0 9999px rgba(0, 0, 0, 0.55), 0 0 0 9px color-mix(in srgb, var(--accent) 45%, transparent);
box-shadow: 0 0 0 7px color-mix(in srgb, var(--accent) 50%, transparent), 0 0 22px 6px color-mix(in srgb, var(--accent) 25%, transparent);
}
}
.tour-highlight {
position: relative;
z-index: 40;
border-radius: 0.75rem;
animation: tour-pulse-kf 1.4s ease-in-out infinite;
.tour-ring {
border: 2px solid var(--accent);
animation: tour-ring-kf 1.4s ease-in-out infinite;
}
/* -------------------------------------------------------------------------