.wrapper { display: flex; flex-direction: column; gap: 0.6rem; } .label { font-size: 0.72rem; font-weight: 400; color: var(--mauve-400); letter-spacing: 0.1em; text-transform: uppercase; } .canvas { border-radius: var(--radius-md); overflow: hidden; background: #2a1f2a; min-height: 100px; display: flex; align-items: center; justify-content: center; } .image { width: 100%; display: block; border-radius: var(--radius-md); } .generating { display: flex; flex-direction: column; align-items: center; gap: 1rem; padding: 1.5rem; } .waveform { display: flex; align-items: center; gap: 3px; height: 40px; } .bar { width: 3px; border-radius: 2px; background: var(--mauve-300); animation: wave 1s ease-in-out infinite alternate; height: 8px; } @keyframes wave { to { height: 36px; background: var(--gold); } } .genLabel { font-size: 0.78rem; color: var(--mauve-300); letter-spacing: 0.05em; } .caption { font-size: 0.68rem; color: var(--mauve-300); letter-spacing: 0.06em; text-align: center; }