+ {{-- Swipe handle indicator --}}
+
diff --git a/themes/lucentui/views/components/progress-bar.blade.php b/themes/lucentui/views/components/progress-bar.blade.php
new file mode 100644
index 000000000..68820ef5c
--- /dev/null
+++ b/themes/lucentui/views/components/progress-bar.blade.php
@@ -0,0 +1,82 @@
+@props([
+ 'value' => 0,
+ 'max' => 100,
+ 'color' => 'primary',
+ 'size' => 'md',
+ 'showLabel' => false,
+ 'animated' => true,
+ 'gradient' => false,
+])
+
+@php
+ $percentage = $max > 0 ? min(100, ($value / $max) * 100) : 0;
+
+ $sizeClasses = match($size) {
+ 'sm' => 'h-1.5',
+ 'lg' => 'h-4',
+ default => 'h-2.5',
+ };
+
+ $colorClasses = match($color) {
+ 'success' => 'bg-success',
+ 'warning' => 'bg-warning',
+ 'error' => 'bg-error',
+ 'info' => 'bg-info',
+ default => 'bg-primary',
+ };
+
+ $gradientClasses = match($color) {
+ 'success' => 'bg-gradient-to-r from-green-400 to-emerald-500',
+ 'warning' => 'bg-gradient-to-r from-yellow-400 to-orange-500',
+ 'error' => 'bg-gradient-to-r from-red-400 to-rose-500',
+ 'info' => 'bg-gradient-to-r from-blue-400 to-cyan-500',
+ default => 'bg-gradient-to-r from-primary to-secondary',
+ };
+@endphp
+
+
merge(['class' => 'w-full']) }}>
+ @if($showLabel)
+
+ {{ $slot }}
+ {{ number_format($percentage, 0) }}%
+
+ @endif
+
+
+
+ @if($animated && $percentage > 0)
+
+ @endif
+
+
+
+
+@once
+@push('styles')
+
+@endpush
+@endonce
diff --git a/themes/lucentui/views/components/skeleton/invoice-card.blade.php b/themes/lucentui/views/components/skeleton/invoice-card.blade.php
new file mode 100644
index 000000000..dd0d8c4b1
--- /dev/null
+++ b/themes/lucentui/views/components/skeleton/invoice-card.blade.php
@@ -0,0 +1,25 @@
+{{-- Skeleton loader for invoice card --}}
+
+
+
+ {{-- Icon skeleton --}}
+
+
+
+ {{-- Title skeleton --}}
+
+ {{-- Amount and date skeleton --}}
+
+ {{-- Due date skeleton --}}
+
+
+
+
+
+ {{-- Status badge skeleton --}}
+
+ {{-- Arrow skeleton --}}
+
+
+
diff --git a/themes/lucentui/views/components/skeleton/service-card.blade.php b/themes/lucentui/views/components/skeleton/service-card.blade.php
new file mode 100644
index 000000000..895d98853
--- /dev/null
+++ b/themes/lucentui/views/components/skeleton/service-card.blade.php
@@ -0,0 +1,25 @@
+{{-- Skeleton loader for service card --}}
+
+
+
+ {{-- Icon skeleton --}}
+
+
+
+ {{-- Title skeleton --}}
+
+ {{-- Description skeleton --}}
+
+ {{-- Date skeleton --}}
+
+
+
+
+
+ {{-- Status badge skeleton --}}
+
+ {{-- Arrow skeleton --}}
+
+
+
diff --git a/themes/lucentui/views/invoices/index.blade.php b/themes/lucentui/views/invoices/index.blade.php
index dcafdfce0..880130a71 100644
--- a/themes/lucentui/views/invoices/index.blade.php
+++ b/themes/lucentui/views/invoices/index.blade.php
@@ -31,6 +31,14 @@