Begrüßungs-Karte im Kundenkonto besonders gestaltet

Wandernder Mehrfarb-Verlaufsrand, sanfter Farbschein im Hintergrund, ein
Glanz-Sweep, der regelmäßig durchläuft, ein pulsierender Leucht-Ring um
den Avatar und zwei funkelnde -Sternchen — dieselbe Formsprache wie beim
"Meine Daten"-Knopf, nur größer und ruhiger für gute Lesbarkeit.
Respektiert prefers-reduced-motion.

Co-Authored-By: Claude Sonnet 5 <[email protected]>
This commit is contained in:
qcigano
2026-08-03 14:02:28 +02:00
co-authored by Claude Sonnet 5
parent 57183825a0
commit fac404190f
5 changed files with 69 additions and 0 deletions
+61
View File
@@ -1303,16 +1303,65 @@ a:focus-visible, button:focus-visible {
/* Persönlicher Kundenbereich (/konto/angemeldet/) — Ansicht für angemeldete Kund:innen mit
Bestellhistorie, Sendungsverfolgung, Wunschliste und Profildaten. Nutzt durchgehend die
bestehende Karten-/Badge-Optik der Seite, damit sich nichts fremd anfühlt. */
/* Die Begrüßungs-Karte ganz oben im Kundenbereich darf ruhig "die Spezielle" sein — wandernder
Mehrfarb-Verlaufsrand, ein sanfter Farbschein im Hintergrund, ein leiser Glanz-Sweep, der
regelmäßig durchläuft, ein pulsierender Leucht-Ring um den Avatar und zwei funkelnde
Sternchen. Dieselbe Formsprache wie beim "Meine Daten"-Knopf, nur größer und ruhiger, damit
der Text weiterhin gut lesbar bleibt. */
.account-head {
position: relative;
overflow: hidden;
display: flex;
align-items: flex-start;
justify-content: space-between;
gap: 1.5rem;
flex-wrap: wrap;
border: 1.5px solid transparent;
background:
linear-gradient(165deg, var(--c-anthracite-light), var(--c-anthracite)) padding-box,
linear-gradient(120deg, #9b7fd6, var(--c-accent), #e3b23c, var(--c-sale), #9b7fd6) border-box;
background-size: 100% 100%, 300% 100%;
animation: account-head-border-shift 9s ease-in-out infinite;
}
.account-head::before {
content: "";
position: absolute;
inset: 0;
background: radial-gradient(60% 90% at 10% 15%, color-mix(in srgb, #9b7fd6 22%, transparent), transparent 70%);
pointer-events: none;
}
.account-head::after {
content: "";
position: absolute;
top: 0;
left: -60%;
width: 35%;
height: 100%;
background: linear-gradient(100deg, transparent, rgba(255, 255, 255, 0.13), transparent);
transform: skewX(-18deg);
animation: account-head-shine 6s ease-in-out infinite;
pointer-events: none;
}
.account-head > * { position: relative; z-index: 1; }
.account-head-identity { display: flex; align-items: center; gap: 1rem; }
.account-head h1 { margin: 0.2rem 0 0.5rem; }
.account-head .lead { margin: 0; max-width: 52ch; }
.account-head-sparkle {
position: absolute;
font-size: 0.9rem;
pointer-events: none;
z-index: 1;
}
.account-head-sparkle-1 { top: 1.1rem; right: 8.5rem; animation: account-nav-sparkle-twinkle 2.6s ease-in-out infinite; }
.account-head-sparkle-2 { bottom: 1.3rem; right: 3.2rem; font-size: 0.7rem; animation: account-nav-sparkle-twinkle 3.4s ease-in-out infinite 0.6s; }
@keyframes account-head-border-shift {
0%, 100% { background-position: 0 0, 0% 50%; }
50% { background-position: 0 0, 100% 50%; }
}
@keyframes account-head-shine {
0% { left: -60%; }
35%, 100% { left: 130%; }
}
/* Großer Avatar (Kopfzeile des Dashboards + Profil-Bereich) — gleiches Prinzip wie der kleine
Avatar im Header-Konto-Menü (Foto als Hintergrundbild, sonst erster Buchstabe des Namens). */
.account-avatar-lg {
@@ -1330,6 +1379,18 @@ a:focus-visible, button:focus-visible {
font-weight: 800;
flex-shrink: 0;
}
.account-head-identity .account-avatar-lg {
animation: account-avatar-glow 3.6s ease-in-out infinite;
}
@keyframes account-avatar-glow {
0%, 100% { box-shadow: 0 0 0 3px color-mix(in srgb, var(--c-accent) 35%, transparent), 0 0 16px -4px color-mix(in srgb, #9b7fd6 55%, transparent); }
50% { box-shadow: 0 0 0 3px color-mix(in srgb, #e3b23c 40%, transparent), 0 0 22px -2px color-mix(in srgb, #e3b23c 65%, transparent); }
}
@media (prefers-reduced-motion: reduce) {
.account-head, .account-head::after, .account-head-sparkle-1, .account-head-sparkle-2, .account-head-identity .account-avatar-lg {
animation: none;
}
}
@media (max-width: 500px) { .account-head-identity { flex-wrap: wrap; } }
/* Kontobereich-Schnellnavigation: statt drei einzelner, loser Kästchen EINE zusammenhängende
Leiste direkt über den zugehörigen Abschnitten — jedes Segment ist ein echter Filter-Knopf: