{% extends 'base.html' %}
{% block title %}{{ 'Editar' if cuenta else 'Nueva' }} cuenta{% endblock %}

{% block content %}
<div class="d-flex align-items-center mb-4">
  <a href="{{ url_for('cuentas.index') }}" class="btn btn-outline-secondary btn-sm me-3">
    <i class="bi bi-arrow-left"></i>
  </a>
  <div>
    <h4 class="fw-bold mb-0" style="color:#0f2744">
      <i class="bi bi-list-columns me-2" style="color:#fbbf24"></i>
      {{ 'Editar cuenta' if cuenta else 'Nueva cuenta' }}
    </h4>
    {% if cuenta %}<p class="text-muted mb-0 mt-1" style="font-size:.82rem">{{ cuenta.codigo }} — {{ cuenta.nombre }}</p>{% endif %}
  </div>
</div>

<div class="row">
  <div class="col-lg-7">
    <div class="card">
      <div class="card-header">Datos de la cuenta</div>
      <div class="card-body">
        <form method="post">
          {% if not cuenta %}
          <div class="mb-3">
            <label class="form-label">Código PGC <span class="text-danger">*</span></label>
            <input type="text" name="codigo" class="form-control font-monospace" required
                   placeholder="ej. 430, 705, 6290..."
                   style="font-size:1rem;letter-spacing:1px">
            <div class="form-text">Número de cuenta según el Plan General Contable.</div>
          </div>
          {% else %}
          <div class="mb-3">
            <label class="form-label">Código</label>
            <div class="form-control font-monospace bg-light" style="font-size:1rem">{{ cuenta.codigo }}</div>
          </div>
          {% endif %}

          <div class="mb-3">
            <label class="form-label">Nombre <span class="text-danger">*</span></label>
            <input type="text" name="nombre" class="form-control" required
                   value="{{ cuenta.nombre if cuenta else '' }}"
                   {% if cuenta and cuenta.es_sistema %}readonly{% endif %}>
            {% if cuenta and cuenta.es_sistema %}
            <div class="form-text text-warning"><i class="bi bi-shield-lock me-1"></i>Cuenta del sistema PGC — nombre no editable.</div>
            {% endif %}
          </div>

          <div class="row mb-3">
            <div class="col">
              <label class="form-label">Grupo PGC <span class="text-danger">*</span></label>
              <select name="grupo" class="form-select" {% if cuenta and cuenta.es_sistema %}disabled{% endif %}>
                {% for n, nombre_g in grupos.items() %}
                <option value="{{ n }}" {{ 'selected' if cuenta and cuenta.grupo == n else '' }}>
                  {{ n }} — {{ nombre_g }}
                </option>
                {% endfor %}
              </select>
            </div>
            <div class="col">
              <label class="form-label">Subgrupo</label>
              <input type="text" name="subgrupo" class="form-control font-monospace"
                     value="{{ cuenta.subgrupo if cuenta and cuenta.subgrupo else '' }}"
                     placeholder="ej. 43, 70..."
                     {% if cuenta and cuenta.es_sistema %}readonly{% endif %}>
            </div>
          </div>

          <div class="row mb-3">
            <div class="col">
              <label class="form-label">Naturaleza</label>
              <select name="naturaleza" class="form-select" {% if cuenta and cuenta.es_sistema %}disabled{% endif %}>
                <option value="deudora"  {{ 'selected' if cuenta and cuenta.naturaleza == 'deudora'  else '' }}>Deudora (saldo normal Debe)</option>
                <option value="acreedora"{{ 'selected' if cuenta and cuenta.naturaleza == 'acreedora' else '' }}>Acreedora (saldo normal Haber)</option>
                <option value="mixta"    {{ 'selected' if cuenta and cuenta.naturaleza == 'mixta'    else '' }}>Mixta</option>
              </select>
            </div>
            <div class="col">
              <label class="form-label">Tipo</label>
              <select name="tipo" class="form-select" {% if cuenta and cuenta.es_sistema %}disabled{% endif %}>
                <option value="activo"  {{ 'selected' if cuenta and cuenta.tipo == 'activo'  else '' }}>Activo</option>
                <option value="pasivo"  {{ 'selected' if cuenta and cuenta.tipo == 'pasivo'  else '' }}>Pasivo</option>
                <option value="neto"    {{ 'selected' if cuenta and cuenta.tipo == 'neto'    else '' }}>Neto patrimonial</option>
                <option value="ingreso" {{ 'selected' if cuenta and cuenta.tipo == 'ingreso' else '' }}>Ingreso</option>
                <option value="gasto"   {{ 'selected' if cuenta and cuenta.tipo == 'gasto'   else '' }}>Gasto</option>
                <option value="mixta"   {{ 'selected' if cuenta and cuenta.tipo == 'mixta'   else '' }}>Mixta</option>
              </select>
            </div>
          </div>

          <div class="mb-3">
            <label class="form-label">Notas</label>
            <textarea name="notas" class="form-control" rows="2">{{ cuenta.notas if cuenta and cuenta.notas else '' }}</textarea>
          </div>

          {% if cuenta %}
          <div class="mb-3 form-check">
            <input type="checkbox" name="activo" id="cb_activo" class="form-check-input"
                   {{ 'checked' if cuenta.activo else '' }}>
            <label class="form-check-label" for="cb_activo">Cuenta activa</label>
          </div>
          {% endif %}

          <div class="d-flex gap-2">
            <button type="submit" class="btn btn-primary">
              <i class="bi bi-check2 me-1"></i>{{ 'Guardar cambios' if cuenta else 'Crear cuenta' }}
            </button>
            <a href="{{ url_for('cuentas.index') }}" class="btn btn-outline-secondary">Cancelar</a>
            {% if cuenta and not cuenta.es_sistema %}
            <form method="post" action="{{ url_for('cuentas.eliminar', id=cuenta.id) }}"
                  class="ms-auto" onsubmit="return confirm('¿Eliminar esta cuenta?')">
              <button class="btn btn-outline-danger btn-sm"><i class="bi bi-trash me-1"></i>Eliminar</button>
            </form>
            {% endif %}
          </div>
        </form>
      </div>
    </div>
  </div>

  <div class="col-lg-5">
    <div class="card">
      <div class="card-header">Referencia PGC — Naturaleza de cuentas</div>
      <div class="card-body" style="font-size:.82rem">
        <table class="table table-sm mb-0">
          <thead><tr><th>Grupo</th><th>Descripción</th></tr></thead>
          <tbody>
            {% for n, nombre_g in grupos.items() %}
            <tr><td class="font-monospace fw-bold">{{ n }}</td><td>{{ nombre_g }}</td></tr>
            {% endfor %}
          </tbody>
        </table>
      </div>
    </div>
  </div>
</div>
{% endblock %}
