{% extends "base.html" %}
{% load static i18n %}

{% block title %}Candidates - {{ block.super }}{% endblock %}

{% block customCSS %}
<style>
    /* UI Variables for the KAAT-S Theme */
    :root {
        --kaauh-teal: #00636e;
        --kaauh-teal-dark: #004a53;
        --kaauh-border: #eaeff3;
        --kaauh-primary-text: #343a40;
    }

    /* Enhanced Card Styling */
    .card {
        border: 1px solid var(--kaauh-border);
        border-radius: 0.75rem;
        box-shadow: 0 4px 12px rgba(0,0,0,0.06);
        transition: transform 0.2s, box-shadow 0.2s;
        background-color: white;
    }
    .card:hover {
        /* Remove hover effect from the main list card to avoid visual noise */
        transform: none;
        box-shadow: 0 4px 12px rgba(0,0,0,0.06);
    }
    
    .card-header {
        font-weight: 600;
        padding: 1.25rem;
        border-bottom: 1px solid var(--kaauh-border);
        background-color: #f8f9fa; /* Light header background */
    }

    /* Main Action Button Style (Teal Theme) */
    .btn-main-action {
        background-color: var(--kaauh-teal);
        border-color: var(--kaauh-teal);
        color: white;
        font-weight: 600;
        transition: all 0.2s ease;
        display: inline-flex;
        align-items: center;
        gap: 0.4rem;
        padding: 0.5rem 1rem;
    }

    .btn-main-action:hover {
        background-color: var(--kaauh-teal-dark);
        border-color: var(--kaauh-teal-dark);
        box-shadow: 0 4px 8px rgba(0,0,0,0.15);
    }
    
    /* Secondary Action Buttons (used in table) */
    .btn-group .btn-outline-primary {
        color: var(--kaauh-teal);
        border-color: var(--kaauh-border);
        background-color: white;
    }
    .btn-group .btn-outline-primary:hover {
        background-color: var(--kaauh-teal);
        color: white;
        border-color: var(--kaauh-teal);
    }
    
    /* Table Styling */
    .table thead th {
        color: var(--kaauh-teal-dark);
        font-weight: 600;
        border-bottom: 2px solid var(--kaauh-teal); /* Highlight bottom border */
        vertical-align: middle;
        padding: 0.75rem 1rem;
        font-size: 0.95rem;
    }

    .table tbody tr:hover {
        background-color: #f3f9f9; /* Light teal hover for rows */
    }
    
    .table tbody td {
        vertical-align: middle;
        padding: 0.75rem 1rem;
    }
    
    /* Badge Styling */
    .badge {
        font-weight: 600;
        padding: 0.4em 0.7em;
        border-radius: 0.3rem;
    }
    
    /* Status Badge Mapping */
    .table .bg-primary { background-color: var(--kaauh-teal) !important; color: white !important;} /* Job Title Badge */
    .table .bg-success { background-color: #28a745 !important; } /* Applied: Yes */
    .table .bg-warning { background-color: #ffc107 !important; } /* Applied: No */

    /* Pagination Link Styling */
    .pagination .page-item .page-link {
        color: var(--kaauh-teal-dark);
        border-color: var(--kaauh-border);
    }
    .pagination .page-item.active .page-link {
        background-color: var(--kaauh-teal);
        border-color: var(--kaauh-teal);
        color: white;
    }
    .pagination .page-item:hover .page-link:not(.active) {
        background-color: #e9ecef;
    }

    /* Icon Sizing in Buttons */
    .btn-group .btn-sm svg {
        width: 1rem;
        height: 1rem;
    }

</style>
{% endblock %}

{% block content %}
<div class="container-fluid py-4">
    <div class="card shadow-sm">
        <div class="card-header">
            <div class="d-flex justify-content-between align-items-center">
                <h1 class="h3 mb-0" style="color: var(--kaauh-teal-dark); font-weight: 700;">
                    <i class="fas fa-users me-2"></i>
                    {% trans "Candidate Profiles" %}
                </h1>
                <div class="d-flex gap-3 align-items-center">
                    {# The search form structure should be updated to align with the job_list style if possible #}
                    {% include "includes/search_form.html" with search_query=search_query %}

                    {% if user.is_staff %}
                        <a href="{% url 'candidate_create' %}" class="btn btn-main-action">
                             <i class="fas fa-plus"></i>
                            {% trans "Add New Candidate" %}
                        </a>
                    {% endif %}
                </div>
            </div>
        </div>

        {% if candidates %}
            <div class="table-responsive">
                <table class="table table-hover mb-0">
                    <thead>
                        <tr>
                            <th scope="col" style="width: 20%;">{% trans "Name" %}</th>
                            <th scope="col" style="width: 20%;">{% trans "Email" %}</th>
                            <th scope="col" style="width: 15%;">{% trans "Phone" %}</th>
                            <th scope="col" style="width: 15%;">{% trans "Job" %}</th>
                            <th scope="col" style="width: 10%;">{% trans "Applied" %}</th>
                            <th scope="col" style="width: 10%;">{% trans "Created" %}</th>
                            <th scope="col" style="width: 10%;" class="text-center">{% trans "Actions" %}</th>
                        </tr>
                    </thead>
                    <tbody>
                        {% for candidate in candidates %}
                            <tr>
                                <td><strong>{{ candidate.name }}</strong></td>
                                <td>{{ candidate.email }}</td>
                                <td>{{ candidate.phone }}</td>
                                <td> <span class="badge bg-primary">{{ candidate.job.title }}</span></td>
                                <td>
                                    <span class="badge {% if candidate.applied %}bg-success{% else %}bg-warning{% endif %}">
                                        {{ candidate.applied|yesno:"Yes,No" }}
                                    </span>
                                </td>
                                <td>{{ candidate.created_at|date:"M d, Y" }}</td>
                                <td class="text-center">
                                    <div class="btn-group btn-group-sm" role="group">
                                        <a href="{% url 'candidate_detail' candidate.slug %}" class="btn btn-outline-primary" title="{% trans 'View' %}">
                                            <i class="fas fa-eye"></i>
                                        </a>
                                        {% if user.is_staff %}
                                            <a href="{% url 'candidate_update' candidate.slug %}" class="btn btn-outline-primary" title="{% trans 'Edit' %}">
                                                <i class="fas fa-edit"></i>
                                            </a>
                                            <button type="button" class="btn btn-outline-danger" title="{% trans 'Delete' %}"
                                                    data-bs-toggle="deleteModal"
                                                    data-delete-url="{% url 'candidate_delete' candidate.slug %}"
                                                    data-item-name="{{ candidate.name }}">
                                                <i class="fas fa-trash-alt"></i>
                                            </button>
                                        {% endif %}
                                    </div>
                                </td>
                            </tr>
                        {% endfor %}
                    </tbody>
                </table>
            </div>

            {% if is_paginated %}
                <div class="card-footer bg-white border-top">
                    <nav aria-label="Page navigation">
                        <ul class="pagination justify-content-center mb-0">
                            {% if page_obj.has_previous %}
                                <li class="page-item">
                                    <a class="page-link" href="?page={{ page_obj.previous_page_number }}{% if search_query %}&q={{ search_query }}{% endif %}" aria-label="Previous">
                                        <span aria-hidden="true">&laquo;</span>
                                    </a>
                                </li>
                            {% endif %}

                            {# Simplified pagination logic for theme consistency #}
                            {% for num in page_obj.paginator.page_range %}
                                {% if page_obj.number == num %}
                                    <li class="page-item active"><span class="page-link">{{ num }}</span></li>
                                {% elif num > page_obj.number|add:'-2' and num < page_obj.number|add:'2' %}
                                    <li class="page-item">
                                        <a class="page-link" href="?page={{ num }}{% if search_query %}&q={{ search_query }}{% endif %}">{{ num }}</a>
                                    </li>
                                {% endif %}
                            {% endfor %}

                            {% if page_obj.has_next %}
                                <li class="page-item">
                                    <a class="page-link" href="?page={{ page_obj.next_page_number }}{% if search_query %}&q={{ search_query }}{% endif %}" aria-label="Next">
                                        <span aria-hidden="true">&raquo;</span>
                                    </a>
                                </li>
                            {% endif %}
                        </ul>
                    </nav>
                </div>
            {% endif %}
        {% else %}
            <div class="text-center py-5">
                <i class="fas fa-users fa-3x mb-3" style="color: var(--kaauh-teal-dark);"></i>
                <h4 class="text-muted">{% trans "No candidates found." %}</h4>
                <p class="text-muted">{% trans "Start by adding a new profile or adjusting your search filters." %}</p>
                {% if user.is_staff %}
                    <a href="{% url 'candidate_create' %}" class="btn btn-main-action mt-3">
                        <i class="fas fa-plus me-1"></i>
                        {% trans "Add Your First Candidate" %}
                    </a>
                {% endif %}
            </div>
        {% endif %}
    </div>
</div>
{% endblock %}