Rechtstexte, FinalFlux-Überarbeitung, neue Login-Optik, Konto-Löschung-Fix, BTTF-Farbrelaunch

- Rechtsseiten: Impressum-Platzhalter + echte Nutzungsbedingungen/AGB,
  Datenschutz (DSGVO) und Richtlinien; LegalController/ImpressumController,
  Footer app-weit verlinkt, Seiten als permitAll freigegeben.
- FinalFlux: 28 Themen / ~742 Fragen überarbeitet (plausible Distraktoren statt
  Dummy-Antworten, echte Erklärungen) + echte Lehrtexte je Seite;
  Netzwerktopologien mit Inline-SVG-Diagrammen (Stern/Bus/Ring/Mesh/Baum).
- Login/Registrierung als kombiniertes Dual-Panel (Slide-Overlay + Neon-Hover-
  Button), ausgelagert nach auth.css; Register-Duplikat -> /?registerError.
- Konto löschen repariert: @Transactional + Löschen von Spielständen,
  Achievements und Profilbild-Datei (DSGVO Art. 17). Impressum-Zurück-Link
  login-abhängig.
- App-weiter Farb-Relaunch auf "Back to the Future"-Palette: Feuer-Amber primär
  + Flux-Blau sekundär, warmer Glow; Dark/Light bleiben. Spiele-Feedback ohne
  Grün: richtig = Blau + Haken, falsch = Rot + Kreuz (neue Tokens
  --success/--danger/--secondary). Legacy-Cyan in style.css auf Variablen.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
AliceDarkest
2026-06-29 19:08:05 +02:00
parent fc98e5aad1
commit 34b050503d
94 changed files with 6712 additions and 4220 deletions
+21 -15
View File
@@ -1,25 +1,31 @@
/* ============================================================
MINDFLUX THEME – zentrale Design-Tokens + Komponenten
Dark = Grün-Neon | Light = heller Grund + Magenta-Glow
"Back to the Future"-Palette
Dark = Feuer-Amber + Bernstein-Glow | Light = warmes Weiß + Orange
Zweitakzent: Flux-Blau (#2D9CCE) | richtig = Blau, falsch = Rot
Umschaltung über <html data-theme="dark|light"> (siehe theme.js)
============================================================ */
:root, [data-theme="dark"] {
--bg:#06090a; --bg-glow: radial-gradient(900px 420px at 60% -10%, rgba(43,217,106,.10), transparent 60%);
--panel:#0c1110; --panel-2:#0e1513; --surface:#0b100e; --surface-2:#101713;
--border:#1a2520; --line:#16201b;
--border-accent:rgba(43,217,106,.45); --accent:#2bd96a; --accent-2:#6ef58f; --accent-ink:#04140a;
--text:#d7e0d9; --muted:#717c74; --heading:#ffffff; --danger:#ff5f6b;
--glow-s:rgba(43,217,106,.55); --glow-w:rgba(43,217,106,.16);
--bg:#0a0806; --bg-glow: radial-gradient(900px 420px at 60% -10%, rgba(240,168,26,.10), transparent 60%);
--panel:#13100b; --panel-2:#171209; --surface:#120f0a; --surface-2:#1b1610;
--border:#2a2117; --line:#221b12;
--border-accent:rgba(240,168,26,.45); --accent:#f0a81a; --accent-2:#f7dc11; --accent-ink:#1c1100;
--secondary:#2d9cce; --secondary-2:#5cc4e8;
--text:#ece3d2; --muted:#8c8170; --heading:#ffffff;
--success:#2d9cce; --danger:#ff5a5f;
--glow-s:rgba(240,168,26,.55); --glow-w:rgba(240,168,26,.16);
--g-soft:0 0 18px var(--glow-w);
}
[data-theme="light"] {
--bg:#f4eef3; --bg-glow: radial-gradient(900px 420px at 60% -10%, rgba(209,29,146,.10), transparent 60%);
--panel:#ffffff; --panel-2:#fbf6fa; --surface:#ffffff; --surface-2:#faf4f9;
--border:#e9dee8; --line:#efe6ee;
--border-accent:rgba(209,29,146,.40); --accent:#d11d92; --accent-2:#ff5bc0; --accent-ink:#ffffff;
--text:#3c2c39; --muted:#8a7d88; --heading:#1b1019; --danger:#d12942;
--glow-s:rgba(209,29,146,.40); --glow-w:rgba(209,29,146,.12);
--bg:#fbf6ec; --bg-glow: radial-gradient(900px 420px at 60% -10%, rgba(214,81,22,.10), transparent 60%);
--panel:#ffffff; --panel-2:#fdf7ea; --surface:#ffffff; --surface-2:#fbf4e6;
--border:#ece1cf; --line:#f1e8d8;
--border-accent:rgba(214,81,22,.40); --accent:#d65116; --accent-2:#e4801d; --accent-ink:#ffffff;
--secondary:#1f86b8; --secondary-2:#2d9cce;
--text:#33271c; --muted:#8a7d6c; --heading:#241a12;
--success:#1f86b8; --danger:#c61f2b;
--glow-s:rgba(214,81,22,.40); --glow-w:rgba(214,81,22,.12);
--g-soft:0 6px 18px var(--glow-w);
}
@@ -30,7 +36,7 @@ body {
background:var(--bg-glow), var(--bg); color:var(--text);
min-height:100vh; transition:background-color .35s ease,color .35s ease;
}
a { color:var(--accent); }
a { color:var(--secondary); }
::-webkit-scrollbar{width:10px;height:10px} ::-webkit-scrollbar-thumb{background:var(--line);border-radius:9px}
/* ===== App-Shell (Sidebar | Mitte | rechte Spalte) ===== */
@@ -142,7 +148,7 @@ a { color:var(--accent); }
.mf-table tr:hover td { background:var(--surface-2); }
/* ===== Badges ===== */
.mf-badge { font-size:.68rem; text-transform:uppercase; letter-spacing:.05em; padding:.18rem .5rem; border-radius:7px; background:var(--accent-dim,rgba(43,217,106,.12)); color:var(--accent); border:1px solid var(--border-accent); }
.mf-badge { font-size:.68rem; text-transform:uppercase; letter-spacing:.05em; padding:.18rem .5rem; border-radius:7px; background:color-mix(in srgb, var(--accent) 12%, transparent); color:var(--accent); border:1px solid var(--border-accent); }
/* ===== Standalone-Karte (Login/Auth, einzelne Inhaltsseiten) ===== */
.mf-center { display:flex; align-items:center; justify-content:center; min-height:100vh; padding:1.5rem; }