{% extends "base.html" %}
{% block title %}Modelo 130 — IRPF{% endblock %}
{% block page_title %}Modelo 130 — Pago fraccionado IRPF{% endblock %}

{% block topbar_actions %}
<div class="d-flex align-items-center gap-2">
  <button onclick="window.print()" class="btn btn-sm btn-outline-secondary no-print">
    <i class="bi bi-printer me-1"></i>Imprimir / PDF
  </button>
  <select class="form-select form-select-sm" style="width:110px"
          onchange="location='?año='+this.value">
    {% for a in años_disponibles %}
    <option value="{{ a }}" {% if a == año %}selected{% endif %}>{{ a }}</option>
    {% endfor %}
  </select>
</div>
{% endblock %}

{% block content %}

<div class="alert alert-info mb-4">
  <i class="bi bi-info-circle me-2"></i>
  <strong>Modelo 130</strong> — Estimación directa simplificada. Cuota = 20% del rendimiento neto
  (ingresos − gastos deducibles) acumulado, menos retenciones soportadas y pagos anteriores del año.
  Los datos son orientativos; consulta con tu asesor antes de presentar.
</div>

<!-- Resumen anual -->
<div class="row g-3 mb-4">
  <div class="col-md-4">
    <div class="card text-center">
      <div class="card-body py-3">
        <div class="text-muted small mb-1">Ingresos {{ año }}</div>
        <div class="fs-4 fw-bold text-success">{{ "%.2f"|format(total_ing) }} €</div>
      </div>
    </div>
  </div>
  <div class="col-md-4">
    <div class="card text-center">
      <div class="card-body py-3">
        <div class="text-muted small mb-1">Gastos deducibles {{ año }}</div>
        <div class="fs-4 fw-bold text-danger">{{ "%.2f"|format(total_gas) }} €</div>
      </div>
    </div>
  </div>
  <div class="col-md-4">
    <div class="card text-center">
      <div class="card-body py-3">
        <div class="text-muted small mb-1">Total IRPF a ingresar {{ año }}</div>
        <div class="fs-4 fw-bold {% if total_cuota > 0 %}text-danger{% else %}text-success{% endif %}">
          {{ "%.2f"|format(total_cuota) }} €
        </div>
      </div>
    </div>
  </div>
</div>

<!-- Tabla trimestral -->
<div class="card">
  <div class="card-header py-3">
    <i class="bi bi-calendar3-range me-2"></i>Detalle por trimestre — {{ año }}
  </div>
  <div class="table-responsive">
    <table class="table mb-0">
      <thead>
        <tr class="table-light">
          <th>Trimestre</th>
          <th class="text-end">Ingresos (base)</th>
          <th class="text-end">Gastos deducibles</th>
          <th class="text-end">Rendimiento neto</th>
          <th class="text-end">20% s/ rendimiento</th>
          <th class="text-end">Retenciones IRPF</th>
          <th class="text-end">Pagos anteriores</th>
          <th class="text-end fw-bold">Cuota a ingresar</th>
        </tr>
      </thead>
      <tbody>
        {% for t in trimestres %}
        <tr {% if t.cuota_neta > 0 %}class="table-warning"{% endif %}>
          <td class="fw-semibold">T{{ t.num }} <span class="text-muted small">({{ t.label }})</span></td>
          <td class="text-end text-success">{{ "%.2f"|format(t.ingresos) }} €</td>
          <td class="text-end text-danger">{{ "%.2f"|format(t.gastos) }} €</td>
          <td class="text-end fw-semibold {% if t.rendimiento >= 0 %}text-success{% else %}text-danger{% endif %}">
            {{ "%.2f"|format(t.rendimiento) }} €
          </td>
          <td class="text-end">{{ "%.2f"|format(t.cuota_bruta) }} €</td>
          <td class="text-end text-muted">− {{ "%.2f"|format(t.ret_irpf) }} €</td>
          <td class="text-end text-muted">− {{ "%.2f"|format(t.irpf_acum) }} €</td>
          <td class="text-end fw-bold fs-6 {% if t.cuota_neta > 0 %}text-danger{% else %}text-muted{% endif %}">
            {{ "%.2f"|format(t.cuota_neta) }} €
          </td>
        </tr>
        {% endfor %}
      </tbody>
      <tfoot class="table-dark">
        <tr>
          <td><strong>TOTAL {{ año }}</strong></td>
          <td class="text-end text-success fw-bold">{{ "%.2f"|format(total_ing) }} €</td>
          <td class="text-end text-danger fw-bold">{{ "%.2f"|format(total_gas) }} €</td>
          <td class="text-end fw-bold {% if (total_ing - total_gas) >= 0 %}text-success{% else %}text-danger{% endif %}">
            {{ "%.2f"|format(total_ing - total_gas) }} €
          </td>
          <td colspan="3"></td>
          <td class="text-end fw-bold fs-5 {% if total_cuota > 0 %}text-warning{% else %}text-success{% endif %}">
            {{ "%.2f"|format(total_cuota) }} €
          </td>
        </tr>
      </tfoot>
    </table>
  </div>
</div>

<div class="card mt-3">
  <div class="card-body">
    <div class="small fw-semibold mb-2"><i class="bi bi-question-circle me-1"></i>¿Cómo se calcula?</div>
    <ul class="text-muted small mb-0">
      <li><strong>Ingresos</strong>: base imponible de facturas emitidas (sin IVA) del trimestre, estado ≠ cancelada</li>
      <li><strong>Gastos deducibles</strong>: base imponible de facturas recibidas + base de tickets de gasto + cuotas de autónomo pagadas</li>
      <li><strong>Rendimiento neto</strong>: Ingresos − Gastos</li>
      <li><strong>Cuota bruta</strong>: 20% del rendimiento neto (si es positivo)</li>
      <li><strong>Retenciones IRPF</strong>: IRPF retenido en tus facturas emitidas (reduce la cuota)</li>
      <li><strong>Pagos anteriores</strong>: cuotas ya ingresadas en trimestres previos del mismo año</li>
      <li><strong>Cuota a ingresar</strong>: Cuota bruta − Retenciones − Pagos anteriores (mínimo 0)</li>
    </ul>
  </div>
</div>

{% endblock %}
