Creative Challenge
"A single tree on a tiny floating island under a surreal, colorful nebula-filled sky."
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 300 300">
<defs>
<!-- Sky gradient -->
<linearGradient id="skyGradient" x1="0%" y1="0%" x2="0%" y2="100%">
<stop offset="0%" stop-color="#0a0033" />
<stop offset="40%" stop-color="#1a0066" />
<stop offset="70%" stop-color="#4d0099" />
<stop offset="100%" stop-color="#660066" />
</linearGradient>
<!-- Nebula gradients -->
<radialGradient id="nebula1" cx="30%" cy="30%" r="70%" fx="25%" fy="25%">
<stop offset="0%" stop-color="#ff66ff" stop-opacity="0.7" />
<stop offset="40%" stop-color="#cc00cc" stop-opacity="0.4" />
<stop offset="100%" stop-color="#ff66ff" stop-opacity="0" />
</radialGradient>
<radialGradient id="nebula2" cx="70%" cy="20%" r="80%" fx="65%" fy="15%">
<stop offset="0%" stop-color="#66ffff" stop-opacity="0.6" />
<stop offset="30%" stop-color="#00aacc" stop-opacity="0.4" />
<stop offset="100%" stop-color="#66ffff" stop-opacity="0" />
</radialGradient>
<radialGradient id="nebula3" cx="40%" cy="60%" r="90%" fx="45%" fy="65%">
<stop offset="0%" stop-color="#ffcc00" stop-opacity="0.5" />
<stop offset="40%" stop-color="#ff6600" stop-opacity="0.3" />
<stop offset="100%" stop-color="#ffcc00" stop-opacity="0" />
</radialGradient>
<radialGradient id="nebula4" cx="75%" cy="75%" r="60%" fx="75%" fy="75%">
<stop offset="0%" stop-color="#00ff99" stop-opacity="0.6" />
<stop offset="60%" stop-color="#00aa77" stop-opacity="0.3" />
<stop offset="100%" stop-color="#00ff99" stop-opacity="0" />
</radialGradient>
<!-- Island gradients -->
<linearGradient id="islandTop" x1="0%" y1="0%" x2="100%" y2="0%">
<stop offset="0%" stop-color="#228833" />
<stop offset="50%" stop-color="#55aa55" />
<stop offset="100%" stop-color="#338844" />
</linearGradient>
<linearGradient id="islandSide" x1="0%" y1="0%" x2="0%" y2="100%">
<stop offset="0%" stop-color="#773300" />
<stop offset="60%" stop-color="#552200" />
<stop offset="100%" stop-color="#331100" />
</linearGradient>
<radialGradient id="islandGlow" cx="50%" cy="0%" r="100%" fx="50%" fy="0%">
<stop offset="0%" stop-color="#88ffaa" stop-opacity="0.3" />
<stop offset="100%" stop-color="#88ffaa" stop-opacity="0" />
</radialGradient>
<!-- Tree trunk gradient -->
<linearGradient id="trunkGradient" x1="0%" y1="0%" x2="100%" y2="0%">
<stop offset="0%" stop-color="#5d4037" />
<stop offset="50%" stop-color="#795548" />
<stop offset="100%" stop-color="#5d4037" />
</linearGradient>
<!-- Tree foliage gradients -->
<radialGradient id="foliageGradient1" cx="50%" cy="50%" r="50%" fx="40%" fy="40%">
<stop offset="0%" stop-color="#77dd77" />
<stop offset="90%" stop-color="#338833" />
</radialGradient>
<radialGradient id="foliageGradient2" cx="50%" cy="50%" r="50%" fx="40%" fy="40%">
<stop offset="0%" stop-color="#99ee99" />
<stop offset="90%" stop-color="#44aa44" />
</radialGradient>
<radialGradient id="foliageGradient3" cx="50%" cy="50%" r="50%" fx="40%" fy="40%">
<stop offset="0%" stop-color="#66cc66" />
<stop offset="90%" stop-color="#227722" />
</radialGradient>
<!-- Magic foliage gradient -->
<radialGradient id="magicFoliage" cx="50%" cy="50%" r="50%" fx="30%" fy="30%">
<stop offset="0%" stop-color="#aaffcc" />
<stop offset="100%" stop-color="#44aa66" />
</radialGradient>
<!-- Filters -->
<filter id="starGlow" x="-100%" y="-100%" width="300%" height="300%">
<feGaussianBlur stdDeviation="0.8" result="blur" />
<feComposite in="SourceGraphic" in2="blur" operator="over" />
</filter>
<filter id="particleGlow" x="-100%" y="-100%" width="300%" height="300%">
<feGaussianBlur stdDeviation="1.5" result="blur" />
<feComposite in="SourceGraphic" in2="blur" operator="over" />
</filter>
</defs>
<!-- Background sky -->
<rect x="0" y="0" width="300" height="300" fill="url(#skyGradient)" />
<!-- Nebulae -->
<ellipse cx="90" cy="90" rx="180" ry="150" fill="url(#nebula1)" />
<ellipse cx="210" cy="60" rx="200" ry="160" fill="url(#nebula2)" />
<ellipse cx="120" cy="180" rx="220" ry="180" fill="url(#nebula3)" />
<ellipse cx="230" cy="230" rx="150" ry="130" fill="url(#nebula4)" />
<!-- Dust clouds in nebula -->
<path d="M40,60 Q70,30 100,70 Q130,40 160,80 Q190,50 220,90 Q190,120 160,90 Q130,110 100,80 Q70,100 40,60 Z" fill="#7700aa" opacity="0.2" />
<path d="M80,220 Q110,190 140,230 Q170,200 200,240 Q230,210 260,250 Q230,280 200,250 Q170,270 140,240 Q110,260 80,220 Z" fill="#00aaaa" opacity="0.2" />
<!-- Stars background -->
<g id="distantStars" opacity="0.8">
<g fill="white">
<circle cx="10" cy="15" r="0.5" />
<circle cx="25" cy="8" r="0.4" />
<circle cx="40" cy="20" r="0.6" />
<circle cx="55" cy="12" r="0.5" />
<circle cx="70" cy="25" r="0.4" />
<circle cx="85" cy="7" r="0.6" />
<circle cx="100" cy="18" r="0.5" />
<circle cx="115" cy="22" r="0.4" />
<circle cx="130" cy="5" r="0.6" />
<circle cx="145" cy="15" r="0.5" />
<circle cx="160" cy="10" r="0.4" />
<circle cx="175" cy="20" r="0.6" />
<circle cx="190" cy="8" r="0.5" />
<circle cx="205" cy="22" r="0.4" />
<circle cx="220" cy="15" r="0.6" />
<circle cx="235" cy="7" r="0.5" />
<circle cx="250" cy="18" r="0.4" />
<circle cx="265" cy="12" r="0.6" />
<circle cx="280" cy="25" r="0.5" />
<circle cx="295" cy="5" r="0.4" />
<circle cx="15" cy="35" r="0.6" />
<circle cx="30" cy="42" r="0.5" />
<circle cx="45" cy="30" r="0.4" />
<circle cx="60" cy="38" r="0.6" />
<circle cx="75" cy="45" r="0.5" />
<circle cx="90" cy="33" r="0.4" />
<circle cx="105" cy="40" r="0.6" />
<circle cx="120" cy="48" r="0.5" />
<circle cx="135" cy="35" r="0.4" />
<circle cx="150" cy="43" r="0.6" />
<circle cx="165" cy="30" r="0.5" />
<circle cx="180" cy="38" r="0.4" />
<circle cx="195" cy="45" r="0.6" />
<circle cx="210" cy="32" r="0.5" />
<circle cx="225" cy="40" r="0.4" />
<circle cx="240" cy="47" r="0.6" />
<circle cx="255" cy="35" r="0.5" />
<circle cx="270" cy="42" r="0.4" />
<circle cx="285" cy="30" r="0.6" />
<circle cx="5" cy="65" r="0.5" />
<circle cx="25" cy="58" r="0.4" />
<circle cx="45" cy="70" r="0.6" />
<circle cx="65" cy="62" r="0.5" />
<circle cx="85" cy="55" r="0.4" />
<circle cx="105" cy="67" r="0.6" />
<circle cx="125" cy="60" r="0.5" />
<circle cx="145" cy="72" r="0.4" />
<circle cx="165" cy="65" r="0.6" />
<circle cx="185" cy="58" r="0.5" />
<circle cx="205" cy="70" r="0.4" />
<circle cx="225" cy="63" r="0.6" />
<circle cx="245" cy="55" r="0.5" />
<circle cx="265" cy="68" r="0.4" />
<circle cx="285" cy="60" r="0.6" />
<circle cx="10" cy="85" r="0.5" />
<circle cx="30" cy="95" r="0.4" />
<circle cx="50" cy="105" r="0.6" />
<circle cx="70" cy="115" r="0.5" />
<circle cx="90" cy="125" r="0.4" />
<circle cx="210" cy="85" r="0.5" />
<circle cx="230" cy="95" r="0.4" />
<circle cx="250" cy="105" r="0.6" />
<circle cx="270" cy="115" r="0.5" />
<circle cx="15" cy="145" r="0.6" />
<circle cx="35" cy="155" r="0.5" />
<circle cx="55" cy="165" r="0.4" />
<circle cx="75" cy="175" r="0.6" />
<circle cx="215" cy="145" r="0.6" />
<circle cx="235" cy="155" r="0.5" />
<circle cx="20" cy="195" r="0.5" />
<circle cx="40" cy="205" r="0.4" />
</g>
</g>
<!-- Bright stars with glow -->
<g id="brightStars" filter="url(#starGlow)">
<circle cx="20" cy="30" r="1.2" fill="white" />
<circle cx="50" cy="50" r="1" fill="#f0f8ff" />
<circle cx="80" cy="20" r="1.5" fill="white" />
<circle cx="120" cy="40" r="1.3" fill="#fffaf0" />
<circle cx="150" cy="25" r="1.1" fill="white" />
<circle cx="180" cy="60" r="1.6" fill="#f0f8ff" />
<circle cx="220" cy="35" r="1.2" fill="white" />
<circle cx="260" cy="45" r="1" fill="#fffaf0" />
<circle cx="270" cy="80" r="1.4" fill="white" />
<circle cx="240" cy="100" r="1" fill="#f0f8ff" />
<circle cx="200" cy="120" r="1.3" fill="white" />
<circle cx="30" cy="130" r="1.1" fill="#fffaf0" />
<circle cx="60" cy="150" r="1.5" fill="white" />
<circle cx="280" cy="160" r="1.2" fill="#f0f8ff" />
<circle cx="250" cy="200" r="1" fill="white" />
<circle cx="15" cy="190" r="1.4" fill="#fffaf0" />
</g>
<!-- Special stars with rays -->
<g>
<g transform="translate(40, 70)">
<circle r="1.5" fill="white" />
<path d="M0,-4 L0,4 M-4,0 L4,0" stroke="white" stroke-width="0.5" opacity="0.7" />
</g>
<g transform="translate(210, 90)">
<circle r="1.8" fill="white" />
<path d="M0,-5 L0,5 M-5,0 L5,0 M-3.5,-3.5 L3.5,3.5 M-3.5,3.5 L3.5,-3.5" stroke="white" stroke-width="0.5" opacity="0.7" />
</g>
<g transform="translate(100, 180)">
<circle r="1.6" fill="white" />
<path d="M0,-4.5 L0,4.5 M-4.5,0 L4.5,0 M-3,-3 L3,3 M-3,3 L3,-3" stroke="white" stroke-width="0.5" opacity="0.7" />
</g>
</g>
<!-- Island glow -->
<ellipse cx="150" cy="200" rx="80" ry="35" fill="url(#islandGlow)" />
<!-- Floating Island -->
<ellipse cx="150" cy="200" rx="60" ry="20" fill="url(#islandTop)" />
<path d="M90,200 C90,225 210,225 210,200 C210,210 90,210 90,200 Z" fill="url(#islandSide)" />
<!-- Island details: rocks -->
<path d="M110,193 C105,190 108,185 112,188 C115,185 120,187 118,191 C122,193 120,197 115,195 C112,198 106,195 110,193 Z" fill="#887766" />
<path d="M190,195 C185,192 188,186 193,190 C198,188 203,192 200,196 C205,199 200,203 195,199 C190,201 186,198 190,195 Z" fill="#776655" />
<path d="M170,188 C168,185 172,184 174,186 C176,184 178,186 177,188 C179,190 176,192 174,190 C171,192 168,190 170,188 Z" fill="#998877" />
<!-- Island details: grass tufts -->
<g id="grassTufts">
<path d="M100,195 Q105,185 110,195" stroke="#338833" stroke-width="1" fill="none" />
<path d="M105,197 Q110,187 115,197" stroke="#338833" stroke-width="1" fill="none" />
<path d="M125,192 Q130,182 135,192" stroke="#338833" stroke-width="1" fill="none" />
<path d="M130,194 Q135,184 140,194" stroke="#338833" stroke-width="1" fill="none" />
<path d="M160,192 Q165,182 170,192" stroke="#338833" stroke-width="1" fill="none" />
<path d="M165,194 Q170,184 175,194" stroke="#338833" stroke-width="1" fill="none" />
<path d="M185,195 Q190,185 195,195" stroke="#338833" stroke-width="1" fill="none" />
<path d="M190,197 Q195,187 200,197" stroke="#338833" stroke-width="1" fill="none" />
<!-- Small flowers -->
<g transform="translate(115, 190)">
<circle r="1.5" fill="#ffaacc" />
<circle r="0.5" fill="#ffff77" />
</g>
<g transform="translate(185, 192)">
<circle r="1.5" fill="#aaddff" />
<circle r="0.5" fill="#ffff77" />
</g>
<g transform="translate(140, 191)">
<circle r="1" fill="#ffaacc" />
<circle r="0.3" fill="#ffff77" />
</g>
</g>
<!-- Tree roots -->
<path d="M150,200 C138,203 130,206 125,205 C120,204 115,202 120,200" fill="none" stroke="#5d4037" stroke-width="1.5" />
<path d="M150,200 C162,203 170,206 175,205 C180,204 185,202 180,200" fill="none" stroke="#5d4037" stroke-width="1.5" />
<!-- Tree trunk -->
<path d="M150,200 C146,190 144,180 146,170 C148,160 143,150 148,140 C153,150 148,160 150,170 C152,180 154,190 150,200 Z" fill="url(#trunkGradient)" />
<!-- Tree branches -->
<path d="M148,140 C128,130 123,120 128,110 C133,120 138,125 148,140 Z" fill="url(#trunkGradient)" />
<path d="M148,140 C168,130 173,120 168,110 C163,120 158,125 148,140 Z" fill="url(#trunkGradient)" />
<path d="M148,160 C128,150 118,145 113,140 C123,145 133,150 148,160 Z" fill="url(#trunkGradient)" />
<path d="M148,160 C168,150 178,145 183,140 C173,145 163,150 148,160 Z" fill="url(#trunkGradient)" />
<!-- Small branch details -->
<path d="M128,110 C125,105 122,100 125,95" fill="none" stroke="#5d4037" stroke-width="1" />
<path d="M168,110 C171,105 174,100 171,95" fill="none" stroke="#5d4037" stroke-width="1" />
<path d="M113,140 C110,135 107,130 110,125" fill="none" stroke="#5d4037" stroke-width="1" />
<path d="M183,140 C186,135 189,130 186,125" fill="none" stroke="#5d4037" stroke-width="1" />
<!-- Tree foliage -->
<g id="treeLeaves">
<circle cx="125" cy="95" r="10" fill="url(#foliageGradient1)" />
<circle cx="171" cy="95" r="10" fill="url(#foliageGradient2)" />
<circle cx="110" cy="125" r="8" fill="url(#foliageGradient3)" />
<circle cx="186" cy="125" r="8" fill="url(#foliageGradient1)" />
<circle cx="128" cy="110" r="15" fill="url(#foliageGradient2)" />
<circle cx="168" cy="110" r="15" fill="url(#foliageGradient3)" />
<circle cx="113" cy="140" r="12" fill="url(#foliageGradient1)" />
<circle cx="183" cy="140" r="12" fill="url(#foliageGradient2)" />
<circle cx="148" cy="95" r="20" fill="url(#foliageGradient3)" />
</g>
<!-- Magical tree elements -->
<g id="magicalFoliage" opacity="0.5">
<circle cx="125" cy="95" r="12" fill="url(#magicFoliage)" opacity="0.4" />
<circle cx="171" cy="95" r="12" fill="url(#magicFoliage)" opacity="0.4" />
<circle cx="148" cy="95" r="22" fill="url(#magicFoliage)" opacity="0.5" />
</g>
<!-- Magical tree glowing orbs -->
<g id="treeOrbs" filter="url(#particleGlow)">
<circle cx="148" cy="95" r="3" fill="#aaffee" opacity="0.8" />
<circle cx="135" cy="105" r="2" fill="#ffaaff" opacity="0.7" />
<circle cx="160" cy="105" r="2" fill="#aaffaa" opacity="0.7" />
<circle cx="125" cy="115" r="1.5" fill="#ffeeaa" opacity="0.6" />
<circle cx="170" cy="115" r="1.5" fill="#aaeeff" opacity="0.6" />
</g>
<!-- Floating particles -->
<g id="magicalElements" filter="url(#particleGlow)">
<circle cx="140" cy="230" r="1.5" fill="#ffff66" opacity="0.8">
<animate attributeName="cy" from="230" to="220" dur="4s" repeatCount="indefinite" />
</circle>
<circle cx="160" cy="235" r="1.2" fill="#66ffff" opacity="0.8">
<animate attributeName="cy" from="235" to="225" dur="3.5s" repeatCount="indefinite" />
</circle>
<circle cx="120" cy="228" r="1" fill="#ff99ff" opacity="0.8">
<animate attributeName="cy" from="228" to="218" dur="5s" repeatCount="indefinite" />
</circle>
<circle cx="180" cy="232" r="1.3" fill="#99ff99" opacity="0.8">
<animate attributeName="cy" from="232" to="222" dur="4.5s" repeatCount="indefinite" />
</circle>
<circle cx="100" cy="225" r="1.1" fill="#ffcc66" opacity="0.8">
<animate attributeName="cy" from="225" to="215" dur="3.8s" repeatCount="indefinite" />
</circle>
<circle cx="200" cy="230" r="0.9" fill="#cc99ff" opacity="0.8">
<animate attributeName="cy" from="230" to="220" dur="4.2s" repeatCount="indefinite" />
</circle>
</g>
<!-- Energy tendrils connecting island to cosmos -->
<g id="energyTendrils" opacity="0.4">
<path d="M90,200 C60,170 80,130 50,100" fill="none" stroke="#aa77ff" stroke-width="1" opacity="0.3" />
<path d="M210,200 C240,170 220,130 250,100" fill="none" stroke="#77aaff" stroke-width="1" opacity="0.3" />
<path d="M120,210 C100,240 50,250 30,280" fill="none" stroke="#ffaa77" stroke-width="1" opacity="0.3" />
<path d="M180,210 C200,240 250,250 270,280" fill="none" stroke="#77ffaa" stroke-width="1" opacity="0.3" />
</g>
</svg>
<svg xmlns="http://www.w3.org/2000/svg" viewBox='0 0 300 300' xmlns='http://www.w3.org/2000/svg'>
<defs>
<!-- Sky Gradients -->
<radialGradient id="nebulaGrad1" cx="50%" cy="40%" r="70%" fx="40%" fy="30%">
<stop offset="0%" style="stop-color:#FF00FF; stop-opacity:0.8"/>
<stop offset="25%" style="stop-color:#C71585; stop-opacity:0.6"/>
<stop offset="60%" style="stop-color:#8A2BE2; stop-opacity:0.4"/>
<stop offset="100%" style="stop-color:#0A0014; stop-opacity:0.1"/>
</radialGradient>
<radialGradient id="nebulaGrad2" cx="25%" cy="60%" r="60%" fx="30%" fy="65%">
<stop offset="0%" style="stop-color:#00FFFF; stop-opacity:0.7"/>
<stop offset="30%" style="stop-color:#40E0D0; stop-opacity:0.5"/>
<stop offset="70%" style="stop-color:#1E90FF; stop-opacity:0.3"/>
<stop offset="100%" style="stop-color:#0A0014; stop-opacity:0.05"/>
</radialGradient>
<radialGradient id="nebulaGrad3" cx="75%" cy="55%" r="65%" fx="70%" fy="45%">
<stop offset="0%" style="stop-color:#FFFF00; stop-opacity:0.6"/>
<stop offset="35%" style="stop-color:#FFA500; stop-opacity:0.4"/>
<stop offset="75%" style="stop-color:#FF4500; stop-opacity:0.2"/>
<stop offset="100%" style="stop-color:#0A0014; stop-opacity:0.0"/>
</radialGradient>
<radialGradient id="nebulaBaseGrad" cx="50%" cy="50%" r="75%">
<stop offset="0%" style="stop-color:#301934; stop-opacity:0.6"/> <!-- Dark Amethyst -->
<stop offset="100%" style="stop-color:#0A0014; stop-opacity:0.3"/>
</radialGradient>
<!-- Island/Tree Gradients -->
<radialGradient id="islandRockGradRadial" cx="50%" cy="100%" r="100%" fx="50%" fy="120%">
<stop offset="0%" style="stop-color:#4A3B31;" /> <!-- bottom center, darkest -->
<stop offset="60%" style="stop-color:#5C4033;" />
<stop offset="100%" style="stop-color:#6B4F3A;" /> <!-- top edge, lighter -->
</radialGradient>
<linearGradient id="islandGrassGrad" x1="0%" y1="0%" x2="0%" y2="100%">
<stop offset="0%" style="stop-color:#66BB6A;" /> <!-- Lighter Green -->
<stop offset="100%" style="stop-color:#388E3C;" /> <!-- Darker Green -->
</linearGradient>
<linearGradient id="treeTrunkGrad" x1="20%" y1="0%" x2="80%" y2="0%">
<stop offset="0%" style="stop-color:#5A3E36;" />
<stop offset="50%" style="stop-color:#7B5E57;" />
<stop offset="100%" style="stop-color:#50302A;" />
</linearGradient>
<radialGradient id="treeLeavesGrad" cx="50%" cy="50%" r="50%">
<stop offset="0%" style="stop-color:#29E8D0; stop-opacity:0.95"/>
<stop offset="60%" style="stop-color:#1FBCA8; stop-opacity:0.8"/>
<stop offset="100%" style="stop-color:#159A86; stop-opacity:0.7"/>
</radialGradient>
<!-- Filters -->
<filter id="glow">
<feGaussianBlur stdDeviation="1.5" result="coloredBlur"/>
<feMerge>
<feMergeNode in="coloredBlur"/>
<feMergeNode in="SourceGraphic"/>
</feMerge>
</filter>
<filter id="subtleBlurTrunk">
<feGaussianBlur stdDeviation="1"/>
</filter>
<filter id="islandShadowBlur">
<feGaussianBlur stdDeviation="4"/>
</filter>
<filter id="filamentBlur">
<feGaussianBlur stdDeviation="2.5"/>
</filter>
</defs>
<!-- Background -->
<rect width="300" height="300" fill="#0A0014" />
<!-- Nebula Core -->
<rect width="300" height="300" fill="url(#nebulaBaseGrad)" opacity="0.7" />
<ellipse cx="150" cy="120" rx="220" ry="150" fill="url(#nebulaGrad1)" opacity="0.8" style="mix-blend-mode: screen;"/>
<ellipse cx="70" cy="190" rx="200" ry="130" fill="url(#nebulaGrad2)" opacity="0.75" style="mix-blend-mode: screen;"/>
<ellipse cx="230" cy="160" rx="190" ry="140" fill="url(#nebulaGrad3)" opacity="0.7" style="mix-blend-mode: screen;"/>
<!-- Nebula Filaments/Wisps -->
<path d="M 10 70 C 70 30, 160 110, 230 50 S 290 90, 260 160" stroke="#FFABF0" stroke-width="3" fill="none" opacity="0.4" filter="url(#filamentBlur)" style="mix-blend-mode: screen;"/>
<path d="M 290 230 C 210 290, 100 210, 40 190 S 10 110, 70 80" stroke="#87CEFA" stroke-width="2.5" fill="none" opacity="0.35" filter="url(#filamentBlur)" style="mix-blend-mode: screen;"/>
<!-- Stars -->
<g id="stars">
<circle cx="50" cy="70" r="1" fill="white" opacity="0.95"/><circle cx="60" cy="20" r="0.7" fill="#FFFACD" opacity="0.7"/>
<circle cx="100" cy="30" r="1.2" fill="white" opacity="1"/><circle cx="115" cy="85" r="0.6" fill="#FFFACD" opacity="0.8"/>
<circle cx="150" cy="90" r="0.8" fill="white" opacity="0.8"/><circle cx="160" cy="45" r="1" fill="#FFFACD" opacity="0.9"/>
<circle cx="200" cy="50" r="1.3" fill="white" opacity="0.9"/><circle cx="210" cy="110" r="0.5" fill="#FFFACD" opacity="0.7"/>
<circle cx="250" cy="120" r="0.9" fill="white" opacity="1"/><circle cx="265" cy="65" r="0.8" fill="#FFFACD" opacity="0.85"/>
<circle cx="30" cy="150" r="1" fill="white" opacity="0.7"/><circle cx="45" cy="200" r="0.7" fill="#FFFACD" opacity="0.9"/>
<circle cx="270" cy="20" r="0.8" fill="white" opacity="0.9"/><circle cx="280" cy="180" r="0.6" fill="#FFFACD" opacity="0.75"/>
<circle cx="180" cy="250" r="1.1" fill="white" opacity="0.8"/><circle cx="190" cy="210" r="0.9" fill="#FFFACD" opacity="0.9"/>
<circle cx="120" cy="220" r="0.7" fill="white" opacity="0.9"/><circle cx="135" cy="260" r="0.5" fill="#FFFACD" opacity="0.6"/>
<circle cx="220" cy="270" r="1.2" fill="white" opacity="0.7"/><circle cx="230" cy="230" r="0.8" fill="#FFFACD" opacity="0.8"/>
</g>
<!-- Island Shadow -->
<ellipse cx="150" cy="288" rx="60" ry="7" fill="black" opacity="0.3" filter="url(#islandShadowBlur)"/>
<!-- Floating Island and Tree Group -->
<g id="floatingIslandAndTree">
<g id="island" transform="translate(150, 240)"> <!-- Center of island mass at (150, 240) -->
<!-- Island Base (Rock) -->
<path d="M -60 0
Q -50 20 0 25
Q 50 20 60 0
C 55 28 30 45 0 45
C -30 45 -55 28 -60 0 Z"
fill="url(#islandRockGradRadial)" stroke="#3A2B23" stroke-width="0.7"/>
<!-- Roots/Tendrils -->
<path d="M -25 25 Q -30 38 -20 48 T -25 58" stroke="#4A3B31" stroke-width="2.5" fill="none" stroke-linecap="round"/>
<path d="M 0 45 Q 0 55 8 63 T -3 70" stroke="#4A3B31" stroke-width="2" fill="none" stroke-linecap="round"/>
<path d="M 22 25 Q 28 38 18 48 T 23 58" stroke="#4A3B31" stroke-width="2.5" fill="none" stroke-linecap="round"/>
<!-- Island Top (Grass) -->
<ellipse cx="0" cy="0.5" rx="60" ry="16" fill="url(#islandGrassGrad)"/>
</g>
<g id="tree" transform="translate(150, 225)"> <!-- Tree base at (150, 225) on top of grass -->
<!-- Trunk Shadow/Blur -->
<path d="M 0 0
Q -2 -15 2 -25
T 0 -45
M -2 -20 Q -10 -25 -15 -35 T -10 -45
M 2 -22 Q 10 -28 18 -38 T 12 -48
M 0 -45 Q -5 -55 -15 -60 M 0 -45 Q 5 -55 15 -60"
stroke="#3E2723" stroke-width="9" fill="none" stroke-linecap="round" stroke-linejoin="round" opacity="0.25" filter="url(#subtleBlurTrunk)"/>
<!-- Trunk and Branches -->
<path d="M 0 0
Q -2 -15 2 -25
T 0 -45
M -2 -20 Q -10 -25 -15 -35 T -10 -45
M 2 -22 Q 10 -28 18 -38 T 12 -48
M 0 -45 Q -5 -55 -15 -60 M 0 -45 Q 5 -55 15 -60"
stroke="url(#treeTrunkGrad)" stroke-width="7" fill="none" stroke-linecap="round" stroke-linejoin="round"/>
<!-- Leaves Canopy -->
<g transform="translate(0, -68)" filter="url(#glow)">
<ellipse cx="0" cy="0" rx="35" ry="25" fill="url(#treeLeavesGrad)" opacity="0.9"/>
<ellipse cx="-15" cy="-6" rx="28" ry="20" fill="url(#treeLeavesGrad)" opacity="0.8" transform="rotate(-15 -15 -6)"/>
<ellipse cx="15" cy="-6" rx="28" ry="20" fill="url(#treeLeavesGrad)" opacity="0.8" transform="rotate(15 15 -6)"/>
<ellipse cx="0" cy="-10" rx="24" ry="18" fill="url(#treeLeavesGrad)" opacity="0.95"/>
</g>
</g>
</g>
</svg>
Judge's Analysis
Player 1's submission is more creative and visually engaging, with the tree's playful, rounded design and the small floating island featuring detailed elements such as grass and flowers.
The nebula-filled sky in Player 1's image is more vibrant and surreal, better capturing the prompt's essence.
Player 2's image, while technically solid, feels less dynamic and lacks the intricate details present in Player 1's work.
These metrics analyze technical aspects of both SVG drawings. Look for differences that might explain the judge's decision. Use the "View Code" button above to see the SVG code for each drawing.
Shapes Metrics
The total number of shape elements (rect, circle, ellipse, line, polygon, polyline, path) in the SVG.
The number of rectangle elements (rect) in the SVG.
The number of circle elements (circle) in the SVG.
The number of ellipse elements (ellipse) in the SVG.
The number of line elements (line) in the SVG.
The number of polygon elements (polygon) in the SVG.
The number of path elements (path) in the SVG.
The number of group elements (g) in the SVG.
Visual Effects Metrics
The number of gradient definitions (linearGradient, radialGradient) in the SVG.
The number of pattern definitions (pattern) in the SVG.
The number of filter definitions (filter) in the SVG.
The number of mask definitions (mask) in the SVG.
The number of clipping path definitions (clipPath) in the SVG.
The number of elements with opacity attributes in the SVG.
The number of elements with stroke attributes in the SVG.
Colors Metrics
The number of unique colors used in the SVG.
Interactivity Metrics
The number of animation elements (animate, animateMotion, animateTransform, set) in the SVG.
The number of elements with transform attributes in the SVG.
Complexity Metrics
The total number of path commands in all path elements (M, L, C, Q, etc.) in the SVG.
The maximum nesting level of group elements (g) in the SVG.
The number of elements defined within the defs element in the SVG.
The number of use elements (use) in the SVG.
Text Metrics
The number of text elements (text) in the SVG.
AI Judging Process
Creativity
Originality, innovative use of shapes and unique approach to the prompt.
Prompt Adherence
How accurately the SVG captures the essence of the prompt.
Visual Appeal
Aesthetic quality including composition, color usage and overall visual impact.
How does judging work?
SVG drawings are converted to static PNG images for evaluation. The AI judge receives the original prompt and both images, then determines which drawing better fulfills the evaluation criteria without seeing animations, interactivity, or SVG code.
Similar Challenges
"Whimsical treehouse atop a giant snail in a glowing mushroom forest."
"A cactus wearing a bowtie in the middle of a snowy desert."
"Two robots playing chess under a giant mushroom in the rain."
"Flying fish leaping over a crescent moon at sunset."