From 9f5ce717ce3fd1a8f55433e5df641452d53a8c09 Mon Sep 17 00:00:00 2001 From: Claude Date: Fri, 26 Jun 2026 00:23:29 +0000 Subject: [PATCH] redesign: tampilan modern, hilangkan latar hitam, login fokus mobile - Ganti token ink-gradient dari near-black ke gradien biru korporat dalam sehingga sidebar admin, header form, dan avatar tidak lagi berlatar hitam. - Halaman login kini hanya menampilkan satu kotak login terpusat (panel editorial gelap dihapus) dan dioptimalkan untuk layar mobile. - Skalakan ulang tipografi agar pas di mobile: judul dashboard, judul status kunjungan, header form, dan angka metrik tidak lagi terlalu besar. Co-Authored-By: Claude Opus 4.8 Claude-Session: https://claude.ai/code/session_015JE1a9RtEeoTpo9poBQBgv --- web/src/features/admin/AdminDashboard.jsx | 2 +- .../features/admin/DashboardOverviewTab.jsx | 2 +- .../features/security/SecurityDashboard.jsx | 2 +- web/src/screens/LoginScreen.jsx | 57 +++++-------------- web/src/screens/VisitorFormScreen.jsx | 8 +-- web/src/screens/VisitorStatusScreen.jsx | 24 ++++---- web/tailwind.config.js | 3 +- 7 files changed, 35 insertions(+), 63 deletions(-) diff --git a/web/src/features/admin/AdminDashboard.jsx b/web/src/features/admin/AdminDashboard.jsx index 5d99621..eecd229 100644 --- a/web/src/features/admin/AdminDashboard.jsx +++ b/web/src/features/admin/AdminDashboard.jsx @@ -269,7 +269,7 @@ const AdminDashboard = ({ user, onLogout }) => {

Panel Administrator

-

{TITLES[activeTab]}

+

{TITLES[activeTab]}

Data operasional Visitor Management System.

{busy && } diff --git a/web/src/features/admin/DashboardOverviewTab.jsx b/web/src/features/admin/DashboardOverviewTab.jsx index 28c98ab..0ad36db 100644 --- a/web/src/features/admin/DashboardOverviewTab.jsx +++ b/web/src/features/admin/DashboardOverviewTab.jsx @@ -112,7 +112,7 @@ const MetricCard = ({ icon: Icon, label, value, valueClass = 'text-ink' }) => ( {label}
-
{value}
+
{value}
); diff --git a/web/src/features/security/SecurityDashboard.jsx b/web/src/features/security/SecurityDashboard.jsx index 67ced9d..069718c 100644 --- a/web/src/features/security/SecurityDashboard.jsx +++ b/web/src/features/security/SecurityDashboard.jsx @@ -188,7 +188,7 @@ const SecurityDashboard = ({ user, onLogout }) => {
-

{TITLES[activeTab]}

+

{TITLES[activeTab]}

{busy && } {activeTab === 'paket' && ( diff --git a/web/src/screens/LoginScreen.jsx b/web/src/screens/LoginScreen.jsx index 43311d8..33c88cb 100644 --- a/web/src/screens/LoginScreen.jsx +++ b/web/src/screens/LoginScreen.jsx @@ -86,44 +86,16 @@ const LoginScreen = ({ onLogin }) => { }; return ( -
- {/* Panel brand bergaya editorial mewah (kiri di desktop, atas di mobile). */} - - - {/* Panel autentikasi. */} -
-
-

Selamat Datang

-

Masuk ke Akun Anda

-
-

- Gunakan akun Google Anda. Sistem akan mengenali peran Anda secara otomatis. -

+ // Hanya kotak login yang ditampilkan, terpusat & dioptimalkan untuk layar mobile. +
+
+ +

Selamat Datang

+

Masuk ke Akun Anda

+
+

+ Gunakan akun Google Anda. Sistem akan mengenali peran Anda secara otomatis. +

{error && (
@@ -133,7 +105,7 @@ const LoginScreen = ({ onLogin }) => { {!USE_MOCK && ( -
+
)} @@ -180,11 +152,10 @@ const LoginScreen = ({ onLogin }) => {
)} -

+

Dengan masuk, Anda menyetujui Kebijakan Privasi serta Syarat & Ketentuan kami (sesuai UU PDP).

-
-
+
); }; diff --git a/web/src/screens/VisitorFormScreen.jsx b/web/src/screens/VisitorFormScreen.jsx index c169ee2..d05652e 100644 --- a/web/src/screens/VisitorFormScreen.jsx +++ b/web/src/screens/VisitorFormScreen.jsx @@ -83,13 +83,13 @@ const VisitorFormScreen = ({ user, onSubmit }) => { return (
-
+
- -

Registrasi Kunjungan

-

Halo, {user.name}

+ +

Registrasi Kunjungan

+

Halo, {user.name}

{isReturning ? 'Silakan isi detail kunjungan Anda hari ini.' : 'Lengkapi data diri untuk registrasi tamu.'}

diff --git a/web/src/screens/VisitorStatusScreen.jsx b/web/src/screens/VisitorStatusScreen.jsx index 89515df..2c6a7aa 100644 --- a/web/src/screens/VisitorStatusScreen.jsx +++ b/web/src/screens/VisitorStatusScreen.jsx @@ -33,11 +33,11 @@ const VisitorStatusScreen = ({ statusData, onLogout }) => { {status === 'PENDING' && ( <> -
- +
+

Status Kunjungan

-

Menunggu

+

Menunggu

Mohon tunggu sebentar di lobi. Petugas keamanan sedang memverifikasi data dan tujuan Anda ( {statusData.tujuan}). @@ -47,11 +47,11 @@ const VisitorStatusScreen = ({ statusData, onLogout }) => { {status === 'CHECKED_IN' && ( <> -

- +
+

Status Kunjungan

-

Check In

+

Check In

Silakan masuk. Jangan lupa mengenakan kartu visitor Anda selama berada di dalam area.

@@ -60,11 +60,11 @@ const VisitorStatusScreen = ({ statusData, onLogout }) => { {status === 'CHECKED_OUT' && ( <> -
- +
+

Status Kunjungan

-

Check Out

+

Check Out

Terima kasih atas kunjungan Anda. Pastikan kartu visitor telah dikembalikan ke petugas.

@@ -73,11 +73,11 @@ const VisitorStatusScreen = ({ statusData, onLogout }) => { {status === 'REJECTED' && ( <> -
- +
+

Status Kunjungan

-

Ditolak

+

Ditolak

Alasan: {rejectReason || 'Tujuan tidak dapat ditemui.'}
diff --git a/web/tailwind.config.js b/web/tailwind.config.js index 132d43b..610b01c 100644 --- a/web/tailwind.config.js +++ b/web/tailwind.config.js @@ -62,7 +62,8 @@ export default { backgroundImage: { 'brand-gradient': 'linear-gradient(135deg, #3C6DB2 0%, #274875 100%)', 'brand-gradient-soft': 'linear-gradient(135deg, #5587C6 0%, #2F5793 100%)', - 'ink-gradient': 'linear-gradient(150deg, #1B2026 0%, #0E1216 100%)', + // Gradien biru korporat yang dalam (BUKAN hitam) untuk header/sidebar gelap. + 'ink-gradient': 'linear-gradient(150deg, #2F5793 0%, #16273E 100%)', 'gold-line': 'linear-gradient(90deg, transparent, #D9BE84 50%, transparent)', }, keyframes: {