diff --git a/e2e/landing.spec.js b/e2e/landing.spec.js
index b2be7233..8c51dbab 100644
--- a/e2e/landing.spec.js
+++ b/e2e/landing.spec.js
@@ -33,11 +33,5 @@ test("landing has dashboard link", async ({ page }) => {
test("landing shows footer", async ({ page }) => {
await page.goto("/");
- await expect(page.getByRole("contentinfo")).toBeVisible();
-});
-
-test("landing has dashboard link", async ({ page }) => {
- await page.goto("/");
-
- await expect(page.getByRole("link", { name: "Dashboard" })).toBeVisible();
+ await expect(page.getByRole("contentinfo").first()).toBeVisible();
});
diff --git a/src/components/CIAnalytics.tsx b/src/components/CIAnalytics.tsx
index 8f787ad5..6b908401 100644
--- a/src/components/CIAnalytics.tsx
+++ b/src/components/CIAnalytics.tsx
@@ -119,9 +119,12 @@ export default function CIAnalytics() {
onClick={fetchCIAnalytics}
disabled={isRateLimited || loading}
title={isRateLimited ? "GitHub API rate limit reached" : "Refresh CI data"}
- className="rounded-md border border-[var(--border)] px-3 py-1.5 text-xs font-medium text-[var(--muted-foreground)] transition-colors hover:bg-[var(--control)] disabled:cursor-not-allowed disabled:opacity-50"
+ className="inline-flex items-center gap-1.5 rounded-md border border-[var(--border)] px-3 py-1.5 text-xs font-medium text-[var(--muted-foreground)] transition-colors hover:bg-[var(--control)] disabled:cursor-not-allowed disabled:opacity-50"
>
- {refreshLabel}
+ {loading ? (
+
+ ) : null}
+ {refreshLabel}
diff --git a/src/components/CodingActivityInsightsCard.tsx b/src/components/CodingActivityInsightsCard.tsx
index e1d7e2dd..6fc4c35a 100644
--- a/src/components/CodingActivityInsightsCard.tsx
+++ b/src/components/CodingActivityInsightsCard.tsx
@@ -248,9 +248,13 @@ export default function CodingActivityInsightsCard() {
diff --git a/src/components/CommunityMetrics.tsx b/src/components/CommunityMetrics.tsx
index 3dae488c..0f65400e 100644
--- a/src/components/CommunityMetrics.tsx
+++ b/src/components/CommunityMetrics.tsx
@@ -72,9 +72,13 @@ export default function CommunityMetrics() {
diff --git a/src/components/InactiveRepositoriesCard.tsx b/src/components/InactiveRepositoriesCard.tsx
index 2b9c9aaf..5f97b0c7 100644
--- a/src/components/InactiveRepositoriesCard.tsx
+++ b/src/components/InactiveRepositoriesCard.tsx
@@ -97,9 +97,13 @@ export default function InactiveRepositoriesCard() {
diff --git a/src/components/RecentActivity.tsx b/src/components/RecentActivity.tsx
index 140ea205..145d1c8b 100644
--- a/src/components/RecentActivity.tsx
+++ b/src/components/RecentActivity.tsx
@@ -167,9 +167,13 @@ export default function RecentActivity() {