/**
 * Repo Wave Glow — Mode CSS (M22.2)
 *
 * Ergänzt die Core-CSS um modus-spezifische Weichheit und Bloom-Wirkung.
 * Sowohl der WebGL- als auch der Canvas-2D-Pfad profitieren vom
 * blur-Filter, der aus --scene-blur abgeleitet wird.
 */

.scl-scene[data-scene-mode="repo_wave_glow"] .scl-scene__canvas,
.scl-scene[data-scene-mode="repo_wave_glow"] .scl-scene__canvas-gl {
	/* Der blur-Filter verstärkt die Glow-Wirkung, ohne zusätzlichen Draw-Call.
	   Er kombiniert sich mit dem additiv gezeichneten Core/Halo zu einem
	   volumetrischen Lichtströme-Look. Kappt den blur bei max. 14px, damit
	   sehr hohe --scene-blur-Werte das Motion-Feeling nicht erdrücken. */
	filter: blur(min(14px, calc(var(--scene-blur, 8px) * 0.75))) saturate(1.05);
}

/* Leichte Anreicherung des Base-Layers: der WebGL-Shader zeichnet bereits
   seinen eigenen depth-Gradient, aber unter Reduced-Motion bleibt der
   Base-Layer alleine sichtbar — deshalb darf er in diesem Modus etwas
   kräftiger wirken. */
.scl-scene[data-scene-mode="repo_wave_glow"] .scl-scene__base {
	opacity: 0.85;
}

/* Mobile: nochmal etwas Blur reduzieren für Fillrate-Entlastung. */
@media (max-width: 720px) {
	.scl-scene[data-scene-mode="repo_wave_glow"] .scl-scene__canvas,
	.scl-scene[data-scene-mode="repo_wave_glow"] .scl-scene__canvas-gl {
		filter: blur(min(8px, calc(var(--scene-blur, 8px) * 0.5))) saturate(1.02);
	}
}

/* Respekt vor reduced-motion: Canvas ausblenden, Base-Layer übernimmt.
   Die Regel in scenes-core.css blendet bereits das .scl-scene__canvas aus;
   wir ergänzen hier explizit das GL-Canvas. */
@media (prefers-reduced-motion: reduce) {
	.scl-scene[data-scene-mode="repo_wave_glow"] .scl-scene__canvas-gl {
		display: none !important;
	}
}
