@extends('layouts.admin.theme') @section('title', env('APP_NAME') . ' :: ' . __('Editar Tema')) @section('content')
@php $headLine = " " . __('Editar Tema'); @endphp @include('components.buttons._headLineButtonsBackAdd', [ 'headLine' => __($headLine), 'routeBack' => 'admin.temas.index', 'routeBackParams' => [], 'nameBack' => __('Voltar'), 'routeAdd' => null, 'routeAddParams' => [], 'nameAdd' => '', 'permission' => 'GERENCIADOR_DE_TEMAS', ])
@include('errors.messageFlash')
@csrf @method('PUT')
@if($tema->is_default) {{-- Campo hidden para garantir que o valor seja enviado quando readonly --}} {{ __('O nome do tema padrão não pode ser alterado.') }} @else @endif
is_active_public) ? 'checked' : '' }}>
is_active_admin) ? 'checked' : '' }}>
{{ __('Marque onde este tema deve ser aplicado.') }}
{{-- Seção de Logo --}}
{{ __('Logo do Tema') }}
{{ __('Logo do tema') }} @if($tema->hasCustomLogo())
{{ __('Logo personalizada') }}
@else
{{ __('Logo padrão') }}
@endif
{{ __('Formatos aceitos: PNG, JPG, SVG, WebP. Máx: 2MB.') }}
@if($tema->hasCustomLogo())
@endif
{{-- Seção de Logo de Acessibilidade --}}
{{ __('Logo para Modo Noturno (Acessibilidade)') }}

{{ __('Logo alternativa exibida quando o modo noturno está ativo. Se não definida, será usada a logo principal do tema.') }}

{{ __('Logo de acessibilidade do tema') }}
@if($tema->hasCustomAccessibilityLogo())
{{ __('Logo personalizada') }}
@else
{{ __('Usando logo principal') }}
@endif
{{ __('Recomendado: Logo clara/branca para fundo escuro. Formatos: PNG, SVG, WebP. Máx: 2MB.') }}
@if($tema->hasCustomAccessibilityLogo())
@endif

{{ __('Configuração de Cores') }}
{{-- Botão que abre modal de confirmação para reset - evita formulário aninhado --}}
@php $colorGroups = [ 'portal' => [ 'title' => __('Cores do Portal e Admin'), 'description' => __('Cores principais que afetam o portal público e o painel administrativo'), 'colors' => [ 'primary' => __('Cor primária'), 'waves-background' => __('Background das ondas'), 'topo-nav-background' => __('Topo / Navegação'), 'card-title' => __('Título de cards'), 'home-links' => __('Links da home'), 'subtitle-home' => __('Subtítulos da home'), 'link-help' => __('Links de ajuda'), 'home-social' => __('Redes sociais'), 'link-help-text' => __('Texto de ajuda'), 'galeria-background' => __('Background da galeria'), 'pontos-turisticos-title' => __('Título pontos turísticos'), 'footer-background' => __('Rodapé portal'), 'defaultBar-background' => __('Barra superior padrão'), ] ], 'admin' => [ 'title' => __('Cores do Painel Admin'), 'description' => __('Cores específicas da sidebar e elementos do painel administrativo'), 'colors' => [ 'primary-admin' => __('Primária Admin'), 'secondary-admin' => __('Secundária Admin'), ] ], 'base' => [ 'title' => __('Cores Base do Sistema'), 'description' => __('Cores fundamentais usadas em todo o sistema'), 'colors' => [ 'secondary' => __('Secondary'), 'tertiary' => __('Tertiary'), 'success' => __('Success'), 'info' => __('Info'), 'warning' => __('Warning'), 'danger' => __('Danger'), 'white' => __('White'), 'soft' => __('Soft'), 'dark' => __('Dark'), 'gray' => __('Gray'), ] ], 'grays' => [ 'title' => __('Tons de Cinza'), 'description' => __('Escala de cinzas para textos e backgrounds'), 'colors' => [ 'gray-50' => __('Gray 50'), 'gray-100' => __('Gray 100'), 'gray-200' => __('Gray 200'), 'gray-300' => __('Gray 300'), 'gray-400' => __('Gray 400'), 'gray-500' => __('Gray 500'), 'gray-600' => __('Gray 600'), 'gray-700' => __('Gray 700'), 'gray-800' => __('Gray 800'), 'gray-900' => __('Gray 900'), ] ], 'extras' => [ 'title' => __('Cores Adicionais'), 'description' => __('Cores complementares para elementos específicos'), 'colors' => [ 'softGray' => __('Soft gray'), 'snowWhite' => __('Snow white'), 'positive' => __('Positive'), 'royal-blue' => __('Royal blue'), 'purple' => __('Purple'), 'pink' => __('Pink'), 'orange' => __('Orange'), 'yellow' => __('Yellow'), 'green' => __('Green'), 'teal' => __('Teal'), 'indigo' => __('Indigo'), 'brown' => __('Brown'), 'red' => __('Red'), 'cake-blue' => __('Cake blue'), ] ], 'hover' => [ 'title' => __('Variantes Hover'), 'description' => __('Cores para estados hover de botões e links'), 'colors' => [ 'primary-hover' => __('Primary hover'), 'secondary-hover' => __('Secondary hover'), 'purple-hover' => __('Purple hover'), 'pink-hover' => __('Pink hover'), 'orange-hover' => __('Orange hover'), ] ], 'scroll' => [ 'title' => __('Scrollbar'), 'description' => __('Cores da barra de rolagem'), 'colors' => [ 'scrollbar_track' => __('Trilho da scrollbar'), 'scrollbar_thumb' => __('Barra da scrollbar'), ] ], 'dark_mode' => [ 'title' => __('Modo Noturno (Acessibilidade)'), 'description' => __('Cores específicas para o modo noturno - recurso de acessibilidade para melhor conforto visual'), 'icon' => 'fa-moon', 'colors' => [ 'dark-mode-body-bg' => __('Fundo do corpo'), 'dark-mode-card-bg' => __('Fundo dos cards'), 'dark-mode-section-bg' => __('Fundo das seções'), 'dark-mode-header-bg' => __('Fundo do cabeçalho'), 'dark-mode-footer-bg' => __('Fundo do rodapé'), 'dark-mode-input-bg' => __('Fundo dos campos'), 'dark-mode-text-primary' => __('Texto principal'), 'dark-mode-text-secondary' => __('Texto secundário'), 'dark-mode-text-muted' => __('Texto discreto'), 'dark-mode-heading' => __('Títulos'), 'dark-mode-link' => __('Links'), 'dark-mode-link-hover' => __('Links (hover)'), 'dark-mode-border' => __('Bordas'), 'dark-mode-border-light' => __('Bordas claras'), 'dark-mode-primary' => __('Cor primária'), 'dark-mode-primary-hover' => __('Primária (hover)'), 'dark-mode-accent' => __('Cor de destaque'), 'dark-mode-nav-bg' => __('Fundo da navegação'), 'dark-mode-nav-link' => __('Links da navegação'), 'dark-mode-nav-hover' => __('Nav. (hover)'), 'dark-mode-success' => __('Sucesso'), 'dark-mode-warning' => __('Alerta'), 'dark-mode-danger' => __('Erro'), 'dark-mode-info' => __('Informação'), 'dark-mode-scrollbar-track' => __('Trilho scrollbar'), 'dark-mode-scrollbar-thumb' => __('Barra scrollbar'), 'dark-mode-waves-color' => __('Cor das ondas'), ] ], ]; $defaultColors = \App\Http\Resources\Admin\ThemeResource::getSystemDefaultColors(); $currentColors = $tema->colors ?? []; @endphp @foreach ($colorGroups as $groupKey => $group)
@if(isset($group['icon'])) @else @endif {{ $group['title'] }} @if($groupKey === 'dark_mode') {{ __('Acessibilidade') }} @endif

{{ $group['description'] }}

@foreach ($group['colors'] as $key => $label) @php $value = old('colors.' . $key, $currentColors[$key] ?? $defaultColors[$key] ?? '#ffffff'); @endphp
@endforeach
@endforeach
{{ __('Cancelar') }}
{{-- Modal para confirmação de reset de tema - fora do formulário principal para evitar aninhamento --}} @endsection