Models 44

Nemotron 3 Ultra (free)

by NVIDIAReasoningClean
Open in new window

Running live in a sandboxed frame. Click inside it before using the keyboard.

How it went

Total time
1 min 33 s
Cost
$0
Output tokens
7,793
Spent thinking
0 tokens
Speed
84.1 tok/s
Console errors
0
First token after
698 ms
First visible text after
698 ms
Prompt tokens
366
Code size
18.3 KB
Finish reason
stop
Served by
Nvidia
Model id
nvidia/nemotron-3-ultra-550b-a55b:free
Reasoning sent
{"effort":"none"}
Max output
32,000 tokens
Generated
Nov 9, 2026

What it was asked

The prompt
“draw me an SVG of an astronaut cat skateboarding on the moon”
System prompt, sent with every prompt
You are generating a self-contained web demo. It will be rendered automatically in a sandboxed iframe and compared side by side with the output of other AI models given the exact same task.

Output rules:
- Reply with exactly ONE fenced code block containing the complete file: ```html (or ```svg when the task asks for an SVG). No text before or after the code block.
- Everything must be inline: CSS in <style>, JavaScript in <script>. No external files, images, fonts or network requests, except the CDN URLs explicitly allowed by the task.
- Do not use localStorage, sessionStorage, cookies, IndexedDB, alert(), confirm(), prompt() or window.open(): they are blocked in the sandbox and will throw.
- The page must look right in a 1280×800 viewport and adapt gracefully down to 375px wide. No horizontal scrollbar.
- Something meaningful must be visible on first paint: a screenshot is taken automatically about 3 seconds after load, without any interaction.
- Everything that makes the demo interesting must be visible within the first seconds: nothing hidden behind a high score, a later level or a long play session.
- Games must start in a self-playing demo mode (a simple AI plays) behind a "Click or press a key to start" message, so the game can be judged in action without playing.
- The iframe only receives keyboard events after the user clicks it: if the demo uses the keyboard, display a clear "Click or press a key to start" message.
- The code must run with zero errors in the console of the latest Chrome.

Code run-1.svg · 403 lines

<svg viewBox="0 0 800 600" xmlns="http://www.w3.org/2000/svg">
  <defs>
    <!-- Starfield -->
    <pattern id="stars" width="100" height="100" patternUnits="userSpaceOnUse">
      <circle cx="10" cy="20" r="1" fill="white" opacity="0.8"/>
      <circle cx="50" cy="80" r="0.5" fill="white" opacity="0.6"/>
      <circle cx="80" cy="30" r="1.2" fill="white" opacity="0.9"/>
      <circle cx="20" cy="60" r="0.8" fill="white" opacity="0.7"/>
      <circle cx="90" cy="10" r="1" fill="white" opacity="0.5"/>
      <circle cx="30" cy="90" r="0.6" fill="white" opacity="0.8"/>
      <circle cx="70" cy="70" r="1.5" fill="white" opacity="0.6"/>
      <circle cx="40" cy="40" r="0.7" fill="white" opacity="0.7"/>
    </pattern>
    
    <!-- Earth gradient -->
    <radialGradient id="earthGrad" cx="30%" cy="30%" r="70%">
      <stop offset="0%" stop-color="#4a90d9"/>
      <stop offset="50%" stop-color="#2b5aa0"/>
      <stop offset="100%" stop-color="#1a3a6e"/>
    </radialGradient>
    
    <!-- Moon surface gradient -->
    <linearGradient id="moonGrad" x1="0%" y1="0%" x2="0%" y2="100%">
      <stop offset="0%" stop-color="#e8e8e8"/>
      <stop offset="100%" stop-color="#a0a0a0"/>
    </linearGradient>
    
    <!-- Crater gradient -->
    <radialGradient id="craterGrad" cx="50%" cy="50%" r="50%">
      <stop offset="0%" stop-color="#b8b8b8"/>
      <stop offset="100%" stop-color="#888888"/>
    </radialGradient>
    
    <!-- Helmet glass -->
    <radialGradient id="helmetGlass" cx="40%" cy="30%" r="60%">
      <stop offset="0%" stop-color="#87ceeb" stop-opacity="0.3"/>
      <stop offset="50%" stop-color="#4a90d9" stop-opacity="0.4"/>
      <stop offset="100%" stop-color="#1a3a6e" stop-opacity="0.6"/>
    </radialGradient>
    
    <!-- Visor reflection -->
    <linearGradient id="visorReflection" x1="0%" y1="0%" x2="100%" y2="100%">
      <stop offset="0%" stop-color="white" stop-opacity="0.4"/>
      <stop offset="50%" stop-color="white" stop-opacity="0.1"/>
      <stop offset="100%" stop-color="white" stop-opacity="0"/>
    </linearGradient>
    
    <!-- Suit white -->
    <linearGradient id="suitWhite" x1="0%" y1="0%" x2="0%" y2="100%">
      <stop offset="0%" stop-color="#ffffff"/>
      <stop offset="50%" stop-color="#e8e8e8"/>
      <stop offset="100%" stop-color="#cccccc"/>
    </linearGradient>
    
    <!-- Suit shadow -->
    <linearGradient id="suitShadow" x1="0%" y1="0%" x2="0%" y2="100%">
      <stop offset="0%" stop-color="#d0d0d0"/>
      <stop offset="100%" stop-color="#909090"/>
    </linearGradient>
    
    <!-- Skateboard deck -->
    <linearGradient id="boardGrad" x1="0%" y1="0%" x2="0%" y2="100%">
      <stop offset="0%" stop-color="#2c2c2c"/>
      <stop offset="50%" stop-color="#1a1a1a"/>
      <stop offset="100%" stop-color="#0d0d0d"/>
    </linearGradient>
    
    <!-- Wheel gradient -->
    <radialGradient id="wheelGrad" cx="50%" cy="50%" r="50%">
      <stop offset="0%" stop-color="#444"/>
      <stop offset="70%" stop-color="#222"/>
      <stop offset="100%" stop-color="#111"/>
    </radialGradient>
    
    <!-- Gold visor coating -->
    <radialGradient id="goldVisor" cx="50%" cy="40%" r="60%">
      <stop offset="0%" stop-color="#ffd700" stop-opacity="0.6"/>
      <stop offset="50%" stop-color="#ff8c00" stop-opacity="0.4"/>
      <stop offset="100%" stop-color="#b8860b" stop-opacity="0.7"/>
    </radialGradient>
    
    <!-- Flag gradient -->
    <linearGradient id="flagGrad" x1="0%" y1="0%" x2="100%" y2="0%">
      <stop offset="0%" stop-color="#ff6b6b"/>
      <stop offset="100%" stop-color="#ee4444"/>
    </linearGradient>
    
    <!-- Glow filter -->
    <filter id="glow" x="-50%" y="-50%" width="200%" height="200%">
      <feGaussianBlur stdDeviation="4" result="blur"/>
      <feMerge>
        <feMergeNode in="blur"/>
        <feMergeNode in="SourceGraphic"/>
      </feMerge>
    </filter>
    
    <!-- Soft shadow filter -->
    <filter id="softShadow" x="-20%" y="-20%" width="140%" height="140%">
      <feGaussianBlur in="SourceAlpha" stdDeviation="3"/>
      <feOffset dx="2" dy="4" result="offsetblur"/>
      <feComponentTransfer>
        <feFuncA type="linear" slope="0.3"/>
      </feComponentTransfer>
      <feMerge>
        <feMergeNode in="offsetblur"/>
        <feMergeNode in="SourceGraphic"/>
      </feMerge>
    </filter>
  </defs>
  
  <!-- Background space -->
  <rect width="800" height="600" fill="#050515"/>
  <rect width="800" height="600" fill="url(#stars)"/>
  
  <!-- Earth in distance -->
  <circle cx="680" cy="100" r="80" fill="url(#earthGrad)" filter="url(#glow)"/>
  <ellipse cx="680" cy="100" rx="75" ry="78" fill="none" stroke="#4a90d9" stroke-width="1" opacity="0.3"/>
  <!-- Earth clouds -->
  <ellipse cx="660" cy="90" rx="15" ry="8" fill="white" opacity="0.4"/>
  <ellipse cx="700" cy="110" rx="20" ry="10" fill="white" opacity="0.3"/>
  <ellipse cx="690" cy="70" rx="12" ry="6" fill="white" opacity="0.35"/>
  
  <!-- Moon surface -->
  <ellipse cx="400" cy="580" rx="500" ry="150" fill="url(#moonGrad)"/>
  
  <!-- Moon craters (background) -->
  <g opacity="0.4">
    <ellipse cx="150" cy="500" rx="60" ry="20" fill="url(#craterGrad)"/>
    <ellipse cx="650" cy="480" rx="80" ry="25" fill="url(#craterGrad)"/>
    <ellipse cx="300" cy="520" rx="40" ry="15" fill="url(#craterGrad)"/>
    <ellipse cx="500" cy="510" rx="50" ry="18" fill="url(#craterGrad)"/>
  </g>
  
  <!-- Foreground craters -->
  <g opacity="0.6">
    <ellipse cx="100" cy="550" rx="45" ry="15" fill="url(#craterGrad)"/>
    <ellipse cx="700" cy="540" rx="55" ry="18" fill="url(#craterGrad)"/>
    <ellipse cx="400" cy="570" rx="100" ry="30" fill="url(#craterGrad)"/>
  </g>
  
  <!-- Moon rocks/pebbles -->
  <g fill="#999">
    <ellipse cx="200" cy="530" rx="8" ry="4"/>
    <ellipse cx="220" cy="525" rx="5" ry="3"/>
    <ellipse cx="350" cy="520" rx="12" ry="6"/>
    <ellipse cx="380" cy="535" rx="7" ry="4"/>
    <ellipse cx="450" cy="515" rx="10" ry="5"/>
    <ellipse cx="550" cy="525" rx="6" ry="3"/>
    <ellipse cx="600" cy="510" rx="9" ry="5"/>
  </g>
  
  <!-- Astronaut Cat Group -->
  <g transform="translate(400, 320)" filter="url(#softShadow)">
    <!-- Shadow on ground -->
    <ellipse cx="0" cy="140" rx="80" ry="15" fill="black" opacity="0.25"/>
    
    <!-- Skateboard -->
    <g transform="translate(0, 120)">
      <!-- Board deck -->
      <path d="M-70,0 Q-85,-8 -80,-15 Q-75,-20 -60,-20 L60,-20 Q75,-20 80,-15 Q85,-8 70,0 Q60,8 50,10 L-50,10 Q-60,8 -70,0" 
            fill="url(#boardGrad)" stroke="#333" stroke-width="2"/>
      <!-- Board top design -->
      <path d="M-65,-2 Q-75,-8 -70,-12 Q-60,-14 -50,-12 L50,-12 Q60,-14 70,-12 Q75,-8 65,-2 Q55,4 45,6 L-45,6 Q-55,4 -65,-2" 
            fill="#ff6b35" opacity="0.9"/>
      <!-- Cat face on board -->
      <circle cx="0" cy="-4" r="12" fill="#ff6b35" opacity="0.9"/>
      <ellipse cx="-5" cy="-7" rx="3" ry="2" fill="#1a1a1a"/>
      <ellipse cx="5" cy="-7" rx="3" ry="2" fill="#1a1a1a"/>
      <path d="M-4,0 Q0,4 4,0" stroke="#1a1a1a" stroke-width="1.5" fill="none" stroke-linecap="round"/>
      <path d="M-7,-4 Q-9,-6 -7,-8" stroke="#ff6b35" stroke-width="1.5" fill="none" stroke-linecap="round"/>
      <path d="M7,-4 Q9,-6 7,-8" stroke="#ff6b35" stroke-width="1.5" fill="none" stroke-linecap="round"/>
      
      <!-- Trucks -->
      <g fill="#444">
        <rect x="-75" y="-20" width="30" height="8" rx="2"/>
        <rect x="45" y="-20" width="30" height="8" rx="2"/>
      </g>
      
      <!-- Wheels -->
      <g>
        <!-- Front wheels -->
        <circle cx="-60" cy="-12" r="14" fill="url(#wheelGrad)" stroke="#555" stroke-width="2"/>
        <circle cx="-60" cy="-12" r="8" fill="#1a1a1a"/>
        <circle cx="60" cy="-12" r="14" fill="url(#wheelGrad)" stroke="#555" stroke-width="2"/>
        <circle cx="60" cy="-12" r="8" fill="#1a1a1a"/>
      </g>
      
      <!-- Speed lines -->
      <g stroke="#fff" stroke-width="2" opacity="0.4" stroke-linecap="round">
        <line x1="-120" y1="-5" x2="-100" y2="-5"/>
        <line x1="-120" y1="5" x2="-100" y2="5"/>
        <line x1="-120" y1="-15" x2="-100" y2="-15"/>
        <line x1="-120" y1="15" x2="-100" y2="15"/>
      </g>
    </g>
    
    <!-- Cat Body (in suit) -->
    <g transform="translate(0, -20)">
      <!-- Backpack / Life support -->
      <path d="M-45,-40 Q-60,-50 -60,-20 Q-60,10 -45,0 Q-50,-10 -45,-40" 
            fill="url(#suitWhite)" stroke="#aaa" stroke-width="1"/>
      <rect x="-58" y="-30" width="15" height="20" rx="3" fill="#333" stroke="#555" stroke-width="1"/>
      <rect x="-55" y="-25" width="9" height="10" rx="1" fill="#0f0" opacity="0.8"/>
      <rect x="-55" y="-12" width="9" height="10" rx="1" fill="#0f0" opacity="0.6"/>
      <circle cx="-50" cy="5" r="6" fill="#222" stroke="#444" stroke-width="1"/>
      <circle cx="-50" cy="5" r="3" fill="#ff6b35"/>
      
      <!-- Suit body -->
      <path d="M-40,-50 Q-50,-60 -50,-30 L-50,40 Q-45,55 -30,55 L30,55 Q45,55 50,40 L50,-30 Q50,-60 40,-50" 
            fill="url(#suitWhite)" stroke="#bbb" stroke-width="1.5"/>
      
      <!-- Suit details - chest panel -->
      <g transform="translate(0, -10)">
        <rect x="-20" y="-10" width="40" height="50" rx="5" fill="url(#suitShadow)" stroke="#aaa" stroke-width="1"/>
        <!-- Mission patch -->
        <circle cx="0" cy="5" r="15" fill="#002b5c" stroke="#ffd700" stroke-width="2"/>
        <text x="0" y="10" text-anchor="middle" font-family="Arial, sans-serif" font-size="10" font-weight="bold" fill="#ffd700">CAT</text>
        <text x="0" y="22" text-anchor="middle" font-family="Arial, sans-serif" font-size="8" fill="#fff">NASA</text>
        <!-- Buttons -->
        <circle cx="-12" cy="-20" r="4" fill="#ff4444" filter="url(#glow)"/>
        <circle cx="12" cy="-20" r="4" fill="#44ff44"/>
        <circle cx="-12" cy="0" r="4" fill="#ffaa00"/>
        <circle cx="12" cy="0" r="4" fill="#4488ff"/>
        <!-- Screen -->
        <rect x="-15" cy="18" width="30" height="12" rx="2" fill="#001122" stroke="#00ffff" stroke-width="1"/>
        <text x="0" y="27" text-anchor="middle" font-family="monospace" font-size="7" fill="#00ffff">O2: 100%</text>
      </g>
      
      <!-- Arms -->
      <g>
        <!-- Left arm -->
        <path d="M-40,-30 Q-60,-20 -70,-10 Q-75,0 -70,15 L-55,25 Q-45,20 -40,10" 
              fill="url(#suitWhite)" stroke="#aaa" stroke-width="1.5"/>
        <!-- Left glove -->
        <path d="M-70,-10 Q-80,-15 -85,-5 Q-88,5 -80,15 Q-75,20 -60,20 Q-55,15 -55,5 Q-55,-5 -60,-10" 
              fill="url(#suitWhite)" stroke="#aaa" stroke-width="1.5"/>
        <!-- Fingers on board -->
        <g fill="url(#suitWhite)" stroke="#aaa" stroke-width="1">
          <ellipse cx="-75" cy="18" rx="5" ry="10"/>
          <ellipse cx="-68" cy="18" rx="4" ry="10"/>
          <ellipse cx="-61" cy="18" rx="4" ry="10"/>
        </g>
        
        <!-- Right arm -->
        <path d="M40,-30 Q60,-20 70,-10 Q75,0 70,15 L55,25 Q45,20 40,10" 
              fill="url(#suitWhite)" stroke="#aaa" stroke-width="1.5"/>
        <!-- Right glove -->
        <path d="M70,-10 Q80,-15 85,-5 Q88,5 80,15 Q75,20 60,20 Q55,15 55,5 Q55,-5 60,-10" 
              fill="url(#suitWhite)" stroke="#aaa" stroke-width="1.5"/>
        <!-- Fingers up (peace sign) -->
        <g fill="url(#suitWhite)" stroke="#aaa" stroke-width="1">
          <ellipse cx="75" cy="10" rx="4" ry="14" transform="rotate(-20, 75, 10)"/>
          <ellipse cx="82" cy="8" rx="4" ry="14" transform="rotate(20, 82, 8)"/>
          <ellipse cx="68" cy="12" rx="4" ry="10" transform="rotate(-10, 68, 12)"/>
        </g>
      </g>
      
      <!-- Legs (bent for skateboarding) -->
      <g>
        <!-- Left leg -->
        <path d="M-20,55 Q-25,80 -20,105 Q-15,120 -5,120 L5,105 Q10,95 0,80 Q-5,70 -10,60" 
              fill="url(#suitWhite)" stroke="#aaa" stroke-width="1.5"/>
        <!-- Left boot -->
        <path d="M-10,120 Q-20,125 -20,115 Q-18,110 -8,110 Q-2,108 2,112 Q0,118 -5,120" 
              fill="#1a1a1a" stroke="#333" stroke-width="1.5"/>
        <ellipse cx="-3" cy="112" rx="10" ry="6" fill="#2a2a2a" stroke="#444" stroke-width="1"/>
        
        <!-- Right leg -->
        <path d="M20,55 Q25,80 20,105 Q15,120 5,120 L-5,105 Q-10,95 0,80 Q5,70 10,60" 
              fill="url(#suitWhite)" stroke="#aaa" stroke-width="1.5"/>
        <!-- Right boot -->
        <path d="M5,120 Q-5,125 -5,115 Q-3,110 7,110 Q13,108 -2,112 Q0,118 5,120" 
              fill="#1a1a1a" stroke="#333" stroke-width="1.5"/>
        <ellipse cx="3" cy="112" rx="10" ry="6" fill="#2a2a2a" stroke="#444" stroke-width="1"/>
      </g>
      
      <!-- Helmet -->
      <g>
        <!-- Helmet base -->
        <path d="M-50,-60 Q-60,-75 -60,-45 Q-60,-30 -45,-25 Q-40,-22 -30,-25 L30,-25 Q40,-22 45,-25 Q60,-30 60,-45 Q60,-75 50,-60 Q40,-65 30,-70 L-30,-70 Q-40,-65 -50,-60" 
              fill="url(#suitWhite)" stroke="#ccc" stroke-width="1.5"/>
        
        <!-- Neck ring -->
        <ellipse cx="0" cy="-25" rx="35" ry="8" fill="#ddd" stroke="#aaa" stroke-width="1"/>
        <ellipse cx="0" cy="-25" rx="32" ry="5" fill="url(#suitWhite)" stroke="#bbb" stroke-width="0.5"/>
        
        <!-- Visor/Glass -->
        <path d="M-45,-55 Q-55,-70 -55,-40 Q-55,-28 -40,-25 Q-30,-22 0,-23 Q30,-22 40,-25 Q55,-28 55,-40 Q55,-70 45,-55 Q35,-58 0,-62 Q-35,-58 -45,-55" 
              fill="url(#helmetGlass)" stroke="#4a90d9" stroke-width="1.5"/>
        
        <!-- Visor reflection -->
        <path d="M-30,-50 Q-20,-55 -10,-50 Q0,-45 10,-50 Q20,-55 30,-50 Q20,-40 0,-35 Q-20,-40 -30,-50" 
              fill="url(#visorReflection)"/>
        
        <!-- Gold coating tint -->
        <path d="M-45,-55 Q-55,-70 -55,-40 Q-55,-28 -40,-25 Q-30,-22 0,-23 Q30,-22 40,-25 Q55,-28 55,-40 Q55,-70 45,-55" 
              fill="url(#goldVisor)" opacity="0.3"/>
        
        <!-- Helmet details -->
        <!-- Side lights -->
        <circle cx="-50" cy="-45" r="4" fill="#ff4444" filter="url(#glow)"/>
        <circle cx="50" cy="-45" r="4" fill="#44ff44" filter="url(#glow)"/>
        <!-- Top vent -->
        <rect x="-8" y="-72" width="16" height="6" rx="2" fill="#333" stroke="#555" stroke-width="1"/>
        <line x1="-4" y1="-71" x2="-4" y2="-67" stroke="#666" stroke-width="1"/>
        <line x1="0" y1="-71" x2="0" y2="-67" stroke="#666" stroke-width="1"/>
        <line x1="4" y1="-71" x2="4" y2="-67" stroke="#666" stroke-width="1"/>
        
        <!-- Cat ears on helmet -->
        <g>
          <!-- Left ear -->
          <path d="M-35,-70 Q-45,-95 -35,-75 Q-30,-85 -25,-70" fill="url(#suitWhite)" stroke="#ccc" stroke-width="1.5"/>
          <path d="M-33,-70 Q-40,-88 -32,-73 Q-28,-82 -27,-70" fill="#ff9999" opacity="0.5"/>
          <!-- Right ear -->
          <path d="M35,-70 Q45,-95 35,-75 Q30,-85 25,-70" fill="url(#suitWhite)" stroke="#ccc" stroke-width="1.5"/>
          <path d="M33,-70 Q40,-88 32,-73 Q28,-82 27,-70" fill="#ff9999" opacity="0.5"/>
        </g>
        
        <!-- Antenna -->
        <path d="M40,-70 Q50,-90 45,-100" stroke="#aaa" stroke-width="3" fill="none" stroke-linecap="round"/>
        <circle cx="45" cy="-100" r="5" fill="#ff4444" filter="url(#glow)"/>
        <circle cx="45" cy="-100" r="3" fill="#ff8888"/>
      </g>
      
      <!-- Cat face visible in helmet -->
      <g transform="translate(0, -45)" opacity="0.9">
        <!-- Face base (fur) -->
        <ellipse cx="0" cy="0" rx="30" ry="28" fill="#ff9966"/>
        <!-- White muzzle -->
        <ellipse cx="0" cy="8" rx="18" ry="14" fill="#fff5e6"/>
        <!-- Eyes -->
        <g>
          <!-- Left eye -->
          <ellipse cx="-12" cy="-4" rx="8" ry="10" fill="#fff"/>
          <ellipse cx="-12" cy="-4" rx="5" ry="8" fill="#1a1a2e"/>
          <ellipse cx="-10" cy="-6" rx="2" ry="3" fill="#fff"/>
          <ellipse cx="-14" cy="-2" rx="1" ry="1.5" fill="#fff" opacity="0.7"/>
        </g>
        <g>
          <!-- Right eye -->
          <ellipse cx="12" cy="-4" rx="8" ry="10" fill="#fff"/>
          <ellipse cx="12" cy="-4" rx="5" ry="8" fill="#1a1a2e"/>
          <ellipse cx="14" cy="-6" rx="2" ry="3" fill="#fff"/>
          <ellipse cx="10" cy="-2" rx="1" ry="1.5" fill="#fff" opacity="0.7"/>
        </g>
        <!-- Nose -->
        <ellipse cx="0" cy="8" rx="3" ry="2" fill="#ff9999"/>
        <!-- Mouth -->
        <path d="M0,10 Q-5,14 -8,12 M0,10 Q5,14 8,12" stroke="#1a1a2e" stroke-width="1.5" fill="none" stroke-linecap="round"/>
        <!-- Whiskers -->
        <g stroke="#886644" stroke-width="0.8" opacity="0.6">
          <line x1="-18" y1="6" x2="-30" y2="2"/>
          <line x1="-18" y1="10" x2="-30" y2="10"/>
          <line x1="-18" y1="14" x2="-30" y2="18"/>
          <line x1="18" y1="6" x2="30" y2="2"/>
          <line x1="18" y1="10" x2="30" y2="10"/>
          <line x1="18" y1="14" x2="30" y2="18"/>
        </g>
        <!-- Ear tufts inside helmet -->
        <g fill="#ff9966">
          <path d="M-22,-25 Q-28,-40 -20,-30 Q-15,-35 -18,-25"/>
          <path d="M22,-25 Q28,-40 20,-30 Q15,-35 18,-25"/>
        </g>
      </g>
    </g>
    
    <!-- Floating flag -->
    <g transform="translate(80, -80)">
      <path d="M0,0 L0,-60" stroke="#fff" stroke-width="2" stroke-linecap="round"/>
      <path d="M0,-60 Q30,-65 40,-50 Q45,-45 40,-35 Q30,-30 0,-35 Q-10,-40 0,-50" 
            fill="url(#flagGrad)" stroke="#cc3333" stroke-width="1"/>
      <text x="20" y="-48" text-anchor="middle" font-family="Arial, sans-serif" font-size="10" font-weight="bold" fill="white" transform="rotate(-15, 20, -48)">🐱</text>
    </g>
  </g>
  
  <!-- Floating moon dust particles -->
  <g fill="white" opacity="0.6">
    <circle cx="350" cy="300" r="1.5"/>
    <circle cx="450" cy="280" r="1"/>
    <circle cx="380" cy="250" r="2"/>
    <circle cx="420" cy="320" r="1.2"/>
    <circle cx="360" cy="350" r="0.8"/>
    <circle cx="480" cy="300" r="1.5"/>
    <circle cx="320" cy="330" r="1"/>
    <circle cx="500" cy="270" r="1.8"/>
  </g>
  
  <!-- Distant stars twinkle -->
  <g fill="white">
    <circle cx="100" cy="50" r="1.5" opacity="0.9">
      <animate attributeName="opacity" values="0.3;1;0.3" dur="2s" repeatCount="indefinite"/>
    </circle>
    <circle cx="700" cy="200" r="1" opacity="0.7">
      <animate attributeName="opacity" values="0.2;0.8;0.2" dur="3s" repeatCount="indefinite"/>
    </circle>
    <circle cx="150" cy="150" r="2" opacity="0.8">
      <animate attributeName="opacity" values="0.4;1;0.4" dur="2.5s" repeatCount="indefinite"/>
    </circle>
    <circle cx="650" cy="80" r="1.2" opacity="0.6">
      <animate attributeName="opacity" values="0.2;0.9;0.2" dur="1.8s" repeatCount="indefinite"/>
    </circle>
  </g>
</svg>