PluginProbe
xSpeed Cache: AI-Powered Performance Hub with MCP, Caching & CDN / 1.4.1
xSpeed Cache: AI-Powered Performance Hub with MCP, Caching & CDN v1.4.1
1.4.1 1.4.0 1.3.7 1.3.6 1.3.5 1.3.4 1.3.3 1.3.2 1.3.1 1.3.0 1.2.4 trunk 1.0.0 1.0.1 1.0.2 1.0.3 1.0.4 1.0.5 1.0.6 1.0.7 1.0.8 1.0.9 1.1.0 1.1.1 1.1.2 All 35 releases
← All changes | assets/theme.css +18 -0 1.4.0 → 1.4.1 View file →
@@ -156,8 +156,26 @@
156 156 @media (prefers-reduced-motion: reduce) {
157 157 #xspeed-app [class*="xspeed-anim"] { animation: none !important; }
158 158 }
159 159
160 +/* ---- Loader bar + live dot (DESIGN.md ยง24.55) ----------------------------- */
161 +/*
162 + * A thin indeterminate bar for a wait with no progress to report, and a
163 + * pulsing dot beside a status line that keeps updating on its own. Both are
164 + * CSS here rather than Tailwind utilities because they need a pseudo-element
165 + * and keyframes. Tokens only: --line, --primary, --success, --radius-pill.
166 + */
167 +@keyframes xspeed-blink { 50% { opacity: .25; } }
168 +@keyframes xspeed-slide { 0% { transform: translateX(-100%); } 100% { transform: translateX(300%); } }
169 +#xspeed-app .xspeed-loader-bar { height: 3px; border-radius: var(--radius-pill); background: var(--line); overflow: hidden; position: relative; max-width: 320px; }
170 +#xspeed-app .xspeed-loader-bar::after { content: ""; position: absolute; inset: 0; width: 35%; border-radius: var(--radius-pill); background: var(--primary); animation: xspeed-slide 1.6s ease-in-out infinite; }
171 +#xspeed-app .xspeed-live-dot { flex: none; width: 9px; height: 9px; border-radius: 50%; background: var(--primary); margin-top: 6px; animation: xspeed-blink 1.6s ease-in-out infinite; }
172 +#xspeed-app .xspeed-live-dot.is-done { background: var(--success); animation: none; }
173 +@media (prefers-reduced-motion: reduce) {
174 + #xspeed-app .xspeed-live-dot, #xspeed-app .xspeed-loader-bar::after { animation: none; }
175 + #xspeed-app .xspeed-loader-bar::after { width: 100%; opacity: .4; }
176 +}
177 +
160 178 /* ---- MCP discovery card (Overview, disconnected) ----------------------- */
161 179 /*
162 180 * Three tinted surfaces for the "Control and optimize your site with AI" card.
163 181 * They live here rather than in a component because Tailwind cannot express an