.voice-mic{width:42px;min-width:42px;height:44px;border-radius:50%;color:var(--brand,#5366d9)}.voice-mic svg{width:23px;height:23px}.voice-mic:disabled{opacity:.35}.voice-message{--voice-progress:0%;display:flex;align-items:center;gap:10px;min-width:0;width:min(310px,100%);padding:8px 0;color:var(--brand,#5366d9)}.voice-play,.voice-finish{display:grid;place-items:center;flex:none;width:46px;height:46px;border-radius:50%;background:linear-gradient(145deg,#92acf0,#536bd3);box-shadow:inset 0 1px 2px #ffffffb0,0 3px 10px #4c6abc20;border:1px solid #ffffff70;color:#fff;touch-action:manipulation}.voice-play svg,.voice-finish svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.voice-track{position:relative;flex:1;min-width:45px;height:51px}.voice-wave{height:35px;display:flex;align-items:center;justify-content:space-between;gap:2px;background:linear-gradient(to right,currentColor 0 var(--voice-progress),#8396c16b var(--voice-progress) 100%);background-clip:text}.voice-wave i{display:block;flex:1;max-width:4px;min-width:1px;height:var(--bar);border-radius:5px;background:#8396c16b}.voice-track:before{content:'';position:absolute;inset:0 auto 16px 0;width:var(--voice-progress);pointer-events:none;z-index:1;background:currentColor;mask-image:none;opacity:.1;border-radius:8px}.voice-wave i:nth-child(-n+48){color:inherit}.voice-track input{position:absolute;inset:0 0 14px;width:100%;height:37px;opacity:0;cursor:pointer;z-index:2;margin:0;padding:0}.voice-track:focus-within{outline:2px solid #8ea4ef;border-radius:7px;outline-offset:3px}.voice-time{display:block!important;margin:0!important;padding:0!important;text-align:left!important;font-size:11px!important;line-height:16px!important;font-variant-numeric:tabular-nums;color:var(--secondary-ink,#7483a1)}.voice-speed{padding:0;flex:none;width:39px;height:44px;border-radius:14px;font-size:12px;font-weight:700;color:inherit;white-space:nowrap}.voice-speed:hover{background:#8ea4e51c}.voice-recorder{flex:none;margin:0 12px 12px;padding:13px 14px 9px;border:1px solid var(--line,#ffffffc0);border-radius:29px;background:var(--glass-fill,linear-gradient(125deg,#ffffffd9,#edf2ffc9));box-shadow:inset 0 1px 2px #fff9,0 4px 16px #45649b12;backdrop-filter:blur(18px);color:var(--ink,#293750);min-width:0}.voice-recorder-label{font-size:12px;color:var(--secondary-ink,#73829d);margin:0 4px 6px}.voice-recorder-controls{display:flex;align-items:center;gap:9px;min-width:0}.voice-recorder .voice-message{flex:1;min-width:0;padding:0}.voice-recorder .voice-speed{display:none}.voice-recorder .voice-play{width:39px;height:39px}.voice-discard{min-width:40px;width:40px;height:44px;color:#b67072;flex:none}.voice-live{flex:1;display:flex;align-items:center;justify-content:center;gap:14px;height:49px;min-width:0}.voice-live [data-record-time]{font-variant-numeric:tabular-nums;min-width:35px;font-size:14px;color:var(--ink,#293750)}.voice-record-dot{width:6px;height:6px;flex:none;border-radius:50%;background:#de807b}.voice-live-bars{display:flex;align-items:center;justify-content:center;height:37px;gap:11px;min-width:85px}.voice-live-bars i{display:block;width:7px;height:7px;flex:none;transform:scale(1);background:linear-gradient(#9dbaff,#596fd5);border-radius:50%;transition:none;will-change:transform}.voice-record-note{margin:5px 4px 0;font-size:10px;line-height:1.4;color:var(--secondary-ink,#73829d)}.voice-finish:disabled{opacity:.5}.voice-message.playing .voice-play{box-shadow:inset 0 1px 2px #fff9,0 0 0 4px #8eacf51a}.message:has(.voice-message){min-width:min(340px,100%)}
@media(max-width:760px){.composer:has(.voice-mic){gap:6px}.composer:has(.voice-mic) .attach-button{width:36px;min-width:36px;padding:6px}.composer:has(.voice-mic) textarea{min-width:0}.voice-mic{width:36px;min-width:36px;padding:6px}.voice-recorder{margin:0 9px calc(7px + env(safe-area-inset-bottom));padding:12px 10px 8px}.voice-recorder .voice-track{min-width:40px}.voice-recorder-controls{gap:6px}.voice-discard{width:36px;min-width:36px}.voice-finish{width:42px;height:42px}.voice-message{gap:8px}.message:has(.voice-message){min-width:min(290px,100%)}.voice-track{min-width:40px}.voice-wave{gap:1px}.voice-play{width:43px;height:43px}}
@media(prefers-reduced-motion:reduce){.voice-live-bars i{transition:none;will-change:auto}}
.message:has(.voice-message){width:fit-content;max-width:min(92%,390px)}.message:has(.voice-message) .message-body:empty{display:none}.message:has(.voice-message) .message-heading{gap:12px}
