diff --git a/extensions/Servers/Proxmox/views/overview.blade.php b/extensions/Servers/Proxmox/views/overview.blade.php index 28a16e72d..c10f591b5 100644 --- a/extensions/Servers/Proxmox/views/overview.blade.php +++ b/extensions/Servers/Proxmox/views/overview.blade.php @@ -356,14 +356,14 @@
@foreach($resourceAllocations as $resource) -
+

{{ $resource['label'] }}

{{ $resource['usage_summary'] }}

{{ $resource['entitlement_label'] }}

- + {{ $resource['badge']['label'] }}
@@ -371,10 +371,10 @@ @if(!is_null($resource['used_percent']))
Usage - {{ $resource['used_percent'] }}% + {{ $resource['used_percent'] }}%
-
-
+
diff --git a/themes/lucentui/css/app.css b/themes/lucentui/css/app.css index 7324cc1da..1c5cfad3c 100644 --- a/themes/lucentui/css/app.css +++ b/themes/lucentui/css/app.css @@ -624,11 +624,72 @@ x-navigation-link svg { animation: skeleton-loading 1.5s infinite; } +/* Enhanced skeleton shimmer for dark themes */ +.skeleton-shimmer { + position: relative; + overflow: hidden; + background: hsl(var(--neutral) / 0.2); +} + +.skeleton-shimmer::after { + content: ''; + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; + background: linear-gradient( + 90deg, + transparent 0%, + hsl(var(--neutral) / 0.3) 50%, + transparent 100% + ); + animation: shimmer 1.5s infinite; +} + +@keyframes shimmer { + 0% { transform: translateX(-100%); } + 100% { transform: translateX(100%); } +} + @keyframes skeleton-loading { 0% { background-position: 200% 0; } 100% { background-position: -200% 0; } } +/* Status badge pulse animation for active states */ +.status-pulse { + animation: status-pulse 2s ease-in-out infinite; +} + +@keyframes status-pulse { + 0%, 100% { opacity: 1; } + 50% { opacity: 0.7; } +} + +/* Smooth page transitions for Livewire navigate */ +[wire\:navigate] { + view-transition-name: page; +} + +::view-transition-old(page) { + animation: fade-out 150ms ease-out; +} + +::view-transition-new(page) { + animation: fade-in 150ms ease-in; +} + +@keyframes fade-out { + from { opacity: 1; } + to { opacity: 0; } +} + +@keyframes fade-in { + from { opacity: 0; } + to { opacity: 1; } +} + /* ============================================================================= BUTTON LOADING SPINNER ============================================================================= */ diff --git a/themes/lucentui/views/components/button/danger.blade.php b/themes/lucentui/views/components/button/danger.blade.php index 1a090f49f..86d9df2f1 100644 --- a/themes/lucentui/views/components/button/danger.blade.php +++ b/themes/lucentui/views/components/button/danger.blade.php @@ -1,3 +1,14 @@ -merge(['class' => 'bg-red-700 bg-none text-white py-2 px-4 rounded hover:bg-red-600'])}}> - {{ $slot }} - \ No newline at end of file + \ No newline at end of file diff --git a/themes/lucentui/views/components/button/primary.blade.php b/themes/lucentui/views/components/button/primary.blade.php index dae26a961..1c99ca96b 100644 --- a/themes/lucentui/views/components/button/primary.blade.php +++ b/themes/lucentui/views/components/button/primary.blade.php @@ -1,5 +1,5 @@