+
+
+
+
+ {tooltipProps => (
+
+ )}
+
+
+
+ {time(position)}
+
+ {time(snapshot.duration)}
+
+
+ {tooltipProps => (
+
+ )}
+
+
+ {tooltipProps => (
+
+ )}
+
+
+ );
+}
diff --git a/src/equicordplugins/voiceMessagesInBackground/style.css b/src/equicordplugins/voiceMessagesInBackground/style.css
new file mode 100644
index 000000000..ec91bc6c4
--- /dev/null
+++ b/src/equicordplugins/voiceMessagesInBackground/style.css
@@ -0,0 +1,180 @@
+/*
+ * Vencord, a Discord client mod
+ * Copyright (c) 2026 Vendicated and contributors
+ * SPDX-License-Identifier: GPL-3.0-or-later
+ */
+
+.vc-vmib-player {
+ position: relative;
+ display: flex;
+ flex: 0 1 560px;
+ align-items: center;
+ gap: 4px;
+ min-width: 330px;
+ max-width: min(560px, 48vw);
+ height: 36px;
+ margin: 0 6px;
+ padding: 0 5px;
+ overflow: hidden;
+ border: 1px solid var(--border-subtle);
+ border-radius: var(--radius-md, 10px);
+ background: var(--background-surface-high);
+ box-shadow: var(--shadow-low);
+ color: var(--text-default);
+ animation: vc-vmib-enter 180ms ease-out;
+}
+
+.vc-vmib-player::before {
+ content: "";
+ position: absolute;
+ inset: 0 auto 0 0;
+ width: 3px;
+ background: var(--brand-500);
+}
+
+.vc-vmib-voice-icon {
+ position: relative;
+ display: grid;
+ flex: 0 0 28px;
+ width: 28px;
+ height: 28px;
+ margin-left: 2px;
+ place-items: center;
+ border-radius: 50%;
+ background: color-mix(in srgb, var(--brand-500) 18%, transparent);
+ color: var(--brand-500);
+}
+
+.vc-vmib-player-playing .vc-vmib-voice-icon::after {
+ content: "";
+ position: absolute;
+ inset: -2px;
+ border: 2px solid color-mix(in srgb, var(--brand-500) 45%, transparent);
+ border-radius: 50%;
+ animation: vc-vmib-pulse 1.4s ease-out infinite;
+}
+
+.vc-vmib-control {
+ flex: 0 0 28px;
+ width: 28px;
+ height: 28px;
+}
+
+.vc-vmib-origin {
+ flex: 0 1 112px;
+ justify-content: flex-start;
+ min-width: 76px;
+ padding: 2px 5px;
+}
+
+.vc-vmib-origin-copy {
+ display: flex;
+ min-width: 0;
+ flex-direction: column;
+ align-items: flex-start;
+ line-height: 1.15;
+}
+
+.vc-vmib-title,
+.vc-vmib-channel {
+ max-width: 100%;
+ overflow: hidden;
+ text-overflow: ellipsis;
+}
+
+.vc-vmib-title {
+ color: var(--text-default);
+ font-size: 12px;
+ font-weight: 600;
+}
+
+.vc-vmib-channel {
+ color: var(--text-muted);
+ font-size: 10px;
+}
+
+.vc-vmib-timeline {
+ display: flex;
+ flex: 1 1 220px;
+ align-items: center;
+ gap: 7px;
+ min-width: 120px;
+}
+
+.vc-vmib-seek {
+ flex: 1 1 auto;
+ min-width: 80px;
+}
+
+.vc-vmib-time {
+ min-width: 34px;
+ color: var(--text-muted);
+ font-family: var(--font-code);
+ font-size: 10px;
+ font-variant-numeric: tabular-nums;
+ text-align: center;
+}
+
+.vc-vmib-speed {
+ flex: 0 0 auto;
+ min-width: 34px;
+ color: var(--brand-500);
+ font-weight: 700;
+}
+
+.vc-vmib-close {
+ color: var(--interactive-normal);
+}
+
+@keyframes vc-vmib-enter {
+ from {
+ opacity: 0;
+ transform: translateY(-4px) scale(.98);
+ }
+
+ to {
+ opacity: 1;
+ transform: translateY(0) scale(1);
+ }
+}
+
+@keyframes vc-vmib-pulse {
+ from {
+ opacity: .65;
+ transform: scale(.85);
+ }
+
+ to {
+ opacity: 0;
+ transform: scale(1.25);
+ }
+}
+
+@media (width <= 1050px) {
+ .vc-vmib-player {
+ max-width: 410px;
+ }
+
+ .vc-vmib-origin {
+ display: none;
+ }
+}
+
+@media (width <= 760px) {
+ .vc-vmib-player {
+ min-width: 235px;
+ max-width: 300px;
+ }
+
+ .vc-vmib-time:last-child,
+ .vc-vmib-voice-icon {
+ display: none;
+ }
+}
+
+@media (prefers-reduced-motion: reduce) {
+ .vc-vmib-player,
+ .vc-vmib-player-playing .vc-vmib-voice-icon::after {
+ animation: none;
+ }
+}
diff --git a/src/utils/constants.ts b/src/utils/constants.ts
index a6d452a22..7a4d864bc 100644
--- a/src/utils/constants.ts
+++ b/src/utils/constants.ts
@@ -1426,6 +1426,10 @@ export const EquicordDevs = Object.freeze({
name: "k304",
id: 255004979637649408n
},
+ ELJoOker: {
+ name: "ELJoOker",
+ id: 605894319408283678n
+ },
} satisfies Record