
    /* ── MAIN ── */
    .main-content{margin-left:220px;margin-top:64px;min-height:calc(100vh - 64px);padding:28px}
    .page-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:20px}
    .page-title{font-size:22px;font-weight:700;color:var(--text-dark);margin:0}
    .page-subtitle{font-size:13px;color:var(--text-light);margin:4px 0 0;font-weight:500}

    /* ── BUTTONS ── */
    .btn-primary-custom{background:var(--primary);border:none;color:#fff;font-weight:600;font-size:13.5px;padding:9px 18px;border-radius:8px;transition:var(--transition);display:inline-flex;align-items:center;gap:7px;cursor:pointer;white-space:nowrap}
    .btn-primary-custom:hover{background:var(--primary-dark);color:#fff;transform:translateY(-1px);box-shadow:0 4px 12px rgba(124,58,237,.3)}
    .btn-secondary-custom{background:var(--secondary);border:none;color:#fff;font-weight:600;font-size:13.5px;padding:9px 18px;border-radius:8px;transition:var(--transition);display:inline-flex;align-items:center;gap:7px;cursor:pointer;white-space:nowrap}
    .btn-secondary-custom:hover{background:var(--secondary-hover);color:#fff;transform:translateY(-1px)}

    /* ── TOOLBAR BUTTONS (like the screenshot) ── */
    .btn-tool{height:38px;padding:0 16px;border-radius:8px;font-size:13px;font-weight:600;display:inline-flex;align-items:center;gap:7px;cursor:pointer;transition:var(--transition);white-space:nowrap;border:1.5px solid}
    .btn-tool-export{border-color:#10B981;color:#10B981;background:#fff}
    .btn-tool-export:hover{background:#ECFDF5}
    .btn-tool-import{border-color:var(--primary);color:var(--primary);background:#fff}
    .btn-tool-import:hover{background:var(--primary-bg)}
    .btn-tool-arrange{border-color:var(--border-color);color:var(--text-gray);background:#fff}
    .btn-tool-arrange:hover{background:#F9FAFB;border-color:#9CA3AF}
    .btn-tool-add{border-color:var(--secondary);background:var(--secondary);color:#fff}
    .btn-tool-add:hover{background:var(--secondary-hover);border-color:var(--secondary-hover)}

    /* ── TABLE CARD ── */
    .table-card{background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-color);box-shadow:var(--shadow-md);overflow:hidden}

    /* ── TOOLBAR ── */
    .table-toolbar{display:flex;align-items:center;gap:10px;padding:16px 20px;border-bottom:1px solid var(--border-color);flex-wrap:wrap}
    .toolbar-left{display:flex;align-items:center;gap:10px;flex:1;flex-wrap:wrap}
    .toolbar-right{display:flex;align-items:center;gap:8px;flex-wrap:wrap}

    /* Search input — like the screenshot */
    .search-wrap{position:relative}
    .search-wrap i{position:absolute;left:11px;top:50%;transform:translateY(-50%);color:var(--text-light);font-size:14px;pointer-events:none}
    .search-wrap input{height:38px;border:1.5px solid var(--border-color);border-radius:8px;padding:0 14px 0 34px;font-size:13px;color:var(--text-dark);background:#fff;outline:none;transition:var(--transition);width:220px;font-family:'Inter',sans-serif}
    .search-wrap input:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(124,58,237,.1)}

    /* Filter dropdowns — pill-style like the screenshot */
    .filter-pill{height:38px;border:1.5px solid var(--border-color);border-radius:8px;padding:0 12px;font-size:13px;font-weight:500;color:var(--text-dark);background:#fff;outline:none;cursor:pointer;transition:var(--transition);font-family:'Inter',sans-serif;display:inline-flex;align-items:center;gap:6px}
    .filter-pill:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(124,58,237,.1)}
    select.filter-pill{padding-right:28px;appearance:auto}

    /* ── BULK BAR ── */
    #bulkBar{display:none;align-items:center;gap:12px;padding:10px 20px;background:var(--primary-lighter);border-bottom:1px solid rgba(124,58,237,.2);font-size:13px;font-weight:600;color:var(--primary);flex-wrap:wrap}
    #bulkBar.show{display:flex}
    .btn-bulk{height:34px;padding:0 14px;border-radius:8px;font-size:12.5px;font-weight:600;cursor:pointer;border:1.5px solid;display:inline-flex;align-items:center;gap:5px;transition:var(--transition);font-family:'Inter',sans-serif}
    .btn-bulk-delete{border-color:#EF4444;color:#EF4444;background:#fff}
    .btn-bulk-delete:hover{background:#FEF2F2}
    .btn-bulk-clear{border-color:var(--primary);color:var(--primary);background:#fff}
    .btn-bulk-clear:hover{background:var(--primary-bg)}

    /* ── DATATABLES OVERRIDES ── */
    .dataTables_wrapper .dataTables_filter,
    .dataTables_wrapper .dataTables_length{display:none!important}

    /* Pagination */
    .dataTables_wrapper .dataTables_paginate{padding:14px 20px;display:flex;justify-content:flex-end}
    .dataTables_wrapper .dataTables_info{padding:18px 20px 0;font-size:13px;color:var(--text-gray)}

    /* Bottom bar — show entries + pagination on same row */
    .dt-bottom-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;border-top:1px solid var(--border-color);flex-wrap:wrap;gap:8px}
    .dt-show-wrap{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-gray)}
    .dt-show-wrap select{height:32px;border:1.5px solid var(--border-color);border-radius:6px;padding:0 8px;font-size:13px;font-family:'Inter',sans-serif;outline:none;cursor:pointer;color:var(--text-dark)}
    .dt-show-wrap select:focus{border-color:var(--primary)}
    .dt-entries-info{font-size:13px;color:var(--text-gray);white-space:nowrap}

    /* Pagination buttons */
    .dataTables_wrapper .paginate_button{display:inline-flex!important;align-items:center;justify-content:center;width:34px;height:34px;border-radius:8px!important;border:1px solid var(--border-color)!important;font-size:13px;font-weight:500;color:var(--text-dark)!important;margin:0 2px;cursor:pointer;transition:var(--transition);background:#fff!important;box-shadow:none!important}
    .dataTables_wrapper .paginate_button:hover:not(.disabled):not(.current){background:var(--primary-bg)!important;border-color:var(--primary-lighter)!important;color:var(--primary)!important}
    .dataTables_wrapper .paginate_button.current{background:var(--primary)!important;border-color:var(--primary)!important;color:#fff!important;font-weight:700}
    .dataTables_wrapper .paginate_button.disabled{opacity:.4;cursor:default}
    .dataTables_wrapper .paginate_button.previous,.dataTables_wrapper .paginate_button.next{width:34px!important;padding:0!important}

    /* Table */
    table.dataTable{border-collapse:collapse!important;width:100%!important}

    /* Header — matches the screenshot: light gray bg, uppercase small caps */
    table.dataTable thead th{
      background:#F9FAFB!important;
      color:var(--text-gray)!important;
      font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;
      padding:12px 16px!important;
      border-bottom:1px solid var(--border-color)!important;
      border-top:none!important;
      white-space:nowrap;
    }
    table.dataTable thead th.sorting:after,
    table.dataTable thead th.sorting_asc:after,
    table.dataTable thead th.sorting_desc:after{color:var(--text-light)!important;opacity:1}

    /* Rows */
    table.dataTable tbody tr{transition:background var(--transition)}
    table.dataTable tbody tr:hover td{background:#FAFAFA!important}
    table.dataTable tbody tr.selected td{background:#F5F3FF!important}
    table.dataTable tbody td{
      padding:13px 16px!important;
      border-bottom:1px solid var(--border-color)!important;
      font-size:13.5px;vertical-align:middle;
      border-top:none!important;
      color:var(--text-dark);
    }

    /* ── CUSTOM CHECKBOX — indeterminate state ── */
    .dt-checkbox{width:16px;height:16px;border-radius:4px;border:2px solid var(--border-color);appearance:none;-webkit-appearance:none;cursor:pointer;transition:var(--transition);position:relative;flex-shrink:0;vertical-align:middle}
    .dt-checkbox:checked{background:var(--primary);border-color:var(--primary)}
    .dt-checkbox:checked::after{content:'';position:absolute;left:3px;top:0px;width:5px;height:9px;border:2px solid #fff;border-top:none;border-left:none;transform:rotate(45deg)}
    .dt-checkbox:indeterminate{background:var(--primary);border-color:var(--primary)}
    .dt-checkbox:indeterminate::after{content:'';position:absolute;left:2px;top:5px;width:8px;height:2px;background:#fff;border:none}
    .dt-checkbox:hover{border-color:var(--primary)}
    /* header TH for checkbox col */
    table.dataTable thead th:first-child{text-align:center;padding-left:16px!important}

    /* ── ROW NUMBER ── */
    .row-num{color:var(--text-light);font-size:13px;font-weight:500}

    /* ── STUDENT CELL ── */
    .student-cell{display:flex;align-items:center;gap:10px}
    .student-avatar{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px;flex-shrink:0}
    .student-info .s-name{font-weight:600;font-size:13.5px;color:var(--text-dark)}
    .student-info .s-id{font-size:11.5px;color:var(--text-light)}

    /* ── TYPE BADGES (like MCQ, MR, T/F, SA, NUM, ESSAY) ── */
    .type-badge{display:inline-flex;align-items:center;justify-content:center;padding:3px 10px;border-radius:6px;font-size:11.5px;font-weight:700;letter-spacing:.3px;min-width:48px}
    .type-web   {background:#DBEAFE;color:#1E40AF}
    .type-design{background:#FCE7F3;color:#9D174D}
    .type-prog  {background:#D1FAE5;color:#065F46}
    .type-biz   {background:#FEF3C7;color:#92400E}
    .type-lang  {background:#EDE9FE;color:#5B21B6}
    .type-health{background:#ECFDF5;color:#065F46}

    /* ── LEVEL BADGES (with icon dot) ── */
    .level-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:6px;font-size:12px;font-weight:600;white-space:nowrap}
    .level-badge .lvl-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}
    /* Easy — green */
    .lvl-easy{background:transparent;color:#059669}
    .lvl-easy .lvl-dot{background:#10B981}
    /* Medium — amber diamond (use unicode ◆) */
    .lvl-medium{background:transparent;color:#D97706}
    .lvl-medium .lvl-dot{background:#F59E0B;border-radius:2px;transform:rotate(45deg)}
    /* Hard — red triangle */
    .lvl-hard{background:transparent;color:#DC2626}
    .lvl-hard .lvl-dot{width:0;height:0;background:transparent;border-left:4px solid transparent;border-right:4px solid transparent;border-bottom:7px solid #EF4444;border-radius:0}

    /* ── STATUS (dot + text, no bg) ── */
    .status-cell{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:500}
    .status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
    .s-active .status-dot{background:#10B981}
    .s-active{color:#059669}
    .s-inactive .status-dot{background:#EF4444}
    .s-inactive{color:#DC2626}
    .s-pending .status-dot{background:#F59E0B}
    .s-pending{color:#D97706}

    /* ── POINTS ── */
    .pts-cell{font-size:13.5px;color:var(--text-dark)}
    .pts-cell strong{font-weight:700}
    .pts-cell span{color:var(--text-light);font-size:12px}

    /* ── ACTION ICON BUTTONS (pencil / copy / trash — like screenshot) ── */
    .actions-cell{display:flex;align-items:center;gap:6px}
    .act-btn{width:30px;height:30px;border-radius:6px;border:none;background:transparent;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition);font-size:14px}
    .act-btn-edit{color:#9CA3AF}
    .act-btn-edit:hover{background:var(--primary-lighter);color:var(--primary)}
    .act-btn-copy{color:#9CA3AF}
    .act-btn-copy:hover{background:#E0F2FE;color:#0284C7}
    .act-btn-del{color:#9CA3AF}
    .act-btn-del:hover{background:#FEE2E2;color:#EF4444}

    /* ── MODALS ── */
    .modal-top-accent{height:4px;background:var(--secondary)}
    .modal-top-accent-purple{height:4px;background:var(--primary)}
    .modal-content{border-radius:16px!important;border:none!important;overflow:hidden;box-shadow:var(--shadow-lg)!important}
    .modal-header{border-bottom:1px solid var(--border-color)!important;padding:20px 24px!important}
    .modal-title{font-size:17px!important;font-weight:700!important;color:var(--text-dark)!important}
    .modal-body{padding:24px!important}
    .modal-footer{border-top:1px solid var(--border-color)!important;padding:16px 24px!important}
    .form-label{font-size:13px;font-weight:600;color:var(--text-dark);margin-bottom:5px}
    .form-label .req{color:#EF4444}
    .form-control,.form-select{border:1.5px solid var(--border-color)!important;font-size:13.5px!important;color:var(--text-dark)!important;font-family:'Inter',sans-serif!important;height:42px}
    textarea.form-control{height:auto!important}
    .form-control:focus,.form-select:focus{border-color:var(--primary)!important;box-shadow:0 0 0 3px rgba(124,58,237,.12)!important}
    
    .del-icon-wrap{width:68px;height:68px;border-radius:50%;background:#FEE2E2;display:flex;align-items:center;justify-content:center;font-size:28px;color:#EF4444;margin:0 auto 16px}

    /* ── TOAST ── */
    .toast-container{position:fixed;bottom:24px;right:24px;z-index:9999}
    .toast-item{background:#fff;border-radius:var(--radius);padding:13px 18px;box-shadow:var(--shadow-lg);border-left:4px solid var(--primary);display:flex;align-items:center;gap:12px;min-width:250px;font-size:13.5px;font-weight:500;color:var(--text-dark);margin-top:8px;animation:slideUp .3s ease}
    .toast-item.t-success{border-left-color:#10B981}
    .toast-item.t-danger {border-left-color:#EF4444}
    .toast-item i{font-size:17px}
    .toast-item.t-success i{color:#10B981}
    .toast-item.t-danger  i{color:#EF4444}
    @keyframes slideUp{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}

    /* ── STATS CARDS ── */
    .stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}
    @media(max-width:900px){.stats-row{grid-template-columns:repeat(2,1fr)}}
    .stat-card{background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);padding:18px 20px;display:flex;align-items:center;gap:14px;transition:var(--transition)}
    .stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}
    .stat-icon{width:46px;height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}
    .stat-icon-total  {background:#EDE9FE;color:#7C3AED}
    .stat-icon-active {background:#D1FAE5;color:#059669}
    .stat-icon-pending{background:#FEF3C7;color:#D97706}
    .stat-icon-inactive{background:#FEE2E2;color:#DC2626}
    .stat-label{font-size:12px;font-weight:500;color:var(--text-gray);margin-bottom:2px}
    .stat-value{font-size:24px;font-weight:800;color:var(--text-dark);line-height:1}
    .stat-change{font-size:11.5px;font-weight:600;margin-top:4px}
    .stat-change.up{color:#059669}
    .stat-change.down{color:#DC2626}

    /* ── ARRANGE DROPDOWN ── */
    .arrange-wrap{position:relative}
    .arrange-dropdown{display:none;position:absolute;top:calc(100% + 6px);right:0;background:#fff;border:1px solid var(--border-color);border-radius:var(--radius);box-shadow:var(--shadow-lg);z-index:500;min-width:210px;padding:8px 0;animation:fadeIn .15s ease}
    .arrange-dropdown.open{display:block}
    @keyframes fadeIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}
    .arrange-section-label{padding:6px 14px 2px;font-size:10.5px;font-weight:700;color:var(--text-light);text-transform:uppercase;letter-spacing:.6px}
    .arrange-item{display:flex;align-items:center;gap:10px;padding:8px 14px;font-size:13px;font-weight:500;color:var(--text-dark);cursor:pointer;transition:var(--transition);user-select:none}
    .arrange-item:hover{background:var(--primary-bg)}
    .arrange-item input[type=checkbox]{width:15px;height:15px;accent-color:var(--primary);cursor:pointer;flex-shrink:0}
    .arrange-divider{height:1px;background:var(--border-color);margin:6px 0}
    .arrange-sort-item{display:flex;align-items:center;gap:10px;padding:7px 14px;font-size:13px;color:var(--text-dark);cursor:default;user-select:none}
    .arrange-sort-item .drag-h{color:var(--text-light);cursor:grab;font-size:15px}
    .arrange-sort-item .drag-h:active{cursor:grabbing}
    .arrange-sort-item.sortable-chosen{background:var(--primary-bg)}

    /* ── VIEW MODAL ── */
    .view-profile-top{background:linear-gradient(135deg,#7C3AED 0%,#5B21B6 100%);padding:28px 24px 24px;text-align:center;color:#fff}
    .view-avatar-lg{width:72px;height:72px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:26px;margin:0 auto 12px;border:3px solid rgba(255,255,255,.3)}
    .view-name{font-size:18px;font-weight:700;margin-bottom:3px}
    .view-sid{font-size:12.5px;opacity:.75;letter-spacing:.3px}
    .view-badges{display:flex;justify-content:center;gap:8px;margin-top:10px;flex-wrap:wrap}
    .view-info-grid{display:grid;grid-template-columns:1fr 1fr}
    .view-info-item{padding:14px 20px;border-bottom:1px solid var(--border-color)}
    .view-info-item:nth-child(odd){border-right:1px solid var(--border-color)}
    .view-info-label{font-size:10.5px;font-weight:700;color:var(--text-light);text-transform:uppercase;letter-spacing:.5px;margin-bottom:5px}
    .view-info-value{font-size:13.5px;font-weight:600;color:var(--text-dark)}
    .view-actions-bar{display:flex;gap:10px;padding:16px 20px;border-top:1px solid var(--border-color);background:#FAFAFA}

    /* ── IMPORT DROPZONE ── */
    .dropzone{border:2px dashed var(--border-color);border-radius:var(--radius);padding:32px 20px;text-align:center;cursor:pointer;transition:var(--transition)}
    .dropzone:hover,.dropzone.dragover{border-color:var(--primary);background:var(--primary-bg)}
    .dropzone-icon{font-size:36px;color:var(--text-light);display:block;margin-bottom:10px}
    .dz-text{font-size:13.5px;font-weight:600;color:var(--text-dark)}
    .dz-sub{font-size:12px;color:var(--text-light);margin-top:4px}
    .import-file-row{background:#F9FAFB;border-radius:8px;padding:10px 14px;font-size:13px;color:var(--text-dark);display:flex;align-items:center;gap:10px;border:1px solid var(--border-color)}

    /* ── SHORTCUT HINT ── */
    .shortcut-bar{display:flex;align-items:center;gap:16px;padding:8px 20px;background:#F9FAFB;border-bottom:1px solid var(--border-color);font-size:11.5px;color:var(--text-gray);flex-wrap:wrap}
    .shortcut-bar span{display:flex;align-items:center;gap:5px}
    kbd{display:inline-flex;align-items:center;justify-content:center;background:#fff;border:1px solid #D1D5DB;border-radius:5px;padding:1px 7px;font-size:10.5px;font-weight:600;color:var(--text-gray);font-family:monospace;box-shadow:0 1px 2px rgba(0,0,0,.08)}

    /* ── ROW CLICK CURSOR ── */
    table.dataTable tbody tr{cursor:pointer}
    table.dataTable tbody tr td:last-child{cursor:default}

    /* ── SELECT2 STYLING ── */
    .select2-container{width:100%!important}
    .select2-container--default .select2-selection--single{height:42px;border:1.5px solid var(--border-color)!important;border-radius:9px!important;background-color:#fff;padding:0;display:flex;align-items:center}
    .select2-container--default .select2-selection--single .select2-selection__rendered{padding:0 14px;font-size:13.5px!important;color:var(--text-dark)!important;font-family:'Inter',sans-serif!important;line-height:40px;overflow:hidden}
    .select2-container--default .select2-selection--single .select2-selection__arrow{right:12px;width:20px;height:20px}
    .select2-container--default .select2-selection--single .select2-selection__arrow b{border-color:#9CA3AF transparent transparent transparent;top:8px}
    .select2-container--default.select2-container--focus .select2-selection--single{border-color:var(--primary)!important;box-shadow:0 0 0 3px rgba(124,58,237,.12)!important}
    .select2-container--default.select2-container--open .select2-selection--single{border-color:var(--primary)!important;border-radius:9px 9px 0 0!important}
    .select2-dropdown{border:1.5px solid var(--border-color)!important;border-top:none!important;border-radius:0 0 9px 9px!important;box-shadow:0 4px 6px rgba(0,0,0,.07)!important}
    .select2-container--default .select2-search--dropdown{padding:8px}
    .select2-container--default .select2-search--dropdown .select2-search__field{border:1.5px solid var(--border-color)!important;border-radius:8px;padding:8px 12px;font-size:13.5px;font-family:'Inter',sans-serif!important;color:var(--text-dark)!important}
    .select2-container--default .select2-search--dropdown .select2-search__field:focus{border-color:var(--primary)!important;outline:none}
    .select2-container--default .select2-results__option{padding:8px 14px;font-size:13px;color:var(--text-dark);font-family:'Inter',sans-serif}
    .select2-container--default .select2-results__option--highlighted[aria-selected]{background-color:var(--primary-bg)!important;color:var(--text-dark)!important}
    .select2-container--default .select2-results__option[aria-selected=true]{background-color:#fff;color:var(--text-dark)}
    .select2-results__option:first-child{border-radius:6px 6px 0 0}
    .select2-results__option:last-child{border-radius:0 0 6px 6px}
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
    background-color: var(--primary);
    border-right: 1px solid var(--primary);
    color: var(--bg-card);
}
.select2-container--default .select2-selection--multiple .select2-selection__choice {
    background-color: var(--primary);
    border: 1px solid var(--primary);
    color: #fff;
}

 /*---------------------users-----------------------*/
  .users-surface{
      background:#fff;
      border:1px solid rgba(229,231,235,.9);
      border-radius:18px;
      box-shadow:0 10px 30px rgba(17,24,39,.05);
      padding:24px;
    }
    .users-toggle{
      display:grid;
      grid-template-columns:repeat(2,minmax(0,1fr));
      gap:0;
      background:#f3f4f6;
      border-radius:14px;
      padding:4px;
      border:1px solid #eceef3;
      margin-bottom:18px;
    }
    .users-toggle button{
      border:none;
      background:transparent;
      border-radius:12px;
      padding:16px 18px;
      font-size:14px;
      font-weight:600;
      color:#6B7280;
      transition:.18s ease;
    }
    .users-toggle button.active{
      background:#fff;
      color:#6D28D9;
      box-shadow:0 4px 12px rgba(17,24,39,.06);
    }
    .users-toolbar{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:14px;
      margin:10px 0 14px;
      flex-wrap:wrap;
    }
    .users-search{
      flex:1 1 320px;
      max-width:420px;
      position:relative;
    }
    .users-search i{
      position:absolute;
      left:14px;
      top:50%;
      transform:translateY(-50%);
      color:#9CA3AF;
      font-size:14px;
    }
    .users-search input{
      width:100%;
      height:44px;
      border:1.5px solid #D7DCE5;
      border-radius:12px;
      padding:0 16px 0 38px;
      font-size:14px;
      outline:none;
      transition:.18s ease;
      background:#fff;
    }
    .users-search input:focus{
      border-color:#7C3AED;
      box-shadow:0 0 0 3px rgba(124,58,237,.12);
    }
    .users-button{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:8px;
      height:44px;
      padding:0 22px;
      border-radius:14px;
      border:none;
      font-size:14px;
      font-weight:700;
      transition:.18s ease;
      white-space:nowrap;
    }
    .users-button.invite{
      background:#F6B73D;
      color:#fff;
      box-shadow:0 8px 20px rgba(246,183,61,.22);
    }
    .users-button.invite:hover{background:#eaab1c}
    .users-button.secondary{
      background:#fff;
      color:#6B7280;
      border:1.5px solid #D1D5DB;
    }
    .users-button.primary{
      background:#6D28D9;
      color:#fff;
    }
    .users-table-wrap{
      border:1px solid #eef1f7;
      border-radius:16px;
      padding:2px 0 0;
      background:#fff;
      overflow:hidden;
    }
    .users-table{
      width:100%;
      border-collapse:separate;
      border-spacing:0 10px;
      padding:0 12px 8px;
    }
    .users-table thead th{
      background:#E8DCFF;
      color:#6D28D9;
      font-weight:700;
      font-size:14px;
      padding:14px 16px;
      border:none;
      text-align:left;
    }
    .users-table thead th:first-child{
      border-radius:12px 0 0 12px;
      width:42px;
      text-align:center;
    }
    .users-table thead th:last-child{
      border-radius:0 12px 12px 0;
      width:110px;
    }
    .users-table tbody tr{
      box-shadow:0 2px 12px rgba(17,24,39,.04);
    }
    .users-table tbody td{
      background:#fff;
      padding:16px 16px;
      font-size:14px;
      color:#1F2937;
      border-top:1px solid #EEF0F5;
      border-bottom:1px solid #EEF0F5;
      vertical-align:middle;
    }
    .users-table tbody td:first-child{
      border-left:1px solid #EEF0F5;
      border-radius:12px 0 0 12px;
      text-align:center;
    }
    .users-table tbody td:last-child{
      border-right:1px solid #EEF0F5;
      border-radius:0 12px 12px 0;
    }
    .users-table tbody tr.selected td{
      background:#FBF8FF;
    }
    .user-role-badge{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      min-width:92px;
      height:30px;
      padding:0 12px;
      border-radius:999px;
      font-size:12px;
      font-weight:700;
      background:#F5F3FF;
      color:#6D28D9;
      border:1px solid #E9D5FF;
    }
    .row-action-btn{
      width:32px;
      height:32px;
      border:1px solid #D8C7FF;
      background:#fff;
      color:#6D28D9;
      border-radius:10px;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      transition:.18s ease;
      padding:0;
    }
    .row-action-btn:hover{
      background:#F5F3FF;
    }
    .users-pagination{
      display:flex;
      justify-content:center;
      align-items:center;
      gap:8px;
      padding:20px 0 12px;
      flex-wrap:wrap;
    }
    .users-page-btn{
      width:32px;
      height:32px;
      border-radius:8px;
      border:1px solid #E5E7EB;
      background:#fff;
      color:#6D28D9;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      font-size:13px;
      cursor:pointer;
    }
    .users-page-btn.active{
      background:#6D28D9;
      color:#fff;
      border-color:#6D28D9;
    }
    .users-page-ellipsis{
      color:#9CA3AF;
      padding:0 2px;
    }
    .users-footer{
      display:flex;
      justify-content:flex-end;
      gap:12px;
      margin-top:18px;
      flex-wrap:wrap;
    }
    .invite-panel{
      background:#fff;
      border:1px solid #EEF0F5;
      border-radius:16px;
      box-shadow:0 10px 26px rgba(17,24,39,.04);
      padding:24px;
    }
    .invite-panel-title{
      font-size:18px;
      font-weight:700;
      color:#111827;
      margin-bottom:18px;
    }
    .invite-helper{
      font-size:13px;
      color:#6B7280;
      margin-top:8px;
    }
    .evaluation-modal .modal-content{
      border:none;
      border-radius:22px;
      overflow:hidden;
      box-shadow:0 24px 70px rgba(17,24,39,.2);
    }
    .evaluation-head{
      background:linear-gradient(135deg,#6D28D9 0%,#7C3AED 100%);
      color:#fff;
      padding:22px 24px;
    }
    .evaluation-head h5{
      margin:0;
      font-size:18px;
      font-weight:700;
    }
    .evaluation-meta{
      font-size:13px;
      opacity:.9;
      margin-top:4px;
    }
    .star-rating{
      display:flex;
      gap:8px;
      flex-wrap:wrap;
    }
    .star-rating button{
      width:36px;
      height:36px;
      border-radius:10px;
      border:1px solid #E5E7EB;
      background:#fff;
      color:#9CA3AF;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      font-size:16px;
      transition:.18s ease;
    }
    .star-rating button.active{
      background:#6D28D9;
      color:#fff;
      border-color:#6D28D9;
    }
    .eval-chip-row{
      display:flex;
      gap:10px;
      flex-wrap:wrap;
    }
    .eval-chip{
      border:1px solid #E5E7EB;
      background:#F9FAFB;
      border-radius:999px;
      padding:8px 12px;
      font-size:12px;
      color:#374151;
      display:inline-flex;
      align-items:center;
      gap:6px;
    }
    .eval-chip strong{color:#111827}
    .form-label-soft{
      font-size:13px;
      font-weight:600;
      color:#374151;
      margin-bottom:6px;
    }
    .eval-side-card{
      background:#FBFAFF;
      border:1px solid #E9D5FF;
      border-radius:14px;
      padding:16px;
    }
    .mode-hidden{display:none!important;}
    @media (max-width: 992px){
      .users-toolbar{align-items:stretch}
      .users-search{max-width:none;flex-basis:100%}
      .users-button{width:100%}
      .users-footer{justify-content:stretch}
      .users-footer .users-button{flex:1 1 180px}
    }
    @media (max-width: 768px){
      .users-surface{padding:18px}
      .users-table{padding:0 8px 8px}
      .users-table thead th,
      .users-table tbody td{padding:12px 10px;font-size:13px}
      .users-toggle button{padding:14px 10px}
    }
/* Styles from allcourses-bootstrap */

        /* â”€â”€ Course Card â”€â”€ */
        .course-card-bs {
            background: #fff;
            border-radius: 16px;
            border: 1px solid #E5E7EB;
            overflow: hidden;
            transition: box-shadow 0.25s, transform 0.25s;
            text-decoration: none;
            color: inherit;
            display: block;
        }
        .course-card-bs:hover {
            box-shadow: 0 8px 24px rgba(124,58,237,0.12);
            transform: translateY(-3px);
            color: inherit;
            text-decoration: none;
        }
        .course-thumb {
            position: relative;
            overflow: hidden;
            height: 170px;
        }
        .course-thumb img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.35s ease;
        }
        .course-card-bs:hover .course-thumb img {
            transform: scale(1.06);
        }
        .play-overlay {
            position: absolute;
            inset: 0;
            background: rgba(0,0,0,0.15);
            display: flex;
            align-items: center;
            justify-content: center;
            opacity: 0;
            transition: opacity 0.25s;
        }
        .course-card-bs:hover .play-overlay { opacity: 1; }
        .play-overlay i {
            font-size: 48px;
            color: #fff;
            filter: drop-shadow(0 2px 6px rgba(0,0,0,0.5));
        }
        .course-body { padding: 14px 16px 12px; }
        .course-meta {
            display: flex;
            align-items: center;
            justify-content: space-between;
            margin-bottom: 6px;
        }
        .course-tag {
            background: #F3E8FF;
            color: #7C3AED;
            font-size: 11px;
            font-weight: 600;
            border-radius: 50px;
            padding: 2px 10px;
            text-transform: uppercase;
            letter-spacing: 0.4px;
        }
        .course-price {
            font-weight: 700;
            color: #7C3AED;
            font-size: 15px;
        }
        .course-title {
            font-size: 14px;
            font-weight: 600;
            color: #111827;
            margin-bottom: 6px;
            line-height: 1.35;
            display: -webkit-box;
            -webkit-line-clamp: 2;
            -webkit-box-orient: vertical;
            overflow: hidden;
        }
        .course-status {
            font-size: 12px;
            font-weight: 500;
            margin-bottom: 6px;
            display: flex;
            align-items: center;
            gap: 5px;
        }
        .status-dot { font-size: 8px; }
        .status-finished  { color: #059669; }
        .status-published { color: #3B82F6; }
        .status-unpublished { color: #F59E0B; }
        .status-draft     { color: #9CA3AF; }
        .status-progress  { color: #7C3AED; }
        .course-info-row {
            display: flex;
            align-items: center;
            gap: 10px;
            font-size: 12px;
            color: #6B7280;
            margin-bottom: 10px;
            flex-wrap: wrap;
        }
        .course-info-row i { font-size: 13px; }
        .course-footer {
            border-top: 1px solid #F3F4F6;
            padding: 8px 16px;
            display: flex;
            align-items: center;
            justify-content: space-between;
        }
        .course-rating { font-size: 13px; color: #374151; font-weight: 500; }
        .course-rating i { color: #F59E0B; margin-right: 2px; }
        .course-students { font-size: 12px; color: #6B7280; }
        .course-students i { color: #7C3AED; margin-right: 2px; }

        /* â”€â”€ Results Count â”€â”€ */
        .results-count {
            font-size: 14px;
            color: #6B7280;
        }
        .results-count strong { color: #111827; }

        /* â”€â”€ Filter Offcanvas â”€â”€ */
        .filter-offcanvas .offcanvas-header {
            background: #7C3AED;
            color: #fff;
        }
        .filter-offcanvas .offcanvas-header .btn-close {
            filter: invert(1) grayscale(100%) brightness(200%);
        }
        .filter-accordion .accordion-button {
            font-weight: 600;
            font-size: 14px;
            color: #374151;
            background: transparent;
            box-shadow: none;
            border-bottom: 1px solid #F3F4F6;
            padding: 12px 0;
        }
        .filter-accordion .accordion-button:not(.collapsed) {
            color: #7C3AED;
            background: transparent;
        }
        .filter-accordion .accordion-button::after {
            background-size: 14px;
        }
        .filter-accordion .accordion-body {
            padding: 10px 0;
        }
        .filter-accordion .accordion-item {
            border: none;
            border-bottom: 1px solid #F3F4F6;
        }
        .filter-check-item {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding: 6px 0;
        }
        .filter-check-item label {
            font-size: 13px;
            color: #374151;
            cursor: pointer;
            margin: 0;
        }
        .filter-check-item .count {
            font-size: 12px;
            color: #9CA3AF;
            font-weight: 500;
        }
        .filter-check-item input[type="checkbox"] {
            accent-color: #7C3AED;
            width: 16px;
            height: 16px;
            cursor: pointer;
        }
        .filter-actions {
            padding: 16px 0 4px;
            display: flex;
            gap: 12px;
        }
        .sub-cat-indent { padding-left: 16px; }
        .sub-cat-toggle {
            font-size: 13px;
            font-weight: 600;
            color: #6B7280;
            cursor: pointer;
            padding: 4px 0;
            display: flex;
            align-items: center;
            gap: 6px;
        }
        .sub-cat-toggle i { font-size: 12px; }

        /* â”€â”€ Filter bar â”€â”€ */
        .filter-bar {
            display: flex;
            align-items: center;
            gap: 12px;
            margin-bottom: 18px;
            flex-wrap: wrap;
        }
        .btn-filter {
            border: 1px solid #D1D5DB;
            background: #fff;
            color: #374151;
            border-radius: 8px;
            font-size: 13px;
            font-weight: 500;
            padding: 8px 16px;
            display: flex;
            align-items: center;
            gap: 6px;
            transition: 0.2s;
        }
        .btn-filter:hover { border-color: #7C3AED; color: #7C3AED; }
        .search-bar-courses {
            flex: 1;
            min-width: 200px;
            position: relative;
        }
        .search-bar-courses input {
            width: 100%;
            border: 1px solid #E5E7EB;
            border-radius: 10px;
            padding: 9px 16px 9px 38px;
            font-size: 13px;
            outline: none;
            transition: border-color 0.2s, box-shadow 0.2s;
        }
        .search-bar-courses input:focus {
            border-color: #7C3AED;
            box-shadow: 0 0 0 3px rgba(124,58,237,0.1);
        }
        .search-bar-courses i {
            position: absolute;
            left: 12px;
            top: 50%;
            transform: translateY(-50%);
            color: #9CA3AF;
            font-size: 15px;
        }

        /* â”€â”€ Star rating â”€â”€ */
        .star-row { display: flex; align-items: center; gap: 4px; }
        .star-row i { color: #F59E0B; font-size: 13px; }
    
/* Styles from add_permissions */

  body { background: #f4f6fb; font-family: 'Segoe UI', sans-serif; }
  .page-wrapper { max-width: 1100px; margin: 40px auto; padding: 0 20px; }

  .page-header {
    display: flex; align-items: center; justify-content: space-between;
    margin-bottom: 28px;
  }
  .page-header h2 {
    font-size: 22px; font-weight: 700; color: #2c2f6b; margin: 0;
    display: flex; align-items: center; gap: 10px;
  }
  .page-header h2 span.accent-bar {
    display: inline-block; width: 4px; height: 24px; background: #5c52e8;
    border-radius: 4px;
  }

  .card-panel {
    background: #fff;
    border-radius: 14px;
    box-shadow: 0 2px 16px rgba(92,82,232,0.07);
    padding: 28px 32px;
    margin-bottom: 24px;
  }

  .section-label {
    font-size: 11px; font-weight: 700; letter-spacing: 1.2px;
    text-transform: uppercase; color: #9b99c0; margin-bottom: 16px;
  }

  .uk-input, .uk-textarea {
    border-radius: 9px !important;
    border: 1.5px solid #e4e3f3 !important;
    font-size: 14px !important;
    background: #fafafe !important;
    color: #2c2f6b !important;
    transition: border-color 0.2s;
  }
  .uk-input:focus, .uk-textarea:focus {
    border-color: #5c52e8 !important;
    background: #fff !important;
  }
  .uk-label-small { font-size: 13px; color: #444; font-weight: 500; }

  .activate-toggle {
    display: flex; align-items: center; gap: 10px;
    margin-bottom: 20px;
  }
  .activate-toggle label { font-size: 14px; font-weight: 600; color: #2c2f6b; }

  .perm-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
    gap: 16px;
  }
  .perm-module {
    border: 1.5px solid #e4e3f3;
    border-radius: 11px;
    overflow: hidden;
    background: #fafafe;
    transition: box-shadow 0.2s, border-color 0.2s;
  }
  .perm-module:hover { box-shadow: 0 4px 18px rgba(92,82,232,0.10); border-color: #c2bef8; }
  .perm-module.active { border-color: #5c52e8; background: #f5f4ff; }

  .perm-module-header {
    display: flex; align-items: center; justify-content: space-between;
    padding: 12px 14px;
    background: #fff;
    border-bottom: 1.5px solid #e4e3f3;
  }
  .perm-module-header .mod-title {
    font-size: 13px; font-weight: 700; color: #2c2f6b;
    display: flex; align-items: center; gap: 8px;
  }
  .perm-module-header .mod-title .mod-icon {
    width: 28px; height: 28px; border-radius: 7px;
    background: #eeecfd; display: flex; align-items: center; justify-content: center;
  }

  .perm-actions {
    display: flex; flex-wrap: wrap; gap: 6px;
    padding: 12px 14px;
  }

  /* Pill â€” pure <span>, no <label> or <input> */
  .perm-pill {
    display: inline-flex; align-items: center; gap: 6px;
    background: #fff; border: 1.5px solid #e4e3f3;
    border-radius: 20px; padding: 5px 12px;
    font-size: 12px; font-weight: 500; color: #555;
    cursor: pointer; transition: all 0.15s; user-select: none;
    white-space: nowrap;
  }
  .perm-pill:hover { border-color: #5c52e8; color: #5c52e8; background: #f0effe; }
  .perm-pill.checked {
    background: #5c52e8; border-color: #5c52e8; color: #fff;
  }
  .perm-pill .pill-check {
    width: 14px; height: 14px; border-radius: 50%;
    border: 1.5px solid #ccc;
    display: flex; align-items: center; justify-content: center;
    font-size: 9px; color: transparent;
    transition: all 0.15s; flex-shrink: 0;
  }
  .perm-pill.checked .pill-check {
    background: rgba(255,255,255,0.25); border-color: rgba(255,255,255,0.5); color: #fff;
  }

  .select-all-btn {
    font-size: 11px; font-weight: 600; color: #5c52e8;
    background: none; border: none; cursor: pointer; padding: 0;
    text-decoration: underline; opacity: 0.8;
  }
  .select-all-btn:hover { opacity: 1; }

  .form-footer {
    display: flex; align-items: center; justify-content: flex-end;
    gap: 12px; margin-top: 8px;
  }
  .btn-save {
    background: #5c52e8; color: #fff; border: none;
    border-radius: 9px; padding: 10px 30px;
    font-size: 14px; font-weight: 700; cursor: pointer;
    transition: background 0.2s, transform 0.1s;
  }
  .btn-save:hover { background: #4a41d0; }
  .btn-save:active { transform: scale(0.97); }
  .btn-cancel {
    background: #fff; color: #666; border: 1.5px solid #e4e3f3;
    border-radius: 9px; padding: 10px 22px;
    font-size: 14px; font-weight: 600; cursor: pointer;
    transition: border-color 0.2s;
  }
  .btn-cancel:hover { border-color: #5c52e8; color: #5c52e8; }
  .btn-back {
    display: flex; align-items: center; gap: 6px;
    background: #5c52e8; color: #fff; border: none;
    border-radius: 9px; padding: 9px 18px;
    font-size: 13px; font-weight: 700; cursor: pointer;
    text-decoration: none;
  }

  .uk-switch { position: relative; display: inline-block; width: 44px; height: 24px; }
  .uk-switch input { display: none; }
  .uk-switch-slider {
    position: absolute; cursor: pointer; inset: 0;
    background: #d1cfee; border-radius: 24px; transition: 0.3s;
  }
  .uk-switch-slider:before {
    content: ''; position: absolute;
    width: 18px; height: 18px; left: 3px; bottom: 3px;
    background: #fff; border-radius: 50%; transition: 0.3s;
  }
  .uk-switch input:checked + .uk-switch-slider { background: #5c52e8; }
  .uk-switch input:checked + .uk-switch-slider:before { transform: translateX(20px); }

  .perms-section-title {
    font-size: 15px; font-weight: 700; color: #2c2f6b;
    display: flex; align-items: center; gap: 8px; margin-bottom: 16px;
  }
  .perms-section-title::after {
    content: ''; flex: 1; height: 1px; background: #e4e3f3;
  }

  .perm-count-badge {
    font-size: 11px; font-weight: 700;
    background: #eeecfd; color: #5c52e8;
    border-radius: 20px; padding: 2px 8px;
  }

  .master-cb { accent-color: #5c52e8; width: 16px; height: 16px; cursor: pointer; }

