{{-- 🔔 NOTIFIKASI REALTIME --}} @if(session('success'))
{{ session('success') }}
@endif @if(session('error'))
{{ session('error') }}
@endif
@if(auth()->check()) @if(auth()->user()->role == 'admin') @include('components.sidebar') @endif @endif
@if(auth()->check() && auth()->user()->role == 'user') @endif @yield('content')
@yield('scripts')
/* ========================= */ /* 🔥 NAVBAR PREMIUM */ /* ========================= */ .navbar-modern { background: rgba(255, 255, 255, 0.85); backdrop-filter: blur(12px); box-shadow: 0 8px 30px rgba(0,0,0,0.05); border-radius: 0 0 20px 20px; } /* NAV LINK */ .nav-link { transition: all 0.3s ease; display: flex; flex-direction: column; align-items: center; font-size: 13px; color: #374151 !important; } .nav-link i { font-size: 16px; margin-bottom: 4px; } .nav-link:hover { transform: translateY(-2px); color: #4f46e5 !important; } /* ACTIVE MENU */ .nav-link.active { color: #4f46e5 !important; font-weight: 600; } /* ========================= */ /* DROPDOWN */ /* ========================= */ .dropdown-menu { border-radius: 12px; box-shadow: 0 10px 25px rgba(0,0,0,0.1); border: none; padding: 8px; } .dropdown-item { border-radius: 8px; transition: 0.3s; } .dropdown-item:hover { background: #4f46e5; color: white; } /* ========================= */ /* LOGO */ /* ========================= */ .logo-text { color: #111 !important; font-weight: 700; letter-spacing: 1px; font-size: 18px; transition: 0.3s; } .logo-text:hover { color: #4f46e5 !important; transform: scale(1.05); } /* ========================= */ /* USER / AVATAR */ /* ========================= */ .avatar-navbar { width: 42px; height: 42px; border-radius: 50%; object-fit: cover; border: 2px solid #4f46e5; transition: 0.3s; box-shadow: 0 4px 10px rgba(0,0,0,0.1); } .avatar-navbar:hover { transform: scale(1.1); } /* USER TEXT */ .username { font-size: 13px; font-weight: 500; } /* ========================= */ /* LOGOUT */ /* ========================= */ .logout-btn { color: #ef4444; transition: 0.3s; } .logout-btn:hover { color: #dc2626; transform: scale(1.2); } /* ========================= */ /* 🔥 CARD MODERN */ /* ========================= */ .card { border-radius: 14px; transition: 0.3s; border: none; box-shadow: 0 5px 15px rgba(0,0,0,0.05); } .card:hover { transform: translateY(-4px); box-shadow: 0 12px 25px rgba(0,0,0,0.1); } /* ========================= */ /* BUTTON */ /* ========================= */ .btn { border-radius: 10px; transition: 0.3s; } .btn:hover { transform: scale(1.05); } /* ========================= */ /* TABLE */ /* ========================= */ .table { border-radius: 12px; overflow: hidden; } .table tbody tr { transition: 0.2s; } .table tbody tr:hover { background: #f9fafb; } /* ========================= */ /* 🔔 ALERT ANIMATION */ /* ========================= */ .alert { animation: slideFade 0.5s ease; } @keyframes slideFade { from { opacity: 0; transform: translateX(40px); } to { opacity: 1; transform: translateX(0); } } /* ========================= */ /* 📱 MOBILE NAV */ /* ========================= */ .mobile-nav { position: fixed; bottom: 0; left: 0; right: 0; background: rgba(255,255,255,0.95); backdrop-filter: blur(10px); display: flex; justify-content: space-around; padding: 12px; box-shadow: 0 -5px 25px rgba(0,0,0,0.08); z-index: 999; } .mobile-nav a { color: #6b7280; font-size: 20px; transition: 0.3s; } .mobile-nav a:hover { color: #4f46e5; transform: scale(1.2); } /* ========================= */ /* BODY SMOOTH */ /* ========================= */ body { scroll-behavior: smooth; background: #f9fafb; } body { scroll-behavior: smooth; }