diff --git a/web/vue-app/src/App.vue b/web/vue-app/src/App.vue
index f4cafe0..6910977 100644
--- a/web/vue-app/src/App.vue
+++ b/web/vue-app/src/App.vue
@@ -12,4 +12,17 @@ body {
margin: 0;
padding: 0;
}
+
+:root {
+ --primary: #667eea;
+ --secondary: #7257b3;
+ --accent: #cbd5e1;
+ --header-bg: linear-gradient(135deg, var(--primary) 0%, var(--secondary) 100%);
+ --button-bg: #fff;
+ --button-active-bg: var(--secondary);
+ --button-hover-bg: #e6eaff;
+ --button-text: var(--primary);
+ --button-active-text: #fff;
+ --app-version: var(--accent);
+}
diff --git a/web/vue-app/src/components/child/ParentView.vue b/web/vue-app/src/components/child/ParentView.vue
index 1743af5..a77a079 100644
--- a/web/vue-app/src/components/child/ParentView.vue
+++ b/web/vue-app/src/components/child/ParentView.vue
@@ -260,7 +260,6 @@ async function cancelPendingReward() {
} finally {
showPendingRewardDialog.value = false
// After cancelling, proceed to trigger the task if one was selected
- console.log('Proceeding to trigger task after cancelling pending rewards.', selectedTask.value)
if (selectedTask.value) {
showConfirm.value = true
}
diff --git a/web/vue-app/src/components/reward/ChildRewardList.vue b/web/vue-app/src/components/reward/ChildRewardList.vue
index 21cae5f..8db1e75 100644
--- a/web/vue-app/src/components/reward/ChildRewardList.vue
+++ b/web/vue-app/src/components/reward/ChildRewardList.vue
@@ -240,16 +240,21 @@ const isAnyPending = computed(() => rewards.value.some((r) => r.redeeming))
}
.reward-card {
- position: relative; /* Add this for overlay positioning */
+ position: relative;
background: rgba(255, 255, 255, 0.12);
border-radius: 8px;
padding: 0.75rem;
min-width: 140px;
+ max-width: 220px;
+ width: 100%;
text-align: center;
flex-shrink: 0;
transition: transform 0.18s ease;
border: 1px solid rgba(255, 255, 255, 0.08);
box-sizing: border-box;
+ display: flex;
+ flex-direction: column;
+ align-items: center;
}
.reward-card:hover {
@@ -319,6 +324,7 @@ const isAnyPending = computed(() => rewards.value.some((r) => r.redeeming))
@media (max-width: 480px) {
.reward-card {
min-width: 110px;
+ max-width: 150px;
padding: 0.6rem;
}
.reward-name {
diff --git a/web/vue-app/src/components/reward/RewardList.vue b/web/vue-app/src/components/reward/RewardList.vue
index 0941bd6..e81b4a2 100644
--- a/web/vue-app/src/components/reward/RewardList.vue
+++ b/web/vue-app/src/components/reward/RewardList.vue
@@ -177,7 +177,7 @@ const listHeight = computed(() => {
-
-