<?php
require_once __DIR__ . '/../config.php';
require_once __DIR__ . '/../db.php';
require_once __DIR__ . '/../includes/functions.php';
require_once __DIR__ . '/../includes/Language.php';

if (!isLoggedIn() || !isAdmin()) { redirect('../login.php'); }

if (!hasPermission('manage_staff_roles')) { die("Access Denied: You do not have permission to view roles."); }

$lang = new Language($db);
$current_lang = $lang->getCurrentLanguage();
$user_id = $_SESSION['user_id'];

if (isset($_GET['delete'])) {
    $del_id = intval($_GET['delete']);
    if ($del_id != 1) {
        $db->insert("DELETE FROM roles WHERE id = ?", [$del_id]);
        $db->insert("UPDATE users SET role_id = NULL WHERE role_id = ?", [$del_id]);
        $_SESSION['flash_success'] = "Role deleted successfully!";
    }
    redirect('roles.php');
}

if (isset($_POST['add_role'])) {
    $role_name = sanitize($_POST['role_name']);
    $permissions = isset($_POST['permissions']) ? json_encode($_POST['permissions']) : '[]';
    $db->insert("INSERT INTO roles (name, permissions) VALUES (?, ?)", [$role_name, $permissions]);
    $_SESSION['flash_success'] = "New role created successfully!";
    redirect('roles.php');
}

$roles = $db->select("SELECT * FROM roles ORDER BY id ASC");
$user_data = $db->select("SELECT * FROM users WHERE id = ?", [$user_id]);
$user = !empty($user_data) ? $user_data[0] : null;

$unread_notifs = $db->select("SELECT * FROM notifications WHERE user_id = ? AND is_read = 0", [$user_id]);
$unread_count = count($unread_notifs);
$total_tickets = count($db->select("SELECT id FROM support_tickets WHERE status = 'Open'"));

$raw_logo = getSetting('company_logo', 'assets/images/logo.png');
$company_logo = (strpos($raw_logo, 'http') === 0) ? $raw_logo : '../' . ltrim($raw_logo, '/');
$company_name = getSetting('company_name', 'WBMCZ');
$profile_image_url = !empty($user['profile_pic']) ? '../uploads/profiles/' . $user['profile_pic'] : null;

$avail_perms = [
    'manage_users' => 'Manage Customers',
    'manage_sellers' => 'Manage Sellers',
    'manage_staff_roles' => 'Manage Staff & Roles',
    'manage_services' => 'Manage Services',
    'manage_orders' => 'Manage Orders',
    'manage_transactions' => 'Manage Transactions',
    'manage_tickets' => 'Manage Support Tickets',
    'manage_settings' => 'Manage Site Settings'
];

$can_users = hasPermission('manage_users');
$can_sellers = hasPermission('manage_sellers');
$can_staff = hasPermission('manage_staff_roles');
$can_services = hasPermission('manage_services');
$can_orders = hasPermission('manage_orders');
$can_transactions = hasPermission('manage_transactions');
$can_tickets = hasPermission('manage_tickets');
$can_settings = hasPermission('manage_settings');
?>
<!DOCTYPE html>
<html lang="<?php echo $current_lang; ?>">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Role Management - <?php echo $company_name; ?> Admin</title>
    <script src="https://cdn.tailwindcss.com"></script>
    <script defer src="https://cdn.jsdelivr.net/npm/alpinejs@3.x.x/dist/cdn.min.js"></script>
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
    <link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap" rel="stylesheet">
    <style> body { font-family: 'Inter', sans-serif; } .hide-scrollbar::-webkit-scrollbar { display: none; } </style>
</head>
<body class="bg-gray-50" x-data="{ sidebarOpen: window.innerWidth >= 768, profileOpen: false, addModal: false }">

    <div class="flex h-screen overflow-hidden">
        
        <aside :class="sidebarOpen ? 'w-64' : 'w-20'" class="flex-shrink-0 bg-gradient-to-b from-slate-800 to-slate-900 text-white transition-all duration-300 flex flex-col shadow-2xl z-50 overflow-x-hidden relative">
            <div class="flex items-center h-20 px-4 border-b border-white/10" :class="sidebarOpen ? 'justify-between' : 'justify-center'">
                <a href="../index.php" class="flex items-center">
                    <img src="<?php echo $company_logo; ?>" alt="Logo" class="h-10 w-10 bg-white rounded p-1 flex-shrink-0 object-contain">
                    <span x-show="sidebarOpen" class="ml-3 text-xl font-bold tracking-wider whitespace-nowrap text-emerald-400">ADMIN</span>
                </a>
            </div>

            <nav class="flex-1 px-3 py-6 space-y-1.5 overflow-y-auto hide-scrollbar text-sm font-medium">
    
    <a href="index.php" class="flex items-center px-3 py-3 text-gray-300 hover:bg-white/5 hover:text-white rounded-xl transition-all" :class="sidebarOpen ? '' : 'justify-center'">
        <i class="fas fa-chart-line flex-shrink-0" :class="sidebarOpen ? 'w-6 text-center' : 'text-xl'"></i>
        <span x-show="sidebarOpen" class="ml-3 font-semibold">Dashboard</span>
    </a>
    
    <div x-data="{ profileMenuOpen: false }">
        <button @click="profileMenuOpen = !profileMenuOpen" class="w-full flex items-center justify-between px-3 py-3 text-gray-300 hover:bg-white/5 hover:text-white rounded-xl transition-all group" :class="sidebarOpen ? '' : 'justify-center'">
            <div class="flex items-center">
                <i class="fas fa-user-tie flex-shrink-0" :class="sidebarOpen ? 'w-6 text-center' : 'text-xl'"></i>
                <span x-show="sidebarOpen" class="ml-3 font-semibold">Profile</span>
            </div>
            <i x-show="sidebarOpen" class="fas fa-chevron-down text-xs transition-transform" :class="profileMenuOpen ? 'rotate-180' : ''"></i>
        </button>
        <div x-show="profileMenuOpen && sidebarOpen" x-transition class="pl-10 pr-3 py-2 space-y-1" style="display:none;">
            <a href="profile.php#profile" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">My Profile</a>
            <a href="profile.php#edit" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">Edit Profile</a>
            <a href="profile.php#kyc" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">KYC</a>
            <a href="profile.php#password" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">Change Password</a>
            <a href="profile.php#id_card" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">ID Card</a>
        </div>
    </div>

    <div x-data="{ walletMenuOpen: false }">
        <button @click="walletMenuOpen = !walletMenuOpen" class="w-full flex items-center justify-between px-3 py-3 text-gray-300 hover:bg-white/5 hover:text-white rounded-xl transition-all group" :class="sidebarOpen ? '' : 'justify-center'">
            <div class="flex items-center">
                <i class="fas fa-wallet flex-shrink-0" :class="sidebarOpen ? 'w-6 text-center' : 'text-xl'"></i>
                <span x-show="sidebarOpen" class="ml-3 font-semibold">Wallet Management</span>
            </div>
            <i x-show="sidebarOpen" class="fas fa-chevron-down text-xs transition-transform" :class="walletMenuOpen ? 'rotate-180' : ''"></i>
        </button>
        <div x-show="walletMenuOpen && sidebarOpen" x-transition class="pl-10 pr-3 py-2 space-y-1" style="display:none;">
            <a href="wallet.php#add_money" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">Add Money</a>
            <a href="wallet.php#my_history" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">My wallet history</a>
            <a href="wallet.php#move_bank" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">Move to Bank</a>
            <a href="wallet.php#all_history" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">All Wallet History</a>
            <a href="wallet.php#customer_history" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">Customer Wallet History</a>
            <a href="wallet.php#seller_history" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">Seller Wallet History</a>
            <a href="wallet.php#staff_history" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">Staff Wallet History</a>
            <a href="wallet_history.php" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">Wallet History</a>
            <a href="withdrawals.php#bank_requests" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">Bank Request Pending</a>
            <a href="withdrawals.php#transactions" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">Transaction Update</a>
        </div>
    </div>

    <div x-data="{ userMenuOpen: false }">
        <button @click="userMenuOpen = !userMenuOpen" class="w-full flex items-center justify-between px-3 py-3 text-gray-300 hover:bg-white/5 hover:text-white rounded-xl transition-all group" :class="sidebarOpen ? '' : 'justify-center'">
            <div class="flex items-center">
                <i class="fas fa-users-cog flex-shrink-0" :class="sidebarOpen ? 'w-6 text-center' : 'text-xl'"></i>
                <span x-show="sidebarOpen" class="ml-3 font-semibold">User Management</span>
            </div>
            <i x-show="sidebarOpen" class="fas fa-chevron-down text-xs transition-transform" :class="userMenuOpen ? 'rotate-180' : ''"></i>
        </button>
        <div x-show="userMenuOpen && sidebarOpen" x-transition class="pl-10 pr-3 py-2 space-y-1" style="display:none;">
            <a href="users.php" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">Customer</a>
            <a href="notifications.php" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">Notifications</a>
            <a href="sellers.php" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">Seller</a>
            <a href="staff.php" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">Staff</a>
            <a href="roles.php" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">Custom Role</a>
        </div>
    </div>

    <div x-data="{ serviceMenuOpen: false }">
        <button @click="serviceMenuOpen = !serviceMenuOpen" class="w-full flex items-center justify-between px-3 py-3 text-gray-300 hover:bg-white/5 hover:text-white rounded-xl transition-all group" :class="sidebarOpen ? '' : 'justify-center'">
            <div class="flex items-center">
                <i class="fas fa-layer-group flex-shrink-0" :class="sidebarOpen ? 'w-6 text-center' : 'text-xl'"></i>
                <span x-show="sidebarOpen" class="ml-3 font-semibold">Services Management</span>
            </div>
            <i x-show="sidebarOpen" class="fas fa-chevron-down text-xs transition-transform" :class="serviceMenuOpen ? 'rotate-180' : ''"></i>
        </button>
        <div x-show="serviceMenuOpen && sidebarOpen" x-transition class="pl-10 pr-3 py-2 space-y-1" style="display:none;">
            <a href="product_management.php" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">Product Management</a>
            <a href="services.php#main_cats" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">Main Services</a>
            <a href="services.php#sub_cats" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">Sub Categories</a>
            <a href="pending_services.php" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">Services List</a>
        </div>
    </div>

    <div x-data="{ settingMenuOpen: false }">
        <button @click="settingMenuOpen = !settingMenuOpen" class="w-full flex items-center justify-between px-3 py-3 text-gray-300 hover:bg-white/5 hover:text-white rounded-xl transition-all group" :class="sidebarOpen ? '' : 'justify-center'">
            <div class="flex items-center">
                <i class="fas fa-cogs flex-shrink-0" :class="sidebarOpen ? 'w-6 text-center' : 'text-xl'"></i>
                <span x-show="sidebarOpen" class="ml-3 font-semibold">Website Settings</span>
            </div>
            <i x-show="sidebarOpen" class="fas fa-chevron-down text-xs transition-transform" :class="settingMenuOpen ? 'rotate-180' : ''"></i>
        </button>
        <div x-show="settingMenuOpen && sidebarOpen" x-transition class="pl-10 pr-3 py-2 space-y-1" style="display:none;">
            <a href="settings.php#home_settings" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">Home Page All Settings</a>
            <a href="settings.php#customer_settings" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">Customer Panel Settings</a>
            <a href="settings.php#seller_settings" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">Seller Panel Settings</a>
            <a href="settings.php#staff_settings" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">Staff Panel Settings</a>
        </div>
    </div>

    <div x-data="{ commMenuOpen: false }">
        <button @click="commMenuOpen = !commMenuOpen" class="w-full flex items-center justify-between px-3 py-3 text-gray-300 hover:bg-white/5 hover:text-white rounded-xl transition-all group" :class="sidebarOpen ? '' : 'justify-center'">
            <div class="flex items-center">
                <i class="fas fa-percentage flex-shrink-0" :class="sidebarOpen ? 'w-6 text-center' : 'text-xl'"></i>
                <span x-show="sidebarOpen" class="ml-3 font-semibold">Commission Mgt</span>
            </div>
            <i x-show="sidebarOpen" class="fas fa-chevron-down text-xs transition-transform" :class="commMenuOpen ? 'rotate-180' : ''"></i>
        </button>
        <div x-show="commMenuOpen && sidebarOpen" x-transition class="pl-10 pr-3 py-2 space-y-1" style="display:none;">
            <a href="commissions.php#customer" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">Customer</a>
            <a href="commissions.php#seller" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">Seller</a>
            <a href="commissions.php#staff" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">Staff</a>
            <a href="commissions.php#admin" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">Super Admin</a>
        </div>
    </div>

    <div x-data="{ reportMenuOpen: false }">
        <button @click="reportMenuOpen = !reportMenuOpen" class="w-full flex items-center justify-between px-3 py-3 text-gray-300 hover:bg-white/5 hover:text-white rounded-xl transition-all group" :class="sidebarOpen ? '' : 'justify-center'">
            <div class="flex items-center">
                <i class="fas fa-chart-pie flex-shrink-0" :class="sidebarOpen ? 'w-6 text-center' : 'text-xl'"></i>
                <span x-show="sidebarOpen" class="ml-3 font-semibold">Report Management</span>
            </div>
            <i x-show="sidebarOpen" class="fas fa-chevron-down text-xs transition-transform" :class="reportMenuOpen ? 'rotate-180' : ''"></i>
        </button>
        <div x-show="reportMenuOpen && sidebarOpen" x-transition class="pl-10 pr-3 py-2 space-y-1" style="display:none;">
            <a href="reports.php#all" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">All Report</a>
            <a href="reports.php#customer" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">Customer</a>
            <a href="reports.php#seller" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">Seller</a>
            <a href="reports.php#staff" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">Staff</a>
            <a href="reports.php#admin" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">Super Admin</a>
        </div>
    </div>

    <div x-data="{ helpdeskMenuOpen: false }">
        <button @click="helpdeskMenuOpen = !helpdeskMenuOpen" class="w-full flex items-center justify-between px-3 py-3 text-gray-300 hover:bg-white/5 hover:text-white rounded-xl transition-all group" :class="sidebarOpen ? '' : 'justify-center'">
            <div class="flex items-center">
                <i class="fas fa-headset flex-shrink-0" :class="sidebarOpen ? 'w-6 text-center' : 'text-xl'"></i>
                <span x-show="sidebarOpen" class="ml-3 font-semibold">Helpdesk</span>
            </div>
            <i x-show="sidebarOpen" class="fas fa-chevron-down text-xs transition-transform" :class="helpdeskMenuOpen ? 'rotate-180' : ''"></i>
        </button>
        <div x-show="helpdeskMenuOpen && sidebarOpen" x-transition class="pl-10 pr-3 py-2 space-y-1" style="display:none;">
            <a href="tickets.php#customer" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">User</a>
            <a href="tickets.php#seller" class="block py-2 text-sm text-gray-400 hover:text-emerald-400 transition-colors">Seller</a>
        </div>
    </div>

    <a href="refer.php" class="flex items-center px-3 py-3 text-gray-300 hover:bg-white/5 hover:text-white rounded-xl transition-all" :class="sidebarOpen ? '' : 'justify-center'">
        <i class="fas fa-gift flex-shrink-0" :class="sidebarOpen ? 'w-6 text-center' : 'text-xl'"></i>
        <span x-show="sidebarOpen" class="ml-3 font-semibold">Refer & Earn</span>
    </a>

    <div class="pt-6 mt-6 border-t border-white/10">
        <a href="../logout.php" onclick="return confirm('Are you sure you want to logout?');" class="flex items-center px-3 py-3 text-rose-400 hover:bg-rose-500/20 hover:text-rose-300 rounded-xl transition-all" :class="sidebarOpen ? '' : 'justify-center'">
            <i class="fas fa-sign-out-alt flex-shrink-0" :class="sidebarOpen ? 'w-6 text-center' : 'text-xl'"></i>
            <span x-show="sidebarOpen" class="ml-3">Logout</span>
        </a>
    </div>
</nav>
        </aside>

        <div class="flex-1 flex flex-col min-w-0 bg-gray-100 overflow-hidden">
            <header class="h-20 bg-white flex items-center justify-between px-4 lg:px-8 shadow-sm border-b border-gray-200 z-40 relative">
                <div class="flex items-center">
                    <button @click="sidebarOpen = !sidebarOpen" class="p-2 mr-3 text-slate-500 hover:text-emerald-600 rounded-lg bg-gray-50"><i class="fas fa-bars text-xl"></i></button>
                    <h2 class="text-xl font-bold hidden md:block text-slate-800">Role Management</h2>
                </div>
                
                <div class="flex items-center space-x-3 sm:space-x-5 ml-auto">
                    <div class="relative">
                        <button @click="profileOpen = !profileOpen" @click.away="profileOpen = false" class="flex items-center focus:outline-none">
                            <?php if(!empty($profile_image_url)): ?><img src="<?php echo $profile_image_url; ?>" class="w-10 h-10 rounded-full border-2 border-emerald-100 shadow-sm object-cover"><?php else: ?><div class="w-10 h-10 rounded-full bg-emerald-100 border-2 border-emerald-200 text-emerald-600 flex items-center justify-center font-bold shadow-sm"><?php echo strtoupper(substr($user['name'], 0, 1)); ?></div><?php endif; ?>
                            <i class="fas fa-chevron-down text-xs ml-2 text-slate-400 hidden sm:block"></i>
                        </button>
                        <div x-show="profileOpen" class="absolute right-0 mt-3 w-56 bg-white rounded-xl shadow-2xl py-2 border border-gray-100 z-50" style="display: none;">
                            <a href="profile.php" class="block px-4 py-2 text-sm text-gray-700 hover:bg-emerald-50"><i class="fas fa-user mr-2"></i> My Profile</a>
                            <a href="../logout.php" class="block px-4 py-2 text-sm text-rose-600 hover:bg-rose-50"><i class="fas fa-sign-out-alt mr-2"></i> Logout</a>
                        </div>
                    </div>
                </div>
            </header>

            <main class="flex-1 overflow-y-auto p-4 md:p-6 lg:p-8 relative">
                <div class="flex justify-between items-center mb-6">
                    <div>
                        <h2 class="text-2xl font-bold text-slate-800 mb-1">Custom Roles</h2>
                        <p class="text-gray-500 text-sm">Create and assign specific module access permissions.</p>
                    </div>
                    <button @click="addModal = true" class="bg-emerald-600 hover:bg-emerald-700 text-white font-bold py-2.5 px-5 rounded-xl shadow-md transition-colors"><i class="fas fa-plus-circle mr-2"></i> Create Role</button>
                </div>

                <?php if (isset($_SESSION['flash_success'])): ?>
                <div class="mb-6 bg-emerald-50 text-emerald-700 px-4 py-3 rounded-xl border border-emerald-200"><i class="fas fa-check-circle mr-2"></i><?php echo $_SESSION['flash_success']; unset($_SESSION['flash_success']); ?></div>
                <?php endif; ?>

                <div class="bg-white rounded-2xl shadow-sm border border-gray-200 overflow-hidden">
                    <table class="w-full text-left border-collapse">
                        <thead>
                            <tr class="bg-slate-50 text-xs uppercase text-slate-500 border-b border-gray-200">
                                <th class="p-4 pl-6 font-semibold">Role Name</th>
                                <th class="p-4 font-semibold">Permissions Assigned</th>
                                <th class="p-4 font-semibold text-right pr-6">Action</th>
                            </tr>
                        </thead>
                        <tbody class="divide-y divide-gray-100">
                            <?php foreach($roles as $r): ?>
                            <tr class="hover:bg-slate-50">
                                <td class="p-4 pl-6 font-bold text-slate-800"><i class="fas fa-shield-alt text-emerald-500 mr-2"></i><?php echo htmlspecialchars($r['name']); ?></td>
                                <td class="p-4">
                                    <div class="flex flex-wrap gap-1">
                                        <?php 
                                            $perms = json_decode($r['permissions'], true);
                                            if(in_array('all', $perms)) {
                                                echo '<span class="bg-indigo-100 text-indigo-700 text-[10px] font-bold px-2 py-1 rounded-md">Full System Access</span>';
                                            } else {
                                                foreach($perms as $p) {
                                                    echo '<span class="bg-gray-100 text-gray-700 text-[10px] font-bold px-2 py-1 rounded-md border border-gray-200">' . ($avail_perms[$p] ?? $p) . '</span>';
                                                }
                                            }
                                        ?>
                                    </div>
                                </td>
                                <td class="p-4 pr-6 text-right">
                                    <?php if($r['id'] != 1): ?>
                                    <a href="?delete=<?php echo $r['id']; ?>" onclick="return confirm('Delete this role? Users assigned to it will lose all custom access.');" class="w-8 h-8 inline-flex items-center justify-center rounded-lg bg-rose-50 text-rose-600 hover:bg-rose-100 transition"><i class="fas fa-trash-alt text-xs"></i></a>
                                    <?php else: ?>
                                    <span class="text-xs text-gray-400 font-bold bg-gray-100 px-2 py-1 rounded">System Default</span>
                                    <?php endif; ?>
                                </td>
                            </tr>
                            <?php endforeach; ?>
                        </tbody>
                    </table>
                </div>
            </main>
        </div>
    </div>

    <div x-show="addModal" class="fixed inset-0 z-50 flex items-center justify-center bg-black/60 backdrop-blur-sm p-4" style="display:none;">
        <div @click.away="addModal = false" x-transition class="bg-white rounded-2xl shadow-2xl w-full max-w-xl overflow-hidden border border-gray-100">
            <div class="px-6 py-4 border-b border-gray-100 flex justify-between items-center bg-gray-50">
                <h3 class="font-bold text-gray-900 text-lg">Create Custom Role</h3>
                <button @click="addModal = false" class="text-gray-400 hover:text-rose-500"><i class="fas fa-times text-xl"></i></button>
            </div>
            <form method="POST" class="p-6">
                <div class="mb-4">
                    <label class="block text-sm font-bold text-gray-700 mb-2">Role Name</label>
                    <input type="text" name="role_name" required placeholder="e.g. Sales Manager" class="w-full px-4 py-3 bg-gray-50 border border-gray-200 rounded-xl focus:bg-white focus:ring-2 focus:ring-emerald-500 outline-none transition-all">
                </div>
                <div class="mb-6">
                    <label class="block text-sm font-bold text-gray-700 mb-2">Select Permissions</label>
                    <div class="grid grid-cols-1 sm:grid-cols-2 gap-3 bg-slate-50 p-4 rounded-xl border border-slate-200 h-48 overflow-y-auto">
                        <?php foreach($avail_perms as $key => $label): ?>
                        <label class="flex items-center space-x-3 cursor-pointer bg-white p-2.5 rounded-lg border border-gray-100 shadow-sm hover:border-emerald-300 transition-colors">
                            <input type="checkbox" name="permissions[]" value="<?php echo $key; ?>" class="w-4 h-4 text-emerald-600 rounded focus:ring-emerald-500 border-gray-300">
                            <span class="text-sm font-medium text-gray-800"><?php echo $label; ?></span>
                        </label>
                        <?php endforeach; ?>
                    </div>
                </div>
                <button type="submit" name="add_role" class="w-full bg-emerald-600 hover:bg-emerald-700 text-white font-bold py-3 px-6 rounded-xl shadow-md transition-colors">Save Role</button>
            </form>
        </div>
    </div>
</body>
</html>