/* Audio gallery: luminous visual identities without autoplaying sound. */
.preview.wave,.preview.record { background:#282138; color:#faf5ff; padding:24px; }
.preview.wave { background:radial-gradient(ellipse at 50% 20%,#8b60bc60,transparent 70%),linear-gradient(135deg,#332448,#211d30); }
.preview.wave::before,.preview.record::before { content:'ЗВУК / APIRA'; position:absolute; top:19px; left:24px; font-size:9px; letter-spacing:2px; color:#d2c0eb; z-index:2; }
.preview.wave::after,.preview.record::after { content:''; position:absolute; width:140px; height:140px; right:-50px; top:-65px; border-radius:50%; border:1px solid #ffffff12; box-shadow:0 0 0 20px #ffffff04,0 0 0 40px #ffffff03; }
.preview.wave .wave-bars { top:47px; left:26px; right:26px; height:108px; gap:5px; display:flex; justify-content:center; align-items:center; }
.preview.wave .wave-bar { flex:1; max-width:6px; min-width:2px; border-radius:10px; background:linear-gradient(0deg,#9973e7,#e6c5ff 52%,#baf1e1); box-shadow:0 0 12px #b988ed40; transform-origin:center; animation:apira-equalizer 1.9s ease-in-out infinite alternate; animation-play-state:paused; }
.preview.wave .wave-bar:nth-child(3n) { animation-delay:-.7s; }
.preview.wave .wave-bar:nth-child(3n + 1) { animation-delay:-1.3s; }
.preview.wave .preview-copy,.preview.record .preview-copy { position:absolute; left:24px; right:24px; bottom:20px; font-size:15px; line-height:1.45; max-width:100%; font-weight:500; color:#faf5ff; text-align:left; }
.preview.record { background:radial-gradient(ellipse at 50% 45%,#86508b60,transparent 65%),linear-gradient(135deg,#352540,#222033); display:block; }
.preview.record .record-disc { position:absolute; left:0; right:0; top:39px; width:100%; height:128px; border-radius:0; background:transparent url('/assets/apira-audio-flow.svg') center/100% 100% no-repeat; box-shadow:none; font-size:0; color:transparent; animation:apira-wave-glow 2.5s ease-in-out infinite alternate; animation-play-state:paused; }
.preview.record .record-disc::before,.preview.record .record-disc::after,.preview.record .record-disc span { display:none; }
.scenario-card[data-scenario-id="transcript"] .preview.wave { background:radial-gradient(ellipse at 55% 20%,#4d8c8c50,transparent 70%),linear-gradient(135deg,#233c3b,#212e37); }
.scenario-card[data-scenario-id="transcript"] .preview.wave::before { content:'ГОЛОС → ТЕКСТ'; color:#bde1d5; }
.scenario-card[data-scenario-id="transcript"] .wave-bar { background:linear-gradient(0deg,#7cb7bc,#cbf2df 52%,#b4d6f4); box-shadow:0 0 12px #a1e6ce30; }
.scenario-card[data-scenario-id="song"] .preview.record::before { content:'ВАША ПЕРВАЯ ПЕСНЯ'; }
.scenario-card[data-scenario-id="instrumental"] .preview.record { background:radial-gradient(ellipse at 45% 45%,#4b73a750,transparent 70%),linear-gradient(135deg,#242f43,#232135); }
.scenario-card[data-scenario-id="instrumental"] .preview.record::before { content:'В ВАШЕМ РИТМЕ'; color:#bdcfea; }
.scenario-card[data-scenario-id="instrumental"] .record-disc { transform:scaleY(.65); }
.scenario-open:hover .wave-bar,.scenario-open:focus-visible .wave-bar,.scenario-open:hover .record-disc,.scenario-open:focus-visible .record-disc { animation-play-state:running; }
.example-dialog .preview.wave .wave-bars { top:55px; height:150px; }
.example-dialog .preview.record .record-disc { top:60px; height:190px; }
@keyframes apira-equalizer { from{transform:scaleY(.65)}to{transform:scaleY(1.12)} }
@keyframes apira-wave-glow { from{opacity:.7}to{opacity:1} }
@media(max-width:680px) {
 .preview.wave::before,.preview.record::before { top:14px; left:16px; font-size:8px; letter-spacing:1.2px; }
 .preview.wave .wave-bars { top:36px; left:16px; right:16px; height:75px; gap:3px; }
 .preview.wave .preview-copy,.preview.record .preview-copy { left:16px; right:16px; bottom:14px; font-size:11px; line-height:1.4; }
 .preview.record .record-disc { top:30px; height:88px; }
}
@media(prefers-reduced-motion:reduce) { .preview.wave .wave-bar,.preview.record .record-disc { animation:none; } }
