.voice-attachment{width:min(350px,78vw);min-width:min(285px,72vw)}
.voice-player{display:grid;grid-template-columns:48px minmax(0,1fr);grid-template-rows:32px 16px;align-items:center;gap:0 11px;width:100%;padding:9px 12px 8px;border:1px solid #506842;border-radius:18px;background:radial-gradient(circle at 12% 0,#405638 0,transparent 38%),linear-gradient(145deg,#17251b,#0b130e);box-shadow:inset 0 0 0 1px #dcff7a12,0 10px 28px #0b140f2b;color:#d9ff7a}
.voice-player audio{display:none}.voice-play{grid-row:1/3;display:grid;place-items:center;width:48px;height:48px;padding:0;border:1px solid #d8ff786e;border-radius:50%;background:radial-gradient(circle at 32% 24%,#e1ff91,#a5dc37 54%,#75a91d);color:#122016;box-shadow:0 0 0 4px #cfff5712,0 8px 24px #0006;transition:transform .18s ease,filter .18s ease,box-shadow .18s ease}.voice-play:active{transform:scale(.91);filter:brightness(1.12)}.voice-play .ui-svg-icon{width:23px;height:23px;stroke-width:2}.voice-player.is-playing .voice-play{box-shadow:0 0 0 5px #cfff5723,0 8px 28px #0007;animation:voice-button-glow 1.7s ease-in-out infinite}
.voice-waveform{display:flex;align-items:center;gap:2px;height:32px;min-width:0;cursor:pointer;touch-action:none;outline:0}.voice-waveform i{display:block;flex:1;min-width:2px;height:calc(4px + var(--voice-level)*24px);border-radius:3px;background:#60705f;box-shadow:0 0 0 transparent;transition:height .2s ease,background .12s ease,box-shadow .12s ease}.voice-waveform i.played{background:linear-gradient(180deg,#e2ff95,#a8df3b);box-shadow:0 0 7px #cfff5755}.voice-waveform:focus-visible{border-radius:8px;box-shadow:0 0 0 2px #cfff5766}
.voice-player time{align-self:start;color:#a9b8a9;font-size:10px;font-variant-numeric:tabular-nums;letter-spacing:.03em}.voice-player.is-playing time{color:#d9ff85}
@keyframes voice-button-glow{50%{box-shadow:0 0 0 7px #cfff5717,0 8px 30px #0008}}
.message-line.mine .voice-player{border-color:#6f8b53;background:radial-gradient(circle at 12% 0,#465e3c 0,transparent 38%),linear-gradient(145deg,#1c2c20,#0d1710)}
html[data-theme=dark] .voice-player{border-color:#607949;background:radial-gradient(circle at 12% 0,#34482f 0,transparent 38%),linear-gradient(145deg,#101c14,#070d09)}
@media(max-width:360px){.voice-attachment{width:min(310px,82vw);min-width:250px}.voice-player{grid-template-columns:44px minmax(0,1fr);gap:0 8px;padding-left:9px;padding-right:9px}.voice-play{width:44px;height:44px}.voice-waveform{gap:1.5px}.voice-waveform i:nth-child(3n){display:none}}

