@php($situacaoCor = fn (?string $s) => match (strtolower(trim((string) $s))) { 'vigente' => 'verde', 'revogada' => 'vermelho', 'alterada' => 'azul', default => 'cinza', })

Leis

Consulte as normas municipais publicadas — leis, decretos, portarias e resoluções.

{{-- Filtros colapsáveis — evita 4 selects grandes ocupando a tela inteira no celular.
nativo: sem JS, acessível por padrão (teclado/leitor de tela já sabem expandir/recolher). --}}
Filtros @if($numero || $ano || $tipoId || $temaId || $situacao) ativos @endif
@if($busca || $numero || $ano || $tipoId || $temaId || $situacao) Limpar filtros @endif
@if($leis->total() === 0) Nenhuma lei encontrada. @elseif($leis->total() === 1) 1 lei encontrada @elseif($leis->total() <= $leis->perPage()) {{ $leis->total() }} leis encontradas @else Mostrando {{ $leis->firstItem() }}–{{ $leis->lastItem() }} de {{ $leis->total() }} leis @endif
{{-- Desktop: tabela organizada. --}}
@forelse($leis as $lei) @empty @endforelse
Tipo Nº/Ano Ementa Situação
{{ $lei->tipo->nome ?? '—' }} {{ $lei->numero ?: '—' }}/{{ $lei->ano }} {{ \Illuminate\Support\Str::limit($lei->ementa, 100) }} {{ $lei->situacao ?: 'Sem informação' }} @if($lei->documento_path) @endif Ver detalhes
Nenhuma lei publicada encontrada.
{{-- Mobile/PWA: cards, sem tabela espremida. --}}
{{ $leis->links('vendor.pagination.transparencia') }}