From cdbb7482757f14857478171bd76cb331a957b2e4 Mon Sep 17 00:00:00 2001 From: Sin-Kang Date: Wed, 3 Jun 2026 20:57:41 +0900 Subject: [PATCH] =?UTF-8?q?feat:=20visual=20polish=20=E2=80=94=20global=20?= =?UTF-8?q?interactions=20+=20dashboard=20KPI=20cards?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Global (style.css): smooth transitions on buttons/inputs/cards/tags, data-table row-hover, always-visible keyboard focus ring, and slimmer themed scrollbars — applied app-wide. - Dashboard: KPI icons get an accent rounded chip; values truncate so a long tenant id / login id can't blow out the card. Built green (vue-tsc + vite). Admin-ui only. --- src/style.css | 49 +++++++++++++++++++++++++++++++++++++ src/views/DashboardView.vue | 32 +++++++++++++++--------- 2 files changed, 69 insertions(+), 12 deletions(-) diff --git a/src/style.css b/src/style.css index fd2fbb1..ddbf93f 100644 --- a/src/style.css +++ b/src/style.css @@ -20,3 +20,52 @@ body { .dark body { background-color: var(--p-surface-950); } + +/* ---- Global UX polish (applies app-wide) ---- */ + +/* Smooth, consistent micro-interactions. */ +.p-button, +.p-tag, +.p-inputtext, +.p-card { + transition: + background-color 0.15s ease, + border-color 0.15s ease, + box-shadow 0.15s ease, + color 0.15s ease; +} + +/* Clearer row-hover affordance on data tables. */ +.p-datatable-tbody > tr { + transition: background-color 0.12s ease; +} + +/* Keyboard focus is always visible (a11y). */ +:focus-visible { + outline: 2px solid var(--p-primary-color); + outline-offset: 2px; + border-radius: 4px; +} + +/* Slimmer, subtler scrollbars — the sidebar and long tables get scrolly. */ +* { + scrollbar-width: thin; + scrollbar-color: var(--p-surface-300) transparent; +} +*::-webkit-scrollbar { + width: 8px; + height: 8px; +} +*::-webkit-scrollbar-thumb { + background: var(--p-surface-300); + border-radius: 4px; +} +*::-webkit-scrollbar-track { + background: transparent; +} +.dark * { + scrollbar-color: var(--p-surface-700) transparent; +} +.dark *::-webkit-scrollbar-thumb { + background: var(--p-surface-700); +} diff --git a/src/views/DashboardView.vue b/src/views/DashboardView.vue index da32671..a4998fa 100644 --- a/src/views/DashboardView.vue +++ b/src/views/DashboardView.vue @@ -73,11 +73,13 @@ onMounted(refresh)