From bc5ccf1731e999d3a3ef9c13f127d9781186dba9e6b02404950fd0f5d90298e7 Mon Sep 17 00:00:00 2001 From: Andrew Date: Sun, 26 Apr 2026 16:18:03 -0400 Subject: [PATCH] fix(vps): harmonize estimator palette with rest of marketing site Replaced --v-theme-surface-bright (auto-generated lighter tone that clashed with the page's dark navy palette) with --v-theme-surface across all 10 estimator components. Removed gradient backgrounds in favor of the existing .glass-card / .section-alt-bg patterns from resources/styles/_marketing.scss. Bumped contrast on the cycle toggle discount badges and the EstimatorFooter card so the Copy share link button reads clearly. Components touched: EstimatorSection, BillingCycleToggle, WorkloadPicker, MiniQuizDialog, RecommendedPlanCard, AddOnsPanel, IPv4Stepper, ManagedSupportSelector, BackupTierSelector, EstimatorFooter. Co-Authored-By: Claude Opus 4.7 (1M context) --- .../Components/Marketing/Estimator/AddOnsPanel.vue | 5 ++++- .../Marketing/Estimator/BackupTierSelector.vue | 10 +++++----- .../Marketing/Estimator/BillingCycleToggle.vue | 9 +++++---- .../Marketing/Estimator/EstimatorFooter.vue | 8 +++++--- .../Marketing/Estimator/EstimatorSection.vue | 4 ++-- .../Components/Marketing/Estimator/IPv4Stepper.vue | 3 ++- .../Marketing/Estimator/ManagedSupportSelector.vue | 10 +++++----- .../Marketing/Estimator/MiniQuizDialog.vue | 8 ++++---- .../Marketing/Estimator/RecommendedPlanCard.vue | 9 ++++++--- .../Marketing/Estimator/WorkloadPicker.vue | 12 +++++++----- 10 files changed, 45 insertions(+), 33 deletions(-) diff --git a/website/resources/ts/Components/Marketing/Estimator/AddOnsPanel.vue b/website/resources/ts/Components/Marketing/Estimator/AddOnsPanel.vue index 249c65b..266e669 100644 --- a/website/resources/ts/Components/Marketing/Estimator/AddOnsPanel.vue +++ b/website/resources/ts/Components/Marketing/Estimator/AddOnsPanel.vue @@ -105,7 +105,10 @@ const expanded = ref(false) diff --git a/website/resources/ts/Components/Marketing/Estimator/BillingCycleToggle.vue b/website/resources/ts/Components/Marketing/Estimator/BillingCycleToggle.vue index eb44afd..8ccd4fc 100644 --- a/website/resources/ts/Components/Marketing/Estimator/BillingCycleToggle.vue +++ b/website/resources/ts/Components/Marketing/Estimator/BillingCycleToggle.vue @@ -42,9 +42,10 @@ function pick(value: EstimatorCycle): void { diff --git a/website/resources/ts/Components/Marketing/Estimator/EstimatorFooter.vue b/website/resources/ts/Components/Marketing/Estimator/EstimatorFooter.vue index f1c1d9d..9a59258 100644 --- a/website/resources/ts/Components/Marketing/Estimator/EstimatorFooter.vue +++ b/website/resources/ts/Components/Marketing/Estimator/EstimatorFooter.vue @@ -100,12 +100,14 @@ async function copyShareLink(url: string): Promise { .estimator-footer { padding: 22px 26px; border-radius: 18px; - background: linear-gradient(135deg, rgba(var(--v-theme-primary), 0.10), rgba(var(--v-theme-surface-bright), 0.6)); - border: 1.5px solid rgba(var(--v-theme-primary), 0.2); + background: rgba(var(--v-theme-surface), 0.85); + border: 1px solid rgba(var(--v-theme-primary), 0.22); + box-shadow: 0 8px 32px rgba(0, 0, 0, 0.25); position: sticky; bottom: 16px; z-index: 5; - backdrop-filter: blur(10px); + backdrop-filter: blur(20px); + -webkit-backdrop-filter: blur(20px); @media (max-width: 600px) { position: relative; diff --git a/website/resources/ts/Components/Marketing/Estimator/EstimatorSection.vue b/website/resources/ts/Components/Marketing/Estimator/EstimatorSection.vue index 4e93806..89ea471 100644 --- a/website/resources/ts/Components/Marketing/Estimator/EstimatorSection.vue +++ b/website/resources/ts/Components/Marketing/Estimator/EstimatorSection.vue @@ -240,8 +240,8 @@ watch(