        /* Page-specific styles that complement the design system */

        /* Stats Row */
        .stats-row {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
            gap: var(--space-4);
            margin-bottom: var(--space-8);
        }

        .stat-card-custom {
            background: var(--bg-secondary);
            border-radius: var(--radius-xl);
            padding: var(--space-5);
            text-align: center;
            box-shadow: var(--shadow-card);
            border-top: 4px solid var(--primary-600);
            transition: all var(--transition-base);
        }

        .stat-card-custom:hover {
            transform: translateY(-4px);
            box-shadow: var(--shadow-card-hover);
        }

        .stat-card-custom.success { border-top-color: var(--success); }
        .stat-card-custom.teal { border-top-color: var(--secondary-500); }
        .stat-card-custom.purple { border-top-color: var(--purple-500); }
        .stat-card-custom.warning { border-top-color: var(--warning); }

        .stat-number {
            font-size: var(--text-3xl);
            font-weight: var(--font-extrabold);
            color: var(--primary-700);
            font-family: var(--font-display);
        }

        .stat-card-custom.success .stat-number { color: var(--success); }
        .stat-card-custom.teal .stat-number { color: var(--secondary-600); }
        .stat-card-custom.purple .stat-number { color: var(--purple-500); }
        .stat-card-custom.warning .stat-number { color: var(--warning); }

        .stat-label {
            color: var(--neutral-500);
            font-size: var(--text-sm);
            margin-top: var(--space-2);
            font-weight: var(--font-medium);
        }

        /* Section Cards */
        .section-card {
            background: var(--bg-secondary);
            border-radius: var(--radius-2xl);
            padding: var(--space-6);
            margin-bottom: var(--space-6);
            box-shadow: var(--shadow-card);
            border: 1px solid var(--neutral-100);
            animation: fadeInUp 0.5s ease;
        }

        .section-header {
            display: flex;
            align-items: center;
            justify-content: space-between;
            margin-bottom: var(--space-6);
            padding-bottom: var(--space-4);
            border-bottom: 2px solid var(--neutral-100);
            flex-wrap: wrap;
            gap: var(--space-4);
        }

        .section-title {
            display: flex;
            align-items: center;
            gap: var(--space-3);
        }

        .section-title-icon {
            width: 48px;
            height: 48px;
            background: var(--bg-gradient-primary);
            border-radius: var(--radius-lg);
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .section-title-icon svg {
            width: 24px;
            height: 24px;
            fill: white;
        }

        .section-title h2 {
            color: var(--neutral-900);
            font-size: var(--text-xl);
            font-weight: var(--font-bold);
        }

        /* Form Grid */
        .form-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
            gap: var(--space-5);
        }

        .form-group.full-width {
            grid-column: 1 / -1;
        }

        .form-group label .required {
            color: var(--error);
        }

        /* Conditional Fields */
        .conditional-fields {
            display: none;
            background: var(--neutral-50);
            padding: var(--space-5);
            border-radius: var(--radius-xl);
            margin-top: var(--space-4);
            border: 2px dashed var(--neutral-200);
            animation: fadeIn 0.3s ease;
        }

        .conditional-fields.show {
            display: block;
        }

        .conditional-fields h4 {
            color: var(--primary-700);
            margin-bottom: var(--space-4);
            font-size: var(--text-base);
            font-weight: var(--font-semibold);
            display: flex;
            align-items: center;
            gap: var(--space-2);
        }

        /* Button Variants */
        .btn-success {
            background: var(--bg-gradient-secondary);
            color: white;
            box-shadow: var(--shadow-md);
        }

        .btn-success:hover {
            box-shadow: var(--shadow-lg);
            transform: translateY(-1px);
        }

        .btn-danger {
            background: linear-gradient(135deg, var(--error) 0%, #f87171 100%);
            color: white;
            box-shadow: var(--shadow-md);
        }

        .btn-danger:hover {
            box-shadow: var(--shadow-lg);
            transform: translateY(-1px);
        }

        .form-actions {
            display: flex;
            gap: var(--space-4);
            margin-top: var(--space-6);
            justify-content: flex-end;
            flex-wrap: wrap;
        }

        /* Filter Bar */
        .filter-bar {
            display: flex;
            gap: var(--space-4);
            margin-bottom: var(--space-5);
            flex-wrap: wrap;
            align-items: center;
        }

        .filter-bar .form-input,
        .filter-bar .form-select {
            min-width: 180px;
        }

        .filter-bar input[type="search"] {
            min-width: 280px;
            padding-right: var(--space-10);
        }

        .search-wrapper {
            position: relative;
        }

        .search-wrapper::before {
            content: '';
            position: absolute;
            right: var(--space-4);
            top: 50%;
            transform: translateY(-50%);
            width: 20px;
            height: 20px;
            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%239ca3af' viewBox='0 0 24 24'%3E%3Cpath d='M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z'/%3E%3C/svg%3E");
            background-size: contain;
            pointer-events: none;
        }

        /* Users Table Enhanced */
        .users-table {
            width: 100%;
            border-collapse: separate;
            border-spacing: 0;
            min-width: 900px;
        }

        .users-table th {
            background: var(--bg-gradient-primary);
            color: white;
            padding: var(--space-4) var(--space-3);
            text-align: right;
            font-weight: var(--font-semibold);
            font-size: var(--text-sm);
            white-space: nowrap;
        }

        .users-table th:first-child {
            border-radius: 0 var(--radius-lg) 0 0;
        }

        .users-table th:last-child {
            border-radius: var(--radius-lg) 0 0 0;
        }

        .users-table td {
            padding: var(--space-4) var(--space-3);
            border-bottom: 1px solid var(--neutral-100);
            vertical-align: middle;
            font-size: var(--text-sm);
            transition: background var(--transition-fast);
        }

        .users-table tbody tr {
            transition: all var(--transition-fast);
        }

        .users-table tbody tr:hover {
            background: var(--primary-50);
        }

        .users-table tbody tr:hover td {
            border-bottom-color: var(--primary-100);
        }

        .users-table tr:last-child td {
            border-bottom: none;
        }

        /* User Avatar */
        .user-avatar-small {
            width: 44px;
            height: 44px;
            background: var(--bg-gradient-primary);
            border-radius: var(--radius-full);
            display: flex;
            align-items: center;
            justify-content: center;
            color: white;
            font-weight: var(--font-bold);
            font-size: var(--text-sm);
            box-shadow: var(--shadow-sm);
        }

        /* Role Badges */
        .role-badge {
            display: inline-flex;
            align-items: center;
            padding: var(--space-1) var(--space-3);
            border-radius: var(--radius-full);
            font-size: var(--text-xs);
            font-weight: var(--font-semibold);
            white-space: nowrap;
        }

        .role-badge.admin { background: var(--accent-100); color: var(--accent-700); }
        .role-badge.manager { background: var(--info-light); color: var(--primary-800); }
        .role-badge.teacher { background: var(--success-light); color: var(--secondary-800); }
        .role-badge.employee { background: var(--primary-100); color: var(--primary-800); }
        .role-badge.quality { background: var(--purple-100); color: var(--purple-500); }

        .school-badge {
            display: inline-block;
            padding: var(--space-1) var(--space-2);
            border-radius: var(--radius-sm);
            font-size: var(--text-xs);
            background: var(--neutral-100);
            color: var(--neutral-600);
        }

        /* Action Buttons */
        .action-buttons {
            display: flex;
            gap: var(--space-2);
        }

        .action-btn {
            width: 36px;
            height: 36px;
            border: none;
            border-radius: var(--radius-md);
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: all var(--transition-fast);
        }

        .action-btn svg {
            width: 18px;
            height: 18px;
        }

        .action-btn.edit {
            background: var(--info-light);
            color: var(--primary-700);
        }

        .action-btn.edit:hover {
            background: var(--primary-600);
            color: white;
            transform: scale(1.1);
        }

        .action-btn.edit svg { fill: currentColor; }

        .action-btn.delete {
            background: var(--error-light);
            color: var(--error);
        }

        .action-btn.delete:hover {
            background: var(--error);
            color: white;
            transform: scale(1.1);
        }

        .action-btn.delete svg { fill: currentColor; }

        /* Empty State */
        .empty-state {
            text-align: center;
            padding: var(--space-16) var(--space-6);
            color: var(--neutral-500);
        }

        .empty-state svg {
            width: 80px;
            height: 80px;
            fill: var(--neutral-300);
            margin-bottom: var(--space-6);
        }

        .empty-state h3 {
            color: var(--neutral-700);
            margin-bottom: var(--space-3);
            font-size: var(--text-xl);
        }

        .empty-state p {
            color: var(--neutral-500);
            font-size: var(--text-sm);
        }

        /* Modal Overlay */
        .modal-overlay {
            position: fixed;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background: rgba(0, 0, 0, 0.5);
            backdrop-filter: blur(4px);
            display: none;
            align-items: center;
            justify-content: center;
            z-index: var(--z-modal-backdrop);
            padding: var(--space-5);
            opacity: 0;
            transition: opacity var(--transition-base);
        }

        .modal-overlay.show {
            display: flex;
            opacity: 1;
        }

        .modal-custom {
            background: var(--bg-secondary);
            border-radius: var(--radius-2xl);
            max-width: 650px;
            width: 100%;
            max-height: 90vh;
            overflow-y: auto;
            box-shadow: var(--shadow-2xl);
            animation: scaleIn 0.3s ease;
        }

        .modal-header-custom {
            padding: var(--space-5) var(--space-6);
            border-bottom: 1px solid var(--neutral-100);
            display: flex;
            align-items: center;
            justify-content: space-between;
            position: sticky;
            top: 0;
            background: var(--bg-secondary);
            z-index: 1;
        }

        .modal-header-custom h3 {
            color: var(--primary-700);
            font-size: var(--text-xl);
            font-weight: var(--font-bold);
        }

        .modal-close-btn {
            width: 40px;
            height: 40px;
            border: none;
            background: var(--neutral-100);
            border-radius: var(--radius-full);
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: all var(--transition-fast);
            color: var(--neutral-500);
        }

        .modal-close-btn:hover {
            background: var(--error);
            color: white;
            transform: rotate(90deg);
        }

        .modal-close-btn svg {
            width: 20px;
            height: 20px;
            fill: currentColor;
        }

        .modal-body-custom {
            padding: var(--space-6);
        }

        .modal-footer-custom {
            padding: var(--space-5) var(--space-6);
            border-top: 1px solid var(--neutral-100);
            display: flex;
            gap: var(--space-4);
            justify-content: flex-end;
            position: sticky;
            bottom: 0;
            background: var(--bg-secondary);
        }

        /* Toast Message */
        .toast-message {
            position: fixed;
            top: var(--space-6);
            left: 50%;
            transform: translateX(-50%) translateY(-20px);
            background: var(--success);
            color: white;
            padding: var(--space-4) var(--space-8);
            border-radius: var(--radius-xl);
            box-shadow: var(--shadow-xl);
            display: none;
            align-items: center;
            gap: var(--space-3);
            z-index: var(--z-toast);
            opacity: 0;
            transition: all var(--transition-base);
        }

        .toast-message.show {
            display: flex;
            opacity: 1;
            transform: translateX(-50%) translateY(0);
        }

        .toast-message svg {
            width: 24px;
            height: 24px;
            fill: white;
        }

        /* Evaluation Chain Box */
        .evaluation-chain-box {
            background: linear-gradient(135deg, var(--primary-50) 0%, var(--info-light) 100%);
            border: 2px solid var(--primary-300);
            border-radius: var(--radius-xl);
            padding: var(--space-5);
            margin-top: var(--space-5);
        }

        .evaluation-chain-box h4 {
            color: var(--primary-700);
            margin-bottom: var(--space-4);
            display: flex;
            align-items: center;
            gap: var(--space-2);
            font-weight: var(--font-semibold);
        }

        .evaluator-list {
            display: flex;
            flex-direction: column;
            gap: var(--space-3);
        }

        .evaluator-item {
            display: flex;
            align-items: center;
            gap: var(--space-3);
            padding: var(--space-3) var(--space-4);
            background: white;
            border-radius: var(--radius-lg);
            border-right: 4px solid var(--primary-400);
            box-shadow: var(--shadow-sm);
            transition: all var(--transition-fast);
        }

        .evaluator-item:hover {
            transform: translateX(-4px);
            box-shadow: var(--shadow-md);
        }

        .evaluator-item.gate {
            border-right-color: var(--secondary-500);
        }

        .evaluator-item.approver {
            border-right-color: var(--accent-500);
            background: linear-gradient(135deg, var(--accent-50) 0%, var(--accent-100) 100%);
        }

        .evaluator-icon {
            width: 40px;
            height: 40px;
            background: var(--bg-gradient-primary);
            border-radius: var(--radius-full);
            display: flex;
            align-items: center;
            justify-content: center;
            color: white;
            font-weight: var(--font-bold);
            font-size: var(--text-sm);
            flex-shrink: 0;
        }

        .evaluator-item.gate .evaluator-icon {
            background: var(--bg-gradient-secondary);
        }

        .evaluator-item.approver .evaluator-icon {
            background: var(--bg-gradient-accent);
        }

        .evaluator-details {
            flex: 1;
        }

        .evaluator-details strong {
            color: var(--neutral-800);
            font-size: var(--text-sm);
            display: block;
        }

        .evaluator-details small {
            display: block;
            color: var(--neutral-500);
            font-size: var(--text-xs);
            margin-top: var(--space-1);
        }

        .gate-badge {
            display: inline-block;
            padding: var(--space-1) var(--space-3);
            border-radius: var(--radius-full);
            font-size: var(--text-xs);
            font-weight: var(--font-semibold);
            background: var(--secondary-500);
            color: white;
        }

        /* Special Role Info Box */
        .special-role-info {
            display: none;
            background: var(--accent-100);
            padding: var(--space-4);
            border-radius: var(--radius-lg);
            margin-top: var(--space-3);
            font-size: var(--text-sm);
            color: var(--accent-700);
            border-right: 4px solid var(--accent-500);
        }

        /* Code Display */
        code {
            background: var(--neutral-100);
            padding: var(--space-1) var(--space-2);
            border-radius: var(--radius-sm);
            font-family: var(--font-mono);
            font-size: var(--text-xs);
            color: var(--neutral-700);
        }

        /* Responsive */
        @media (max-width: 768px) {
            .nav-container {
                flex-direction: column;
                gap: var(--space-4);
            }

            .form-actions {
                flex-direction: column;
            }

            .form-actions .btn {
                width: 100%;
            }

            .filter-bar {
                flex-direction: column;
            }

            .filter-bar .form-input,
            .filter-bar .form-select,
            .filter-bar input[type="search"] {
                width: 100%;
                min-width: auto;
            }

            .stats-row {
                grid-template-columns: repeat(2, 1fr);
            }
        }

        .hidden {
            display: none !important;
        }

        /* Job Category Border Colors */
        .job-leadership { border-right: 4px solid var(--accent-500); }
        .job-quality { border-right: 4px solid var(--purple-500); }
        .job-teacher { border-right: 4px solid var(--secondary-500); }
        .job-admin-staff { border-right: 4px solid var(--primary-600); }
