@use('Core\Localization\LocalizedDate') {{-- @intent Listagem (índice) das notícias publicadas no Portal. @description O módulo define **apenas** o conteúdo central e os campos padrão do shell (ADR-016): título, descrição, breadcrumbs e dados estruturados. --}} @php // Categorias são vocabulário do módulo: o dono do fragmento é dono da tradução (ADR-012). $categoryMeta = [ 'infraestrutura' => ['label' => __('noticias::index.categories.infraestrutura'), 'class' => 'bg-civic-ink text-civic-on-ink'], 'educacao' => ['label' => __('noticias::index.categories.educacao'), 'class' => 'bg-civic-navy text-civic-on-navy'], 'saude' => ['label' => __('noticias::index.categories.saude'), 'class' => 'bg-civic-yellow text-civic-on-yellow'], 'cultura' => ['label' => __('noticias::index.categories.cultura'), 'class' => 'bg-civic-surface-high text-civic-ink'], 'esporte' => ['label' => __('noticias::index.categories.esporte'), 'class' => 'bg-civic-navy-soft text-civic-on-navy-soft'], 'seguranca' => ['label' => __('noticias::index.categories.seguranca'), 'class' => 'bg-civic-ink text-civic-on-ink'], 'meio-ambiente' => ['label' => __('noticias::index.categories.meio-ambiente'), 'class' => 'bg-civic-navy-soft text-civic-on-navy-soft'], 'geral' => ['label' => __('noticias::index.categories.geral'), 'class' => 'bg-civic-surface-high text-civic-ink'], ]; @endphp

{{ __('noticias::index.title') }}

{{ __('noticias::index.lead') }}

@if ($noticias->isEmpty())

{{ __('noticias::index.empty_title') }}

{{ __('noticias::index.empty_lead') }}

@else

{{ $noticias->total() }} {{ trans_choice('noticias::index.count', $noticias->total()) }}

@foreach ($noticias as $noticia) @php $meta = $categoryMeta[$noticia->category] ?? ['label' => ucfirst($noticia->category), 'class' => 'bg-civic-surface-high text-civic-ink']; @endphp
@include('noticias::partials.cover', [ 'noticia' => $noticia, 'sizes' => '(min-width: 1024px) 33vw, (min-width: 640px) 50vw, 100vw', 'class' => 'h-full w-full object-cover transition-transform duration-500 group-hover:scale-105', ]) {{ $meta['label'] }}

{{-- Alvo mínimo: um título de uma linha fica com ~22px de caixa — o `inline-block min-h-6` garante os 24px (SC 2.5.8) e o ponteiro grosso exige 2.75rem (ADR-025). --}} {{ $noticia->title }}

@if ($noticia->summary)

{{ $noticia->summary }}

@endif
@endforeach
@if ($noticias->hasPages())
{{ $noticias->links() }}
@endif @endif