From caf25236b5e7fe1d9fe45e00ffa2c9c4204e3c27 Mon Sep 17 00:00:00 2001 From: gabrielb Date: Mon, 18 May 2026 00:42:35 -0300 Subject: [PATCH] feat: dark mode completo via widget de acessibilidade MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - main.css: @variant dark com seletor .app-dark (alinhado com PrimeVue darkModeSelector) - AccessibilityWidget: novo toggle "Modo escuro" no painel; preferências persistidas no localStorage (fonte, contraste, escuro) - PublicLayout/PortalLayout: dark:bg-slate-950/900, dark:border, dark:text em todos os elementos - AppHeader/AppFooter: dark variants em bg, border, textos e links - ServiceCard: usa cores primary em vez de blue hardcoded; dark variants completos - HomeView: dark nos avisos do carrossel (bg coloridos suavizados), card de login, seção de serviços autenticados e CTA - LoginView: dark no card, campo documento, label senha, links e botão voltar Co-Authored-By: Claude Sonnet 4.6 --- .vscode/extensions.json | 3 + src/assets/main.css | 3 + src/components/common/AccessibilityWidget.vue | 76 +++++++++++++------ src/components/common/AppFooter.vue | 12 +-- src/components/common/AppHeader.vue | 8 +- src/components/common/ServiceCard.vue | 14 ++-- src/layouts/PortalLayout.vue | 10 +-- src/layouts/PublicLayout.vue | 2 +- src/views/public/HomeView.vue | 36 ++++----- src/views/public/LoginView.vue | 16 ++-- 10 files changed, 109 insertions(+), 71 deletions(-) create mode 100644 .vscode/extensions.json diff --git a/.vscode/extensions.json b/.vscode/extensions.json new file mode 100644 index 0000000..a7cea0b --- /dev/null +++ b/.vscode/extensions.json @@ -0,0 +1,3 @@ +{ + "recommendations": ["Vue.volar"] +} diff --git a/src/assets/main.css b/src/assets/main.css index adb7ff6..c94fa15 100644 --- a/src/assets/main.css +++ b/src/assets/main.css @@ -6,6 +6,9 @@ --font-sans: 'DM Sans', system-ui, sans-serif; } +/* Dark mode via classe .app-dark — alinhado com darkModeSelector do PrimeVue */ +@variant dark (&:where(.app-dark, .app-dark *)); + /* Remove setas de number input */ input[type='number']::-webkit-outer-spin-button, input[type='number']::-webkit-inner-spin-button { diff --git a/src/components/common/AccessibilityWidget.vue b/src/components/common/AccessibilityWidget.vue index 6bec1e8..a67a160 100644 --- a/src/components/common/AccessibilityWidget.vue +++ b/src/components/common/AccessibilityWidget.vue @@ -1,9 +1,10 @@ @@ -39,16 +57,16 @@ watch(altoContraste, (val) => { id="a11y-panel" role="dialog" aria-label="Opções de acessibilidade" - class="bg-white rounded-2xl shadow-2xl border border-slate-200 p-5 w-64 origin-bottom-right" + class="bg-white dark:bg-slate-800 rounded-2xl shadow-2xl border border-slate-200 dark:border-slate-700 p-5 w-64 origin-bottom-right" >