openvibers/openvibe.live Commits
Reduced motion stops the five animations that ignored it (#508)
Changes
@@@ -284,6 +284,7 @@align-items: center;gap: 6px;}++@media (prefers-reduced-motion: reduce) { .bc-live-badge { animation: none; } }.bc-live-badge i {font-size: 0.6rem;@@@ -7,6 +7,7 @@.pc-status { font-size: 0.92rem; display: flex; align-items: center; gap: 8px; min-height: 22px; }.pc-dot { width: 9px; height: 9px; border-radius: 50%; flex-shrink: 0; display: inline-block; }.pc-dot-on { background: #53fc18; box-shadow: 0 0 6px rgba(83,252,24,0.6); animation: pcDotPulse 2.2s ease-in-out infinite; }++@media (prefers-reduced-motion: reduce) { .pc-dot-on { animation: none; } }.pc-kind { font-size: 0.68rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.03em; padding: 1px 7px; border-radius: 6px; margin-left: 4px; vertical-align: middle; }.pc-kind-app { background: rgba(83,252,24,0.16); color: #6ee34a; }.pc-kind-test { background: color-mix(in srgb, var(--accent) 18%, transparent); color: var(--accent-light, #e1b77d); }@@@ -82,6 +82,7 @@ code { background: rgba(255,255,255,.08); padding: 2px 6px; border-radius: 6px;animation: mp-pulse 1.4s ease-out infinite; /* a ring that pulses out: nothing spins */}@keyframes mp-pulse { from { box-shadow: 0 0 0 0 color-mix(in srgb, var(--mp-accent) 55%, transparent); } to { box-shadow: 0 0 0 12px transparent; } }++@media (prefers-reduced-motion: reduce) { .mp-spinner { animation: none; opacity: .7; } } /* a still ring while it loads *//* ── Custom player controls ──────────────────────────────── */.mp-controls {@@@ -67,6 +67,7 @@overflow: hidden;animation: msgSlideUp 0.2s ease-out;}++@media (prefers-reduced-motion: reduce) { .messenger-panel { animation: none; } }.messenger-panel.open {display: flex;}@@@ -146,6 +146,7 @@ button{font:inherit}box-shadow:0 0 12px var(--red);animation:pulse 1.6s infinite}@keyframes pulse{0%,100%{opacity:1}50%{opacity:.35}}++@media (prefers-reduced-motion:reduce){.hero-side .live-pill .pulse{animation:none}}.hero-side span.tag{display:block;margin-top:.8vh;font-size:.78vw;color:var(--muted);font-weight:850;
@@ -284,6 +284,7 @@
@@ -284,6 +284,7 @@
align-items: center;
align-items: center;
gap: 6px;
gap: 6px;
}
}
+@media (prefers-reduced-motion: reduce) { .bc-live-badge { animation: none; } }
.bc-live-badge i {
.bc-live-badge i {
font-size: 0.6rem;
font-size: 0.6rem;
@@ -7,6 +7,7 @@
@@ -7,6 +7,7 @@
.pc-status { font-size: 0.92rem; display: flex; align-items: center; gap: 8px; min-height: 22px; }
.pc-status { font-size: 0.92rem; display: flex; align-items: center; gap: 8px; min-height: 22px; }
.pc-dot { width: 9px; height: 9px; border-radius: 50%; flex-shrink: 0; display: inline-block; }
.pc-dot { width: 9px; height: 9px; border-radius: 50%; flex-shrink: 0; display: inline-block; }
.pc-dot-on { background: #53fc18; box-shadow: 0 0 6px rgba(83,252,24,0.6); animation: pcDotPulse 2.2s ease-in-out infinite; }
.pc-dot-on { background: #53fc18; box-shadow: 0 0 6px rgba(83,252,24,0.6); animation: pcDotPulse 2.2s ease-in-out infinite; }
+@media (prefers-reduced-motion: reduce) { .pc-dot-on { animation: none; } }
.pc-kind { font-size: 0.68rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.03em; padding: 1px 7px; border-radius: 6px; margin-left: 4px; vertical-align: middle; }
.pc-kind { font-size: 0.68rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.03em; padding: 1px 7px; border-radius: 6px; margin-left: 4px; vertical-align: middle; }
.pc-kind-app { background: rgba(83,252,24,0.16); color: #6ee34a; }
.pc-kind-app { background: rgba(83,252,24,0.16); color: #6ee34a; }
.pc-kind-test { background: color-mix(in srgb, var(--accent) 18%, transparent); color: var(--accent-light, #e1b77d); }
.pc-kind-test { background: color-mix(in srgb, var(--accent) 18%, transparent); color: var(--accent-light, #e1b77d); }
@@ -82,6 +82,7 @@ code { background: rgba(255,255,255,.08); padding: 2px 6px; border-radius: 6px;
@@ -82,6 +82,7 @@ code { background: rgba(255,255,255,.08); padding: 2px 6px; border-radius: 6px;
animation: mp-pulse 1.4s ease-out infinite; /* a ring that pulses out: nothing spins */
animation: mp-pulse 1.4s ease-out infinite; /* a ring that pulses out: nothing spins */
}
}
@keyframes mp-pulse { from { box-shadow: 0 0 0 0 color-mix(in srgb, var(--mp-accent) 55%, transparent); } to { box-shadow: 0 0 0 12px transparent; } }
@keyframes mp-pulse { from { box-shadow: 0 0 0 0 color-mix(in srgb, var(--mp-accent) 55%, transparent); } to { box-shadow: 0 0 0 12px transparent; } }
+@media (prefers-reduced-motion: reduce) { .mp-spinner { animation: none; opacity: .7; } } /* a still ring while it loads */
/* ── Custom player controls ──────────────────────────────── */
/* ── Custom player controls ──────────────────────────────── */
.mp-controls {
.mp-controls {
@@ -67,6 +67,7 @@
@@ -67,6 +67,7 @@
overflow: hidden;
overflow: hidden;
animation: msgSlideUp 0.2s ease-out;
animation: msgSlideUp 0.2s ease-out;
}
}
+@media (prefers-reduced-motion: reduce) { .messenger-panel { animation: none; } }
.messenger-panel.open {
.messenger-panel.open {
display: flex;
display: flex;
}
}
@@ -146,6 +146,7 @@ button{font:inherit}
@@ -146,6 +146,7 @@ button{font:inherit}
box-shadow:0 0 12px var(--red);animation:pulse 1.6s infinite
box-shadow:0 0 12px var(--red);animation:pulse 1.6s infinite
}
}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.35}}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.35}}
+@media (prefers-reduced-motion:reduce){.hero-side .live-pill .pulse{animation:none}}
.hero-side span.tag{
.hero-side span.tag{
display:block;margin-top:.8vh;
display:block;margin-top:.8vh;
font-size:.78vw;color:var(--muted);font-weight:850;
font-size:.78vw;color:var(--muted);font-weight:850;