Initial commit: Kalei app — docs, mockups, logo, pitch deck

Complete project files including:
- 73 polished HTML mockup screens (onboarding, turn, mirror, lens, gallery, you, ritual, spectrum, modals, guide)
- Design system CSS with Inter font, jewel-tone palette, device frame scaling
- Canonical 6-blade kaleidoscope logo (soft-elegance-final)
- SVG asset library (fragments, icons, patterns, evidence wall, spectrum viz)
- Product docs, brand guidelines, technical architecture, build phases
- Pitch deck and cost projections
- Logo mockup iterations and finalists

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-22 14:55:22 +01:00
commit 38021c4633
168 changed files with 46724 additions and 0 deletions

View File

@@ -0,0 +1,234 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Kalei Logo Finalists</title>
<style>
* { margin: 0; padding: 0; box-sizing: border-box; }
body {
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
color: #e2e8f0;
min-height: 100vh;
}
.header {
text-align: center;
padding: 40px 20px 20px;
background: linear-gradient(135deg, #0f0a1a 0%, #1a1025 50%, #0f0a1a 100%);
}
.header h1 {
font-size: 2rem;
font-weight: 300;
letter-spacing: 0.15em;
background: linear-gradient(135deg, #C4B5FD, #93C5FD, #6EE7B7, #FDE68A, #FBCFE8);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
margin-bottom: 8px;
}
.header p {
font-size: 0.9rem;
color: #94a3b8;
font-weight: 300;
}
.comparison {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 0;
min-height: calc(100vh - 120px);
}
.panel {
display: flex;
flex-direction: column;
align-items: center;
padding: 30px 20px 40px;
position: relative;
}
.panel:first-child { border-right: 1px solid rgba(139,92,246,0.15); }
.panel h2 {
font-size: 1.1rem;
font-weight: 400;
letter-spacing: 0.08em;
margin-bottom: 6px;
}
.panel .subtitle {
font-size: 0.75rem;
color: #64748b;
margin-bottom: 20px;
text-align: center;
line-height: 1.5;
}
.logo-container {
width: 320px;
height: 320px;
border-radius: 24px;
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 24px;
position: relative;
}
.logo-container object {
width: 300px;
height: 300px;
}
.changes {
max-width: 300px;
font-size: 0.72rem;
color: #94a3b8;
line-height: 1.6;
text-align: left;
}
.changes strong {
color: #C4B5FD;
font-weight: 500;
display: block;
margin-bottom: 4px;
font-size: 0.75rem;
letter-spacing: 0.05em;
}
.changes ul {
list-style: none;
padding: 0;
}
.changes ul li {
padding-left: 14px;
position: relative;
margin-bottom: 3px;
}
.changes ul li::before {
content: '';
position: absolute;
left: 0;
top: 7px;
width: 5px;
height: 5px;
border-radius: 50%;
background: linear-gradient(135deg, #C4B5FD, #93C5FD);
opacity: 0.6;
}
/* Background toggle */
.bg-toggle {
position: fixed;
bottom: 20px;
right: 20px;
display: flex;
gap: 6px;
background: rgba(15,10,26,0.9);
border: 1px solid rgba(139,92,246,0.2);
border-radius: 10px;
padding: 6px;
z-index: 100;
}
.bg-toggle button {
border: none;
padding: 6px 14px;
border-radius: 7px;
cursor: pointer;
font-size: 0.7rem;
font-weight: 500;
letter-spacing: 0.04em;
transition: all 0.2s;
color: #94a3b8;
background: transparent;
}
.bg-toggle button.active {
background: rgba(139,92,246,0.25);
color: #C4B5FD;
}
body.bg-dark { background: #0f0a1a; }
body.bg-dark .panel { background: transparent; }
body.bg-mid { background: #1e1b2e; }
body.bg-mid .panel { background: transparent; }
body.bg-light { background: #f8fafc; }
body.bg-light .panel { background: transparent; }
body.bg-light .header { background: linear-gradient(135deg, #f1f5f9, #e2e8f0); }
body.bg-light .header p { color: #64748b; }
body.bg-light .panel h2 { color: #1e293b; }
body.bg-light .panel .subtitle { color: #64748b; }
body.bg-light .panel:first-child { border-right-color: rgba(139,92,246,0.1); }
body.bg-light .changes { color: #475569; }
body.bg-light .changes strong { color: #7c3aed; }
body.bg-white { background: #ffffff; }
body.bg-white .panel { background: transparent; }
body.bg-white .header { background: #ffffff; }
body.bg-white .header p { color: #94a3b8; }
body.bg-white .panel h2 { color: #0f172a; }
body.bg-white .panel .subtitle { color: #94a3b8; }
body.bg-white .panel:first-child { border-right-color: rgba(0,0,0,0.06); }
body.bg-white .changes { color: #64748b; }
body.bg-white .changes strong { color: #7c3aed; }
</style>
</head>
<body class="bg-dark">
<div class="header">
<h1>KALEI FINALISTS</h1>
<p>Refined from semi-finalist round &mdash; white circle removed, details polished</p>
</div>
<div class="comparison">
<div class="panel">
<h2>Glass Facets</h2>
<p class="subtitle">Bloom variant &mdash; stained-glass petals</p>
<div class="logo-container">
<object type="image/svg+xml" data="glass-facets-final.svg"></object>
</div>
<div class="changes">
<strong>Changes from semi-finalist:</strong>
<ul>
<li>Removed dashed white counter-rotating ring (r=100)</li>
<li>Removed dashed white inner core ring (r=22)</li>
<li>Added soft prismatic inter-petal color wash for depth</li>
<li>Inner core ring now uses prismatic gradient instead of white</li>
<li>Rotating dot ring now color-tinted per brand palette</li>
<li>Added petal tip glow points at each apex</li>
<li>Refined refraction lines (softer, rounded caps)</li>
<li>Enhanced specular highlights with tertiary pinpoint</li>
<li>Slightly larger core for better presence</li>
</ul>
</div>
</div>
<div class="panel">
<h2>Soft Elegance</h2>
<p class="subtitle">Starburst variant &mdash; crystalline blades</p>
<div class="logo-container">
<object type="image/svg+xml" data="soft-elegance-final.svg"></object>
</div>
<div class="changes">
<strong>Changes from semi-finalist:</strong>
<ul>
<li>Removed hard white stroke circle (r=50) around core</li>
<li>Replaced with organic prismatic glow transition</li>
<li>Edge shimmers now color-tinted per blade (not plain white)</li>
<li>Added blade tip glow points at outer edges</li>
<li>Added warm amber specular accent in core</li>
<li>Core-to-blade transition now smooth radial gradient</li>
<li>Prismatic halo ring refined for subtlety</li>
</ul>
</div>
</div>
</div>
<div class="bg-toggle">
<button class="active" onclick="setBg('dark')">Dark</button>
<button onclick="setBg('mid')">Mid</button>
<button onclick="setBg('light')">Light</button>
<button onclick="setBg('white')">White</button>
</div>
<script>
function setBg(mode) {
document.body.className = 'bg-' + mode;
document.querySelectorAll('.bg-toggle button').forEach(b => b.classList.remove('active'));
event.target.classList.add('active');
}
</script>
</body>
</html>

Binary file not shown.

View File

@@ -0,0 +1,219 @@
<svg viewBox="0 0 400 400" xmlns="http://www.w3.org/2000/svg" width="400" height="400">
<defs>
<!-- Petal gradients with animated color shifting -->
<linearGradient id="b1" x1="50%" y1="0%" x2="50%" y2="100%"><stop offset="0%" stop-color="#A78BFA"><animate attributeName="stop-color" values="#A78BFA;#C4B5FD;#A78BFA" dur="4s" repeatCount="indefinite"/></stop><stop offset="100%" stop-color="#6D28D9"><animate attributeName="stop-color" values="#6D28D9;#8B5CF6;#6D28D9" dur="4s" repeatCount="indefinite"/></stop></linearGradient>
<linearGradient id="b2" x1="50%" y1="0%" x2="50%" y2="100%"><stop offset="0%" stop-color="#60A5FA"><animate attributeName="stop-color" values="#60A5FA;#93C5FD;#60A5FA" dur="4.5s" repeatCount="indefinite"/></stop><stop offset="100%" stop-color="#1E40AF"><animate attributeName="stop-color" values="#1E40AF;#3B82F6;#1E40AF" dur="4.5s" repeatCount="indefinite"/></stop></linearGradient>
<linearGradient id="b3" x1="50%" y1="0%" x2="50%" y2="100%"><stop offset="0%" stop-color="#34D399"><animate attributeName="stop-color" values="#34D399;#6EE7B7;#34D399" dur="5s" repeatCount="indefinite"/></stop><stop offset="100%" stop-color="#065F46"><animate attributeName="stop-color" values="#065F46;#10B981;#065F46" dur="5s" repeatCount="indefinite"/></stop></linearGradient>
<linearGradient id="b4" x1="50%" y1="0%" x2="50%" y2="100%"><stop offset="0%" stop-color="#FCD34D"><animate attributeName="stop-color" values="#FCD34D;#FDE68A;#FCD34D" dur="4.2s" repeatCount="indefinite"/></stop><stop offset="100%" stop-color="#92400E"><animate attributeName="stop-color" values="#92400E;#D97706;#92400E" dur="4.2s" repeatCount="indefinite"/></stop></linearGradient>
<linearGradient id="b5" x1="50%" y1="0%" x2="50%" y2="100%"><stop offset="0%" stop-color="#F472B6"><animate attributeName="stop-color" values="#F472B6;#FBCFE8;#F472B6" dur="4.8s" repeatCount="indefinite"/></stop><stop offset="100%" stop-color="#9D174D"><animate attributeName="stop-color" values="#9D174D;#EC4899;#9D174D" dur="4.8s" repeatCount="indefinite"/></stop></linearGradient>
<linearGradient id="b6" x1="50%" y1="0%" x2="50%" y2="100%"><stop offset="0%" stop-color="#818CF8"><animate attributeName="stop-color" values="#818CF8;#A5B4FC;#818CF8" dur="4.3s" repeatCount="indefinite"/></stop><stop offset="100%" stop-color="#3730A3"><animate attributeName="stop-color" values="#3730A3;#6366F1;#3730A3" dur="4.3s" repeatCount="indefinite"/></stop></linearGradient>
<!-- Rotating prismatic gradient for core -->
<linearGradient id="prismatic" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" stop-color="#C4B5FD"><animate attributeName="stop-color" values="#C4B5FD;#93C5FD;#6EE7B7;#FDE68A;#FBCFE8;#C4B5FD" dur="6s" repeatCount="indefinite"/></stop>
<stop offset="25%" stop-color="#93C5FD"><animate attributeName="stop-color" values="#93C5FD;#6EE7B7;#FDE68A;#FBCFE8;#C4B5FD;#93C5FD" dur="6s" repeatCount="indefinite"/></stop>
<stop offset="50%" stop-color="#6EE7B7"><animate attributeName="stop-color" values="#6EE7B7;#FDE68A;#FBCFE8;#C4B5FD;#93C5FD;#6EE7B7" dur="6s" repeatCount="indefinite"/></stop>
<stop offset="75%" stop-color="#FDE68A"><animate attributeName="stop-color" values="#FDE68A;#FBCFE8;#C4B5FD;#93C5FD;#6EE7B7;#FDE68A" dur="6s" repeatCount="indefinite"/></stop>
<stop offset="100%" stop-color="#FBCFE8"><animate attributeName="stop-color" values="#FBCFE8;#C4B5FD;#93C5FD;#6EE7B7;#FDE68A;#FBCFE8" dur="6s" repeatCount="indefinite"/></stop>
</linearGradient>
<!-- Outer aura gradient -->
<radialGradient id="aura" cx="50%" cy="50%" r="50%">
<stop offset="0%" stop-color="#C4B5FD" stop-opacity="0.15"><animate attributeName="stop-color" values="#C4B5FD;#93C5FD;#6EE7B7;#FDE68A;#FBCFE8;#C4B5FD" dur="8s" repeatCount="indefinite"/></stop>
<stop offset="100%" stop-color="#C4B5FD" stop-opacity="0"/>
</radialGradient>
<!-- Inter-petal glow gradient (replaces dashed circle) -->
<radialGradient id="interPetalGlow" cx="50%" cy="50%" r="50%">
<stop offset="0%" stop-color="#C4B5FD" stop-opacity="0"/>
<stop offset="45%" stop-color="#A78BFA" stop-opacity="0.06"><animate attributeName="stop-color" values="#A78BFA;#60A5FA;#34D399;#FCD34D;#F472B6;#A78BFA" dur="10s" repeatCount="indefinite"/></stop>
<stop offset="65%" stop-color="#8B5CF6" stop-opacity="0.04"><animate attributeName="stop-color" values="#8B5CF6;#3B82F6;#10B981;#D97706;#EC4899;#8B5CF6" dur="10s" repeatCount="indefinite"/></stop>
<stop offset="100%" stop-color="#8B5CF6" stop-opacity="0"/>
</radialGradient>
<!-- Glow filters -->
<filter id="glow" x="-50%" y="-50%" width="200%" height="200%">
<feGaussianBlur stdDeviation="6" result="blur"/>
<feMerge><feMergeNode in="blur"/><feMergeNode in="SourceGraphic"/></feMerge>
</filter>
<filter id="softGlow" x="-80%" y="-80%" width="260%" height="260%">
<feGaussianBlur stdDeviation="14" result="blur"/>
<feMerge><feMergeNode in="blur"/><feMergeNode in="SourceGraphic"/></feMerge>
</filter>
<filter id="sparkle" x="-100%" y="-100%" width="300%" height="300%">
<feGaussianBlur stdDeviation="2" result="blur"/>
<feMerge><feMergeNode in="blur"/><feMergeNode in="blur"/><feMergeNode in="SourceGraphic"/></feMerge>
</filter>
<filter id="petalTipGlow" x="-200%" y="-200%" width="500%" height="500%">
<feGaussianBlur stdDeviation="4" result="blur"/>
<feMerge><feMergeNode in="blur"/><feMergeNode in="blur"/><feMergeNode in="SourceGraphic"/></feMerge>
</filter>
</defs>
<!-- Breathing outer aura -->
<circle cx="200" cy="200" r="180" fill="url(#aura)">
<animate attributeName="r" values="160;185;160" dur="5s" repeatCount="indefinite"/>
<animate attributeName="opacity" values="0.6;1;0.6" dur="5s" repeatCount="indefinite"/>
</circle>
<!-- Main logo group with very slow rotation -->
<g transform="translate(200,200)">
<animateTransform attributeName="transform" type="rotate" from="0 200 200" to="360 200 200" dur="120s" repeatCount="indefinite" additive="replace"/>
<animateTransform attributeName="transform" type="translate" values="200,200" dur="120s" repeatCount="indefinite" additive="sum"/>
<!-- Soft inter-petal color wash (replaces old dashed circle) -->
<circle r="120" fill="url(#interPetalGlow)">
<animate attributeName="opacity" values="0.5;0.9;0.5" dur="6s" repeatCount="indefinite"/>
</circle>
<!-- Petals with stained-glass outlines and tighter spacing -->
<path d="M 0,-24 Q 48,-98 28,-168 Q -8,-168 -38,-138 Q -28,-78 0,-24" fill="url(#b1)" opacity="0.9" stroke="#fff" stroke-width="0.6" stroke-opacity="0.2">
<animate attributeName="opacity" values="0.85;1;0.85" dur="4s" repeatCount="indefinite"/>
</path>
<path d="M 0,-24 Q 48,-98 28,-168 Q -8,-168 -38,-138 Q -28,-78 0,-24" fill="url(#b2)" opacity="0.87" transform="rotate(60)" stroke="#fff" stroke-width="0.6" stroke-opacity="0.2">
<animate attributeName="opacity" values="0.82;0.97;0.82" dur="4.5s" repeatCount="indefinite"/>
</path>
<path d="M 0,-24 Q 48,-98 28,-168 Q -8,-168 -38,-138 Q -28,-78 0,-24" fill="url(#b3)" opacity="0.87" transform="rotate(120)" stroke="#fff" stroke-width="0.6" stroke-opacity="0.2">
<animate attributeName="opacity" values="0.82;0.97;0.82" dur="5s" repeatCount="indefinite"/>
</path>
<path d="M 0,-24 Q 48,-98 28,-168 Q -8,-168 -38,-138 Q -28,-78 0,-24" fill="url(#b4)" opacity="0.87" transform="rotate(180)" stroke="#fff" stroke-width="0.6" stroke-opacity="0.2">
<animate attributeName="opacity" values="0.82;0.97;0.82" dur="4.2s" repeatCount="indefinite"/>
</path>
<path d="M 0,-24 Q 48,-98 28,-168 Q -8,-168 -38,-138 Q -28,-78 0,-24" fill="url(#b5)" opacity="0.87" transform="rotate(240)" stroke="#fff" stroke-width="0.6" stroke-opacity="0.2">
<animate attributeName="opacity" values="0.82;0.97;0.82" dur="4.8s" repeatCount="indefinite"/>
</path>
<path d="M 0,-24 Q 48,-98 28,-168 Q -8,-168 -38,-138 Q -28,-78 0,-24" fill="url(#b6)" opacity="0.82" transform="rotate(300)" stroke="#fff" stroke-width="0.6" stroke-opacity="0.2">
<animate attributeName="opacity" values="0.78;0.95;0.78" dur="4.3s" repeatCount="indefinite"/>
</path>
<!-- Petal tip glow points — soft colored lights at each petal apex -->
<g filter="url(#petalTipGlow)">
<circle cx="-5" cy="-153" r="3" fill="#C4B5FD" opacity="0">
<animate attributeName="opacity" values="0;0.5;0" dur="4s" repeatCount="indefinite"/>
</circle>
<circle cx="-5" cy="-153" r="3" fill="#93C5FD" opacity="0" transform="rotate(60)">
<animate attributeName="opacity" values="0;0.5;0" dur="4.5s" begin="0.5s" repeatCount="indefinite"/>
</circle>
<circle cx="-5" cy="-153" r="3" fill="#6EE7B7" opacity="0" transform="rotate(120)">
<animate attributeName="opacity" values="0;0.5;0" dur="5s" begin="1s" repeatCount="indefinite"/>
</circle>
<circle cx="-5" cy="-153" r="3" fill="#FDE68A" opacity="0" transform="rotate(180)">
<animate attributeName="opacity" values="0;0.5;0" dur="4.2s" begin="1.5s" repeatCount="indefinite"/>
</circle>
<circle cx="-5" cy="-153" r="3" fill="#FBCFE8" opacity="0" transform="rotate(240)">
<animate attributeName="opacity" values="0;0.5;0" dur="4.8s" begin="2s" repeatCount="indefinite"/>
</circle>
<circle cx="-5" cy="-153" r="3" fill="#A5B4FC" opacity="0" transform="rotate(300)">
<animate attributeName="opacity" values="0;0.5;0" dur="4.3s" begin="2.5s" repeatCount="indefinite"/>
</circle>
</g>
<!-- Subtle refraction light lines radiating from center (refined — softer, shorter) -->
<g opacity="0.18">
<line x1="0" y1="0" x2="0" y2="-140" stroke="#fff" stroke-width="0.4" stroke-linecap="round">
<animate attributeName="opacity" values="0.05;0.3;0.05" dur="3.5s" begin="0s" repeatCount="indefinite"/>
</line>
<line x1="0" y1="0" x2="0" y2="-140" stroke="#fff" stroke-width="0.4" stroke-linecap="round" transform="rotate(60)">
<animate attributeName="opacity" values="0.05;0.3;0.05" dur="3.5s" begin="0.58s" repeatCount="indefinite"/>
</line>
<line x1="0" y1="0" x2="0" y2="-140" stroke="#fff" stroke-width="0.4" stroke-linecap="round" transform="rotate(120)">
<animate attributeName="opacity" values="0.05;0.3;0.05" dur="3.5s" begin="1.16s" repeatCount="indefinite"/>
</line>
<line x1="0" y1="0" x2="0" y2="-140" stroke="#fff" stroke-width="0.4" stroke-linecap="round" transform="rotate(180)">
<animate attributeName="opacity" values="0.05;0.3;0.05" dur="3.5s" begin="1.75s" repeatCount="indefinite"/>
</line>
<line x1="0" y1="0" x2="0" y2="-140" stroke="#fff" stroke-width="0.4" stroke-linecap="round" transform="rotate(240)">
<animate attributeName="opacity" values="0.05;0.3;0.05" dur="3.5s" begin="2.33s" repeatCount="indefinite"/>
</line>
<line x1="0" y1="0" x2="0" y2="-140" stroke="#fff" stroke-width="0.4" stroke-linecap="round" transform="rotate(300)">
<animate attributeName="opacity" values="0.05;0.3;0.05" dur="3.5s" begin="2.91s" repeatCount="indefinite"/>
</line>
</g>
<!-- Pulsing prismatic core (slightly larger, richer glow) -->
<circle r="32" fill="url(#prismatic)" filter="url(#softGlow)">
<animate attributeName="r" values="30;35;30" dur="3s" repeatCount="indefinite"/>
</circle>
<!-- Core inner depth — soft concentric prismatic ring instead of dashed white circle -->
<circle r="22" fill="none" stroke="url(#prismatic)" stroke-width="1.2" opacity="0.25">
<animate attributeName="r" values="20;25;20" dur="3s" repeatCount="indefinite"/>
<animate attributeName="opacity" values="0.15;0.35;0.15" dur="3s" repeatCount="indefinite"/>
</circle>
<!-- Rotating inner dot ring (8 dots — now prismatic-tinted, not white) -->
<g>
<animateTransform attributeName="transform" type="rotate" from="0" to="-360" dur="15s" repeatCount="indefinite"/>
<circle cx="18" cy="0" r="1" fill="#C4B5FD" opacity="0.15">
<animate attributeName="opacity" values="0.1;0.3;0.1" dur="2.5s" begin="0s" repeatCount="indefinite"/>
</circle>
<circle cx="12.73" cy="12.73" r="1" fill="#93C5FD" opacity="0.15">
<animate attributeName="opacity" values="0.1;0.3;0.1" dur="2.5s" begin="0.625s" repeatCount="indefinite"/>
</circle>
<circle cx="0" cy="18" r="1" fill="#6EE7B7" opacity="0.15">
<animate attributeName="opacity" values="0.1;0.3;0.1" dur="2.5s" begin="1.25s" repeatCount="indefinite"/>
</circle>
<circle cx="-12.73" cy="12.73" r="1" fill="#FDE68A" opacity="0.15">
<animate attributeName="opacity" values="0.1;0.3;0.1" dur="2.5s" begin="1.875s" repeatCount="indefinite"/>
</circle>
<circle cx="-18" cy="0" r="1" fill="#FBCFE8" opacity="0.15">
<animate attributeName="opacity" values="0.1;0.3;0.1" dur="2.5s" begin="2.5s" repeatCount="indefinite"/>
</circle>
<circle cx="-12.73" cy="-12.73" r="1" fill="#A5B4FC" opacity="0.15">
<animate attributeName="opacity" values="0.1;0.3;0.1" dur="2.5s" begin="3.125s" repeatCount="indefinite"/>
</circle>
<circle cx="0" cy="-18" r="1" fill="#C4B5FD" opacity="0.15">
<animate attributeName="opacity" values="0.1;0.3;0.1" dur="2.5s" begin="3.75s" repeatCount="indefinite"/>
</circle>
<circle cx="12.73" cy="-12.73" r="1" fill="#93C5FD" opacity="0.15">
<animate attributeName="opacity" values="0.1;0.3;0.1" dur="2.5s" begin="4.375s" repeatCount="indefinite"/>
</circle>
</g>
<!-- Primary specular highlight on core (enhanced) -->
<circle cx="-7" cy="-9" r="9" fill="white" opacity="0.35">
<animate attributeName="opacity" values="0.25;0.5;0.25" dur="4s" repeatCount="indefinite"/>
<animate attributeName="r" values="8;10;8" dur="4s" repeatCount="indefinite"/>
</circle>
<!-- Secondary highlight -->
<circle cx="4" cy="6" r="4" fill="white" opacity="0.15">
<animate attributeName="opacity" values="0.1;0.25;0.1" dur="3.5s" repeatCount="indefinite"/>
</circle>
<!-- Tertiary pinpoint highlight (new — adds glass depth) -->
<circle cx="-3" cy="3" r="1.5" fill="white" opacity="0.1">
<animate attributeName="opacity" values="0.05;0.2;0.05" dur="2.8s" repeatCount="indefinite"/>
</circle>
<!-- Floating sparkle particles orbiting the logo -->
<g filter="url(#sparkle)">
<circle r="2" fill="#C4B5FD" opacity="0">
<animateMotion dur="8s" repeatCount="indefinite" path="M0,-140 A140,140 0 1 1 -0.1,-140"/>
<animate attributeName="opacity" values="0;0.8;0;0;0" dur="8s" repeatCount="indefinite"/>
<animate attributeName="r" values="1;2.5;1" dur="8s" repeatCount="indefinite"/>
</circle>
<circle r="1.5" fill="#93C5FD" opacity="0">
<animateMotion dur="10s" repeatCount="indefinite" path="M0,-120 A120,120 0 1 1 -0.1,-120"/>
<animate attributeName="opacity" values="0;0;0.7;0;0" dur="10s" repeatCount="indefinite"/>
<animate attributeName="r" values="1;2;1" dur="10s" repeatCount="indefinite"/>
</circle>
<circle r="1.5" fill="#6EE7B7" opacity="0">
<animateMotion dur="7s" repeatCount="indefinite" path="M0,-155 A155,155 0 1 1 -0.1,-155"/>
<animate attributeName="opacity" values="0;0.6;0;0.6;0" dur="7s" repeatCount="indefinite"/>
</circle>
<circle r="2" fill="#FDE68A" opacity="0">
<animateMotion dur="9s" repeatCount="indefinite" path="M0,-130 A130,130 0 1 0 -0.1,-130"/>
<animate attributeName="opacity" values="0;0;0;0.8;0" dur="9s" repeatCount="indefinite"/>
</circle>
<circle r="1.5" fill="#FBCFE8" opacity="0">
<animateMotion dur="11s" repeatCount="indefinite" path="M0,-145 A145,145 0 1 0 -0.1,-145"/>
<animate attributeName="opacity" values="0;0.7;0;0;0.5;0" dur="11s" repeatCount="indefinite"/>
</circle>
<circle r="1" fill="#fff" opacity="0">
<animateMotion dur="6s" repeatCount="indefinite" path="M0,-110 A110,110 0 1 1 -0.1,-110"/>
<animate attributeName="opacity" values="0;0.9;0;0;0" dur="6s" repeatCount="indefinite"/>
</circle>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 16 KiB

View File

@@ -0,0 +1,329 @@
<svg viewBox="0 0 400 400" xmlns="http://www.w3.org/2000/svg" width="400" height="400">
<defs>
<!-- Blade Gradients: Amethyst (0°) -->
<linearGradient id="g0_F1" x1="20" y1="17" x2="-30" y2="160" gradientUnits="userSpaceOnUse">
<stop offset="0%" stop-color="#A78BFA"><animate attributeName="stop-color" values="#A78BFA;#C4B5FD;#A78BFA" dur="5s" repeatCount="indefinite"/></stop>
<stop offset="100%" stop-color="#8B5CF6"><animate attributeName="stop-color" values="#8B5CF6;#A78BFA;#8B5CF6" dur="5s" repeatCount="indefinite"/></stop>
</linearGradient>
<linearGradient id="g0_F2" x1="40" y1="0" x2="140" y2="60" gradientUnits="userSpaceOnUse">
<stop offset="0%" stop-color="#8B5CF6"/><stop offset="100%" stop-color="#5B21B6"/>
</linearGradient>
<!-- Blade Gradients: Sapphire (60°) -->
<linearGradient id="g1_F1" x1="20" y1="17" x2="-30" y2="160" gradientUnits="userSpaceOnUse">
<stop offset="0%" stop-color="#93C5FD"><animate attributeName="stop-color" values="#93C5FD;#BFDBFE;#93C5FD" dur="5.5s" repeatCount="indefinite"/></stop>
<stop offset="100%" stop-color="#3B82F6"/>
</linearGradient>
<linearGradient id="g1_F2" x1="40" y1="0" x2="140" y2="60" gradientUnits="userSpaceOnUse">
<stop offset="0%" stop-color="#3B82F6"/><stop offset="100%" stop-color="#1D4ED8"/>
</linearGradient>
<!-- Blade Gradients: Emerald (120°) -->
<linearGradient id="g2_F1" x1="20" y1="17" x2="-30" y2="160" gradientUnits="userSpaceOnUse">
<stop offset="0%" stop-color="#6EE7B7"><animate attributeName="stop-color" values="#6EE7B7;#A7F3D0;#6EE7B7" dur="6s" repeatCount="indefinite"/></stop>
<stop offset="100%" stop-color="#10B981"/>
</linearGradient>
<linearGradient id="g2_F2" x1="40" y1="0" x2="140" y2="60" gradientUnits="userSpaceOnUse">
<stop offset="0%" stop-color="#10B981"/><stop offset="100%" stop-color="#047857"/>
</linearGradient>
<!-- Blade Gradients: Amber (180°) -->
<linearGradient id="g3_F1" x1="20" y1="17" x2="-30" y2="160" gradientUnits="userSpaceOnUse">
<stop offset="0%" stop-color="#FCD34D"><animate attributeName="stop-color" values="#FCD34D;#FDE68A;#FCD34D" dur="4.8s" repeatCount="indefinite"/></stop>
<stop offset="100%" stop-color="#F59E0B"/>
</linearGradient>
<linearGradient id="g3_F2" x1="40" y1="0" x2="140" y2="60" gradientUnits="userSpaceOnUse">
<stop offset="0%" stop-color="#F59E0B"/><stop offset="100%" stop-color="#B45309"/>
</linearGradient>
<!-- Blade Gradients: Rose (240°) -->
<linearGradient id="g4_F1" x1="20" y1="17" x2="-30" y2="160" gradientUnits="userSpaceOnUse">
<stop offset="0%" stop-color="#F9A8D4"><animate attributeName="stop-color" values="#F9A8D4;#FBCFE8;#F9A8D4" dur="5.2s" repeatCount="indefinite"/></stop>
<stop offset="100%" stop-color="#EC4899"/>
</linearGradient>
<linearGradient id="g4_F2" x1="40" y1="0" x2="140" y2="60" gradientUnits="userSpaceOnUse">
<stop offset="0%" stop-color="#EC4899"/><stop offset="100%" stop-color="#BE185D"/>
</linearGradient>
<!-- Blade Gradients: Indigo (300°) -->
<linearGradient id="g5_F1" x1="20" y1="17" x2="-30" y2="160" gradientUnits="userSpaceOnUse">
<stop offset="0%" stop-color="#A5B4FC"><animate attributeName="stop-color" values="#A5B4FC;#C7D2FE;#A5B4FC" dur="5.8s" repeatCount="indefinite"/></stop>
<stop offset="100%" stop-color="#6366F1"/>
</linearGradient>
<linearGradient id="g5_F2" x1="40" y1="0" x2="140" y2="60" gradientUnits="userSpaceOnUse">
<stop offset="0%" stop-color="#6366F1"/><stop offset="100%" stop-color="#4338CA"/>
</linearGradient>
<!-- Cycling Prismatic Core Gradient for halo -->
<radialGradient id="prismatic" cx="50%" cy="50%" r="50%">
<stop offset="0%" stop-color="#FFFFFF"><animate attributeName="stop-color" values="#FFFFFF;#E0D5FF;#FFFFFF" dur="5s" repeatCount="indefinite"/></stop>
<stop offset="40%" stop-color="#8B5CF6"><animate attributeName="stop-color" values="#8B5CF6;#3B82F6;#10B981;#F59E0B;#EC4899;#8B5CF6" dur="8s" repeatCount="indefinite"/></stop>
<stop offset="100%" stop-color="#8B5CF6" stop-opacity="0"><animate attributeName="stop-color" values="#8B5CF6;#3B82F6;#10B981;#F59E0B;#EC4899;#8B5CF6" dur="8s" repeatCount="indefinite"/></stop>
</radialGradient>
<!-- Outer aura for transparent bg -->
<radialGradient id="outerAura" cx="50%" cy="50%" r="50%">
<stop offset="0%" stop-color="#8B5CF6" stop-opacity="0.08"><animate attributeName="stop-color" values="#8B5CF6;#3B82F6;#10B981;#F59E0B;#EC4899;#8B5CF6" dur="10s" repeatCount="indefinite"/></stop>
<stop offset="70%" stop-color="#8B5CF6" stop-opacity="0.03"/>
<stop offset="100%" stop-color="#8B5CF6" stop-opacity="0"/>
</radialGradient>
<!-- Core transition glow (replaces hard white circle) -->
<radialGradient id="coreHalo" cx="50%" cy="50%" r="50%">
<stop offset="0%" stop-color="#FFFFFF" stop-opacity="0"/>
<stop offset="60%" stop-color="#FFFFFF" stop-opacity="0"/>
<stop offset="80%" stop-color="#C4B5FD" stop-opacity="0.08"><animate attributeName="stop-color" values="#C4B5FD;#93C5FD;#6EE7B7;#FDE68A;#FBCFE8;#C4B5FD" dur="8s" repeatCount="indefinite"/><animate attributeName="stop-opacity" values="0.05;0.12;0.05" dur="4s" repeatCount="indefinite"/></stop>
<stop offset="100%" stop-color="#8B5CF6" stop-opacity="0"/>
</radialGradient>
<!-- Filters -->
<filter id="glow" x="-50%" y="-50%" width="200%" height="200%">
<feGaussianBlur stdDeviation="6" result="blur"/>
<feMerge><feMergeNode in="blur"/><feMergeNode in="SourceGraphic"/></feMerge>
</filter>
<filter id="coreGlow" x="-50%" y="-50%" width="200%" height="200%">
<feGaussianBlur stdDeviation="12" result="blur"/>
<feMerge><feMergeNode in="blur"/><feMergeNode in="SourceGraphic"/></feMerge>
</filter>
<filter id="shimmer" x="-50%" y="-50%" width="200%" height="200%">
<feGaussianBlur stdDeviation="3" result="blur"/>
<feMerge><feMergeNode in="blur"/><feMergeNode in="blur"/><feMergeNode in="SourceGraphic"/></feMerge>
</filter>
<filter id="wideGlow" x="-80%" y="-80%" width="260%" height="260%">
<feGaussianBlur stdDeviation="18" result="blur"/>
<feMerge><feMergeNode in="blur"/><feMergeNode in="SourceGraphic"/></feMerge>
</filter>
<filter id="bladeTipGlow" x="-200%" y="-200%" width="500%" height="500%">
<feGaussianBlur stdDeviation="5" result="blur"/>
<feMerge><feMergeNode in="blur"/><feMergeNode in="blur"/><feMergeNode in="SourceGraphic"/></feMerge>
</filter>
</defs>
<!-- Subtle breathing aura -->
<circle cx="200" cy="200" r="190" fill="url(#outerAura)">
<animate attributeName="r" values="175;195;175" dur="6s" repeatCount="indefinite"/>
</circle>
<!-- The Iris — slow continuous rotation -->
<g transform="translate(200, 200)">
<animateTransform attributeName="transform" type="rotate" from="0" to="360" dur="90s" repeatCount="indefinite" additive="sum"/>
<!-- Amethyst Blade (0°) with shimmer -->
<g transform="rotate(0)" style="mix-blend-mode: screen;">
<path d="M 40,0 L -30,160 L 140,60 Z" fill="url(#g0_F2)" fill-opacity="0.80" stroke="#ffffff" stroke-width="0.5" stroke-opacity="0.4" stroke-linejoin="round">
<animate attributeName="fill-opacity" values="0.75;0.90;0.75" dur="4s" repeatCount="indefinite"/>
</path>
<path d="M 40,0 L 20,34.641 L -30,160 Z" fill="url(#g0_F1)" fill-opacity="0.95" stroke="#ffffff" stroke-width="0.5" stroke-opacity="0.6" stroke-linejoin="round">
<animate attributeName="fill-opacity" values="0.90;1;0.90" dur="4s" repeatCount="indefinite"/>
</path>
<!-- Edge shimmer with color tint -->
<line x1="40" y1="0" x2="-30" y2="160" stroke="#C4B5FD" stroke-width="1.2" opacity="0">
<animate attributeName="opacity" values="0;0.5;0" dur="5s" begin="0s" repeatCount="indefinite"/>
</line>
</g>
<!-- Sapphire Blade (60°) -->
<g transform="rotate(60)" style="mix-blend-mode: screen;">
<path d="M 40,0 L -30,160 L 140,60 Z" fill="url(#g1_F2)" fill-opacity="0.80" stroke="#ffffff" stroke-width="0.5" stroke-opacity="0.4" stroke-linejoin="round">
<animate attributeName="fill-opacity" values="0.75;0.90;0.75" dur="4.5s" repeatCount="indefinite"/>
</path>
<path d="M 40,0 L 20,34.641 L -30,160 Z" fill="url(#g1_F1)" fill-opacity="0.95" stroke="#ffffff" stroke-width="0.5" stroke-opacity="0.6" stroke-linejoin="round"/>
<line x1="40" y1="0" x2="-30" y2="160" stroke="#93C5FD" stroke-width="1.2" opacity="0">
<animate attributeName="opacity" values="0;0.5;0" dur="5s" begin="0.83s" repeatCount="indefinite"/>
</line>
</g>
<!-- Emerald Blade (120°) -->
<g transform="rotate(120)" style="mix-blend-mode: screen;">
<path d="M 40,0 L -30,160 L 140,60 Z" fill="url(#g2_F2)" fill-opacity="0.80" stroke="#ffffff" stroke-width="0.5" stroke-opacity="0.4" stroke-linejoin="round">
<animate attributeName="fill-opacity" values="0.75;0.90;0.75" dur="5s" repeatCount="indefinite"/>
</path>
<path d="M 40,0 L 20,34.641 L -30,160 Z" fill="url(#g2_F1)" fill-opacity="0.95" stroke="#ffffff" stroke-width="0.5" stroke-opacity="0.6" stroke-linejoin="round"/>
<line x1="40" y1="0" x2="-30" y2="160" stroke="#6EE7B7" stroke-width="1.2" opacity="0">
<animate attributeName="opacity" values="0;0.5;0" dur="5s" begin="1.66s" repeatCount="indefinite"/>
</line>
</g>
<!-- Amber Blade (180°) -->
<g transform="rotate(180)" style="mix-blend-mode: screen;">
<path d="M 40,0 L -30,160 L 140,60 Z" fill="url(#g3_F2)" fill-opacity="0.80" stroke="#ffffff" stroke-width="0.5" stroke-opacity="0.4" stroke-linejoin="round">
<animate attributeName="fill-opacity" values="0.75;0.90;0.75" dur="4.2s" repeatCount="indefinite"/>
</path>
<path d="M 40,0 L 20,34.641 L -30,160 Z" fill="url(#g3_F1)" fill-opacity="0.95" stroke="#ffffff" stroke-width="0.5" stroke-opacity="0.6" stroke-linejoin="round"/>
<line x1="40" y1="0" x2="-30" y2="160" stroke="#FDE68A" stroke-width="1.2" opacity="0">
<animate attributeName="opacity" values="0;0.5;0" dur="5s" begin="2.5s" repeatCount="indefinite"/>
</line>
</g>
<!-- Rose Blade (240°) -->
<g transform="rotate(240)" style="mix-blend-mode: screen;">
<path d="M 40,0 L -30,160 L 140,60 Z" fill="url(#g4_F2)" fill-opacity="0.80" stroke="#ffffff" stroke-width="0.5" stroke-opacity="0.4" stroke-linejoin="round">
<animate attributeName="fill-opacity" values="0.75;0.90;0.75" dur="4.8s" repeatCount="indefinite"/>
</path>
<path d="M 40,0 L 20,34.641 L -30,160 Z" fill="url(#g4_F1)" fill-opacity="0.95" stroke="#ffffff" stroke-width="0.5" stroke-opacity="0.6" stroke-linejoin="round"/>
<line x1="40" y1="0" x2="-30" y2="160" stroke="#FBCFE8" stroke-width="1.2" opacity="0">
<animate attributeName="opacity" values="0;0.5;0" dur="5s" begin="3.33s" repeatCount="indefinite"/>
</line>
</g>
<!-- Indigo Blade (300°) -->
<g transform="rotate(300)" style="mix-blend-mode: screen;">
<path d="M 40,0 L -30,160 L 140,60 Z" fill="url(#g5_F2)" fill-opacity="0.80" stroke="#ffffff" stroke-width="0.5" stroke-opacity="0.4" stroke-linejoin="round">
<animate attributeName="fill-opacity" values="0.75;0.90;0.75" dur="4.3s" repeatCount="indefinite"/>
</path>
<path d="M 40,0 L 20,34.641 L -30,160 Z" fill="url(#g5_F1)" fill-opacity="0.95" stroke="#ffffff" stroke-width="0.5" stroke-opacity="0.6" stroke-linejoin="round"/>
<line x1="40" y1="0" x2="-30" y2="160" stroke="#A5B4FC" stroke-width="1.2" opacity="0">
<animate attributeName="opacity" values="0;0.5;0" dur="5s" begin="4.16s" repeatCount="indefinite"/>
</line>
</g>
<!-- Blade tip glow points — soft colored pulses at outer tips of each blade -->
<g filter="url(#bladeTipGlow)">
<circle cx="-30" cy="160" r="4" fill="#A78BFA" opacity="0">
<animate attributeName="opacity" values="0;0.35;0" dur="4s" repeatCount="indefinite"/>
</circle>
<circle cx="-30" cy="160" r="4" fill="#3B82F6" opacity="0" transform="rotate(60)">
<animate attributeName="opacity" values="0;0.35;0" dur="4.5s" begin="0.5s" repeatCount="indefinite"/>
</circle>
<circle cx="-30" cy="160" r="4" fill="#10B981" opacity="0" transform="rotate(120)">
<animate attributeName="opacity" values="0;0.35;0" dur="5s" begin="1s" repeatCount="indefinite"/>
</circle>
<circle cx="-30" cy="160" r="4" fill="#F59E0B" opacity="0" transform="rotate(180)">
<animate attributeName="opacity" values="0;0.35;0" dur="4.2s" begin="1.5s" repeatCount="indefinite"/>
</circle>
<circle cx="-30" cy="160" r="4" fill="#EC4899" opacity="0" transform="rotate(240)">
<animate attributeName="opacity" values="0;0.35;0" dur="4.8s" begin="2s" repeatCount="indefinite"/>
</circle>
<circle cx="-30" cy="160" r="4" fill="#6366F1" opacity="0" transform="rotate(300)">
<animate attributeName="opacity" values="0;0.35;0" dur="4.3s" begin="2.5s" repeatCount="indefinite"/>
</circle>
</g>
<!-- THE KALEIDOSCOPE CORE - SOFT ELEGANCE FINALIST -->
<g filter="url(#coreGlow)">
<!-- Soft radial gradient halo with prismatic color cycling -->
<circle r="45" fill="url(#prismatic)" opacity="0.35">
<animate attributeName="opacity" values="0.25;0.45;0.25" dur="5s" repeatCount="indefinite"/>
</circle>
<!-- Organic core transition glow (replaces hard white circle) -->
<circle r="55" fill="url(#coreHalo)">
<animate attributeName="r" values="50;58;50" dur="4s" repeatCount="indefinite"/>
<animate attributeName="opacity" values="0.6;1;0.6" dur="4s" repeatCount="indefinite"/>
</circle>
<!-- Secondary set of 6 thicker colored rays (per brand colors) rotating slowly -->
<g opacity="0.35">
<animateTransform attributeName="transform" type="rotate" from="0" to="-360" dur="150s" repeatCount="indefinite"/>
<polygon points="0,0 2,35 -2,35" fill="#A78BFA">
<animate attributeName="opacity" values="0.20;0.40;0.20" dur="4s" repeatCount="indefinite"/>
</polygon>
<polygon points="0,0 2,35 -2,35" fill="#3B82F6" transform="rotate(60)">
<animate attributeName="opacity" values="0.20;0.40;0.20" dur="4.2s" begin="0.4s" repeatCount="indefinite"/>
</polygon>
<polygon points="0,0 2,35 -2,35" fill="#10B981" transform="rotate(120)">
<animate attributeName="opacity" values="0.20;0.40;0.20" dur="4.4s" begin="0.8s" repeatCount="indefinite"/>
</polygon>
<polygon points="0,0 2,35 -2,35" fill="#F59E0B" transform="rotate(180)">
<animate attributeName="opacity" values="0.20;0.40;0.20" dur="4s" begin="1.2s" repeatCount="indefinite"/>
</polygon>
<polygon points="0,0 2,35 -2,35" fill="#EC4899" transform="rotate(240)">
<animate attributeName="opacity" values="0.20;0.40;0.20" dur="4.3s" begin="1.6s" repeatCount="indefinite"/>
</polygon>
<polygon points="0,0 2,35 -2,35" fill="#6366F1" transform="rotate(300)">
<animate attributeName="opacity" values="0.20;0.40;0.20" dur="4.5s" begin="2s" repeatCount="indefinite"/>
</polygon>
</g>
<!-- Primary set of 12 thin white rays radiating outward, alternating lengths -->
<g opacity="0.3">
<animateTransform attributeName="transform" type="rotate" from="0" to="360" dur="75s" repeatCount="indefinite"/>
<line x1="0" y1="0" x2="0" y2="50" stroke="#ffffff" stroke-width="0.6" stroke-linecap="round" opacity="0">
<animate attributeName="opacity" values="0;0.30;0;0.15;0" dur="4s" begin="0s" repeatCount="indefinite"/>
</line>
<line x1="0" y1="0" x2="25" y2="43.301" stroke="#ffffff" stroke-width="0.4" stroke-linecap="round" opacity="0" transform="rotate(30)">
<animate attributeName="opacity" values="0;0.20;0;0.10;0" dur="3.5s" begin="0.3s" repeatCount="indefinite"/>
</line>
<line x1="0" y1="0" x2="0" y2="50" stroke="#ffffff" stroke-width="0.6" stroke-linecap="round" opacity="0" transform="rotate(60)">
<animate attributeName="opacity" values="0;0.30;0;0.15;0" dur="4.2s" begin="0.6s" repeatCount="indefinite"/>
</line>
<line x1="0" y1="0" x2="25" y2="43.301" stroke="#ffffff" stroke-width="0.4" stroke-linecap="round" opacity="0" transform="rotate(90)">
<animate attributeName="opacity" values="0;0.20;0;0.10;0" dur="3.8s" begin="0.9s" repeatCount="indefinite"/>
</line>
<line x1="0" y1="0" x2="0" y2="50" stroke="#ffffff" stroke-width="0.6" stroke-linecap="round" opacity="0" transform="rotate(120)">
<animate attributeName="opacity" values="0;0.30;0;0.15;0" dur="4s" begin="1.2s" repeatCount="indefinite"/>
</line>
<line x1="0" y1="0" x2="25" y2="43.301" stroke="#ffffff" stroke-width="0.4" stroke-linecap="round" opacity="0" transform="rotate(150)">
<animate attributeName="opacity" values="0;0.20;0;0.10;0" dur="3.6s" begin="1.5s" repeatCount="indefinite"/>
</line>
<line x1="0" y1="0" x2="0" y2="50" stroke="#ffffff" stroke-width="0.6" stroke-linecap="round" opacity="0" transform="rotate(180)">
<animate attributeName="opacity" values="0;0.30;0;0.15;0" dur="4.3s" begin="1.8s" repeatCount="indefinite"/>
</line>
<line x1="0" y1="0" x2="25" y2="43.301" stroke="#ffffff" stroke-width="0.4" stroke-linecap="round" opacity="0" transform="rotate(210)">
<animate attributeName="opacity" values="0;0.20;0;0.10;0" dur="3.7s" begin="2.1s" repeatCount="indefinite"/>
</line>
<line x1="0" y1="0" x2="0" y2="50" stroke="#ffffff" stroke-width="0.6" stroke-linecap="round" opacity="0" transform="rotate(240)">
<animate attributeName="opacity" values="0;0.30;0;0.15;0" dur="4.1s" begin="2.4s" repeatCount="indefinite"/>
</line>
<line x1="0" y1="0" x2="25" y2="43.301" stroke="#ffffff" stroke-width="0.4" stroke-linecap="round" opacity="0" transform="rotate(270)">
<animate attributeName="opacity" values="0;0.20;0;0.10;0" dur="3.9s" begin="2.7s" repeatCount="indefinite"/>
</line>
<line x1="0" y1="0" x2="0" y2="50" stroke="#ffffff" stroke-width="0.6" stroke-linecap="round" opacity="0" transform="rotate(300)">
<animate attributeName="opacity" values="0;0.30;0;0.15;0" dur="4s" begin="3s" repeatCount="indefinite"/>
</line>
<line x1="0" y1="0" x2="25" y2="43.301" stroke="#ffffff" stroke-width="0.4" stroke-linecap="round" opacity="0" transform="rotate(330)">
<animate attributeName="opacity" values="0;0.20;0;0.10;0" dur="3.8s" begin="3.3s" repeatCount="indefinite"/>
</line>
</g>
<!-- Central bright white-to-prismatic circle with heavy glow and pulsing -->
<circle r="12" fill="#ffffff" filter="url(#coreGlow)" opacity="0.95">
<animate attributeName="r" values="10;14;10" dur="3s" repeatCount="indefinite"/>
<animate attributeName="opacity" values="0.85;1;0.85" dur="3s" repeatCount="indefinite"/>
</circle>
<!-- Inner refraction crescent -->
<circle cx="-4" cy="-4" r="6" fill="#ffffff" opacity="0.2">
<animate attributeName="opacity" values="0.2;0.35;0.2" dur="4s" repeatCount="indefinite"/>
</circle>
<!-- Tiny sharp specular highlight off-center -->
<circle cx="3" cy="-3" r="1.5" fill="#ffffff" opacity="0.9" filter="url(#glow)">
<animate attributeName="opacity" values="0.6;1;0.6" dur="1.5s" repeatCount="indefinite"/>
</circle>
<!-- Additional warm specular (new — adds dimension) -->
<circle cx="-2" cy="5" r="2" fill="#FDE68A" opacity="0">
<animate attributeName="opacity" values="0;0.15;0" dur="5s" repeatCount="indefinite"/>
</circle>
</g>
<!-- Orbiting light motes -->
<g filter="url(#shimmer)">
<circle r="2" fill="#A78BFA" opacity="0">
<animateMotion dur="7s" repeatCount="indefinite" path="M0,-155 A155,155 0 1 1 -0.1,-155"/>
<animate attributeName="opacity" values="0;0.9;0;0;0" dur="7s" repeatCount="indefinite"/>
</circle>
<circle r="1.5" fill="#3B82F6" opacity="0">
<animateMotion dur="9s" repeatCount="indefinite" path="M0,-140 A140,140 0 1 0 -0.1,-140"/>
<animate attributeName="opacity" values="0;0;0.8;0;0" dur="9s" repeatCount="indefinite"/>
</circle>
<circle r="1.5" fill="#10B981" opacity="0">
<animateMotion dur="6s" repeatCount="indefinite" path="M0,-165 A165,165 0 1 1 -0.1,-165"/>
<animate attributeName="opacity" values="0;0.7;0;0.5;0" dur="6s" repeatCount="indefinite"/>
</circle>
<circle r="2" fill="#F59E0B" opacity="0">
<animateMotion dur="11s" repeatCount="indefinite" path="M0,-130 A130,130 0 1 0 -0.1,-130"/>
<animate attributeName="opacity" values="0;0;0;0.9;0" dur="11s" repeatCount="indefinite"/>
</circle>
<circle r="1" fill="#EC4899" opacity="0">
<animateMotion dur="8s" repeatCount="indefinite" path="M0,-150 A150,150 0 1 1 -0.1,-150"/>
<animate attributeName="opacity" values="0;0.8;0;0;0.6;0" dur="8s" repeatCount="indefinite"/>
</circle>
<circle r="1.5" fill="#fff" opacity="0">
<animateMotion dur="5s" repeatCount="indefinite" path="M0,-120 A120,120 0 1 0 -0.1,-120"/>
<animate attributeName="opacity" values="0;1;0;0;0" dur="5s" repeatCount="indefinite"/>
</circle>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 21 KiB