wagtail-enap-designsystem 1.2.1.129__py3-none-any.whl → 1.2.1.130__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- enap_designsystem/blocks/__init__.py +6 -0
- enap_designsystem/blocks/form.py +243 -2
- enap_designsystem/blocks/html_blocks.py +316 -6
- enap_designsystem/blocks/semana_inovacao.py +1 -0
- enap_designsystem/migrations/0395_formulariopage_enable_scoring_and_more.py +106 -0
- enap_designsystem/migrations/0396_alter_areaaluno_body_alter_enapcomponentes_body_and_more.py +51263 -0
- enap_designsystem/migrations/0397_alter_areaaluno_body_alter_enapcomponentes_body_and_more.py +51718 -0
- enap_designsystem/migrations/0398_alter_areaaluno_body_alter_enapcomponentes_body_and_more.py +51718 -0
- enap_designsystem/migrations/0399_alter_areaaluno_body_alter_enapcomponentes_body_and_more.py +51718 -0
- enap_designsystem/migrations/0400_alter_areaaluno_body_alter_enapcomponentes_body_and_more.py +51718 -0
- enap_designsystem/migrations/0401_alter_areaaluno_body_alter_cursoeadpage_curso_and_more.py +52692 -0
- enap_designsystem/migrations/0402_alter_areaaluno_body_alter_enapcomponentes_body_and_more.py +52082 -0
- enap_designsystem/migrations/0403_alter_areaaluno_body_alter_enapcomponentes_body_and_more.py +52802 -0
- enap_designsystem/migrations/0404_sistemavotacaopage_conteudo_pagina.py +253 -0
- enap_designsystem/models.py +13 -0
- enap_designsystem/templates/enap_designsystem/blocks/apresentacao_simple_block.html +1 -1
- enap_designsystem/templates/enap_designsystem/blocks/cards_titles.html +309 -0
- enap_designsystem/templates/enap_designsystem/blocks/clientes_block.html +1 -1
- enap_designsystem/templates/enap_designsystem/blocks/cpnu_dashboard_block.html +5 -0
- enap_designsystem/templates/enap_designsystem/blocks/logos_simple_block.html +329 -0
- enap_designsystem/templates/enap_designsystem/blocks/numeros_block.html +195 -0
- enap_designsystem/templates/enap_designsystem/blocks/page/pagenoticias_block.html +6 -0
- enap_designsystem/templates/enap_designsystem/sistema_votacao_page.html +10 -2
- enap_designsystem/views.py +1 -1
- enap_designsystem/wagtail_hooks.py +390 -9
- {wagtail_enap_designsystem-1.2.1.129.dist-info → wagtail_enap_designsystem-1.2.1.130.dist-info}/METADATA +1 -1
- {wagtail_enap_designsystem-1.2.1.129.dist-info → wagtail_enap_designsystem-1.2.1.130.dist-info}/RECORD +30 -17
- {wagtail_enap_designsystem-1.2.1.129.dist-info → wagtail_enap_designsystem-1.2.1.130.dist-info}/WHEEL +0 -0
- {wagtail_enap_designsystem-1.2.1.129.dist-info → wagtail_enap_designsystem-1.2.1.130.dist-info}/licenses/LICENSE +0 -0
- {wagtail_enap_designsystem-1.2.1.129.dist-info → wagtail_enap_designsystem-1.2.1.130.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,253 @@
|
|
|
1
|
+
# Generated by Django 5.1.6 on 2025-09-09 13:58
|
|
2
|
+
|
|
3
|
+
import wagtail.fields
|
|
4
|
+
from django.db import migrations
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
class Migration(migrations.Migration):
|
|
8
|
+
|
|
9
|
+
dependencies = [
|
|
10
|
+
(
|
|
11
|
+
"enap_designsystem",
|
|
12
|
+
"0403_alter_areaaluno_body_alter_enapcomponentes_body_and_more",
|
|
13
|
+
),
|
|
14
|
+
]
|
|
15
|
+
|
|
16
|
+
operations = [
|
|
17
|
+
migrations.AddField(
|
|
18
|
+
model_name="sistemavotacaopage",
|
|
19
|
+
name="conteudo_pagina",
|
|
20
|
+
field=wagtail.fields.StreamField(
|
|
21
|
+
[("secao_apresentacao", 10)],
|
|
22
|
+
blank=True,
|
|
23
|
+
block_lookup={
|
|
24
|
+
0: (
|
|
25
|
+
"wagtail.blocks.ChoiceBlock",
|
|
26
|
+
[],
|
|
27
|
+
{
|
|
28
|
+
"choices": [
|
|
29
|
+
("#FFFFFF", "Branco (#FFFFFF)"),
|
|
30
|
+
("#F8F9FA", "Cinza Claro (#F8F9FA)"),
|
|
31
|
+
("#000000", "Preto (#000000)"),
|
|
32
|
+
("enap-green", "Verde ENAP"),
|
|
33
|
+
("enap-link", "Verde Link ENAP"),
|
|
34
|
+
("gnova-purple", "Roxo Gnova"),
|
|
35
|
+
("gnova-light", "Roxo Claro Gnova"),
|
|
36
|
+
("blue", "Azul"),
|
|
37
|
+
("green", "Verde"),
|
|
38
|
+
("red", "Vermelho"),
|
|
39
|
+
("orange", "Laranja"),
|
|
40
|
+
("purple", "Roxo"),
|
|
41
|
+
("indigo", "Índigo"),
|
|
42
|
+
("emerald", "Esmeralda"),
|
|
43
|
+
("#132929", "Verde Musgo Escuro"),
|
|
44
|
+
("#F5F7FA", "Azul Enap"),
|
|
45
|
+
("#FCFCFC", "Cinza Enap"),
|
|
46
|
+
("#3A8A9C", "Azul Petróleo"),
|
|
47
|
+
("#25552A", "Verde Floresta Escuro"),
|
|
48
|
+
("#818C27", "Verde Oliva"),
|
|
49
|
+
("#FF7A1B", "Laranja Vibrante"),
|
|
50
|
+
("#FFEB31", "Amarelo Canário"),
|
|
51
|
+
("#FFF0D9", "Creme Suave"),
|
|
52
|
+
("#DB8C3F", "Dourado Queimado"),
|
|
53
|
+
("#990005", "Vermelho Bordô"),
|
|
54
|
+
("#EA1821", "Vermelho Cereja"),
|
|
55
|
+
("#F8F9FA", "Cinza Muito Claro"),
|
|
56
|
+
("#BAC946", "Verdinho"),
|
|
57
|
+
],
|
|
58
|
+
"help_text": "Cor de fundo da seção",
|
|
59
|
+
},
|
|
60
|
+
),
|
|
61
|
+
1: (
|
|
62
|
+
"wagtail.blocks.ChoiceBlock",
|
|
63
|
+
[],
|
|
64
|
+
{
|
|
65
|
+
"choices": [
|
|
66
|
+
("direita", "Imagem à Direita"),
|
|
67
|
+
("esquerda", "Imagem à Esquerda"),
|
|
68
|
+
],
|
|
69
|
+
"help_text": "Posição da imagem em relação ao texto",
|
|
70
|
+
},
|
|
71
|
+
),
|
|
72
|
+
2: (
|
|
73
|
+
"wagtail.blocks.CharBlock",
|
|
74
|
+
(),
|
|
75
|
+
{"help_text": "Título principal da seção", "max_length": 200},
|
|
76
|
+
),
|
|
77
|
+
3: (
|
|
78
|
+
"wagtail.blocks.ChoiceBlock",
|
|
79
|
+
[],
|
|
80
|
+
{
|
|
81
|
+
"choices": [
|
|
82
|
+
("enap-green", "Verde ENAP"),
|
|
83
|
+
("enap-link", "Verde Link ENAP"),
|
|
84
|
+
("gnova-purple", "Roxo Gnova"),
|
|
85
|
+
("gnova-light", "Roxo Claro Gnova"),
|
|
86
|
+
("blue", "Azul"),
|
|
87
|
+
("green", "Verde"),
|
|
88
|
+
("red", "Vermelho"),
|
|
89
|
+
("orange", "Laranja"),
|
|
90
|
+
("purple", "Roxo"),
|
|
91
|
+
("indigo", "Índigo"),
|
|
92
|
+
("emerald", "Esmeralda"),
|
|
93
|
+
("#FFFFFF", "Branco (#FFFFFF)"),
|
|
94
|
+
("#132929", "Verde Musgo Escuro"),
|
|
95
|
+
("#3A8A9C", "Azul Petróleo"),
|
|
96
|
+
("#25552A", "Verde Floresta Escuro"),
|
|
97
|
+
("#818C27", "Verde Oliva"),
|
|
98
|
+
("#FF7A1B", "Laranja Vibrante"),
|
|
99
|
+
("#FFEB31", "Amarelo Canário"),
|
|
100
|
+
("#FFF0D9", "Creme Suave"),
|
|
101
|
+
("#DB8C3F", "Dourado Queimado"),
|
|
102
|
+
("#990005", "Vermelho Bordô"),
|
|
103
|
+
("#EA1821", "Vermelho Cereja"),
|
|
104
|
+
("#BAC946", "Verdinho"),
|
|
105
|
+
],
|
|
106
|
+
"help_text": "Cor do título principal",
|
|
107
|
+
"required": False,
|
|
108
|
+
},
|
|
109
|
+
),
|
|
110
|
+
4: (
|
|
111
|
+
"wagtail.blocks.RichTextBlock",
|
|
112
|
+
(),
|
|
113
|
+
{
|
|
114
|
+
"features": [
|
|
115
|
+
"bold",
|
|
116
|
+
"italic",
|
|
117
|
+
"link",
|
|
118
|
+
"ul",
|
|
119
|
+
"ol",
|
|
120
|
+
"h3",
|
|
121
|
+
"h4",
|
|
122
|
+
"hr",
|
|
123
|
+
"blockquote",
|
|
124
|
+
],
|
|
125
|
+
"help_text": "Subtítulo da seção (opcional)",
|
|
126
|
+
"required": False,
|
|
127
|
+
},
|
|
128
|
+
),
|
|
129
|
+
5: (
|
|
130
|
+
"wagtail.blocks.ChoiceBlock",
|
|
131
|
+
[],
|
|
132
|
+
{
|
|
133
|
+
"choices": [
|
|
134
|
+
("enap-green", "Verde ENAP"),
|
|
135
|
+
("#FFF0D9", "Creme Suave"),
|
|
136
|
+
("enap-link", "Verde Link ENAP"),
|
|
137
|
+
("gnova-purple", "Roxo Gnova"),
|
|
138
|
+
("gnova-light", "Roxo Claro Gnova"),
|
|
139
|
+
("blue", "Azul"),
|
|
140
|
+
("green", "Verde"),
|
|
141
|
+
("red", "Vermelho"),
|
|
142
|
+
("orange", "Laranja"),
|
|
143
|
+
("purple", "Roxo"),
|
|
144
|
+
("indigo", "Índigo"),
|
|
145
|
+
("emerald", "Esmeralda"),
|
|
146
|
+
("#FFFFFF", "Branco (#FFFFFF)"),
|
|
147
|
+
("#132929", "Verde Musgo Escuro"),
|
|
148
|
+
("#00777D", "Enap"),
|
|
149
|
+
("#58606E", "Enap Cinza"),
|
|
150
|
+
("#AFF0ED", "Enap Azul"),
|
|
151
|
+
("#25552A", "Verde Floresta Escuro"),
|
|
152
|
+
("#818C27", "Verde Oliva"),
|
|
153
|
+
("#DB8C3F", "Dourado Queimado"),
|
|
154
|
+
("#990005", "Vermelho Bordô"),
|
|
155
|
+
("#000000", "Preto"),
|
|
156
|
+
("#2F2F2F", "Cinza Escuro"),
|
|
157
|
+
("#4A4A4A", "Cinza Médio"),
|
|
158
|
+
("#383674", "Roxo ENAP"),
|
|
159
|
+
("#BAC946", "Verdinho"),
|
|
160
|
+
],
|
|
161
|
+
"help_text": "Cor do subtítulo",
|
|
162
|
+
},
|
|
163
|
+
),
|
|
164
|
+
6: (
|
|
165
|
+
"wagtail.images.blocks.ImageChooserBlock",
|
|
166
|
+
(),
|
|
167
|
+
{"help_text": "Imagem que aparecerá em formato circular"},
|
|
168
|
+
),
|
|
169
|
+
7: (
|
|
170
|
+
"wagtail.blocks.CharBlock",
|
|
171
|
+
(),
|
|
172
|
+
{
|
|
173
|
+
"default": "Imagem ilustrativa",
|
|
174
|
+
"help_text": "Texto alternativo da imagem",
|
|
175
|
+
"max_length": 100,
|
|
176
|
+
},
|
|
177
|
+
),
|
|
178
|
+
8: (
|
|
179
|
+
"wagtail.blocks.RichTextBlock",
|
|
180
|
+
(),
|
|
181
|
+
{
|
|
182
|
+
"features": [
|
|
183
|
+
"bold",
|
|
184
|
+
"italic",
|
|
185
|
+
"link",
|
|
186
|
+
"ol",
|
|
187
|
+
"ul",
|
|
188
|
+
"hr",
|
|
189
|
+
"document-link",
|
|
190
|
+
],
|
|
191
|
+
"help_text": "Conteúdo principal em rich text",
|
|
192
|
+
"required": False,
|
|
193
|
+
},
|
|
194
|
+
),
|
|
195
|
+
9: (
|
|
196
|
+
"wagtail.blocks.ChoiceBlock",
|
|
197
|
+
[],
|
|
198
|
+
{
|
|
199
|
+
"choices": [
|
|
200
|
+
("enap-green", "Verde ENAP"),
|
|
201
|
+
("#FFF0D9", "Creme Suave"),
|
|
202
|
+
("enap-link", "Verde Link ENAP"),
|
|
203
|
+
("gnova-purple", "Roxo Gnova"),
|
|
204
|
+
("gnova-light", "Roxo Claro Gnova"),
|
|
205
|
+
("blue", "Azul"),
|
|
206
|
+
("green", "Verde"),
|
|
207
|
+
("red", "Vermelho"),
|
|
208
|
+
("orange", "Laranja"),
|
|
209
|
+
("purple", "Roxo"),
|
|
210
|
+
("indigo", "Índigo"),
|
|
211
|
+
("emerald", "Esmeralda"),
|
|
212
|
+
("#FFFFFF", "Branco (#FFFFFF)"),
|
|
213
|
+
("#132929", "Verde Musgo Escuro"),
|
|
214
|
+
("#00777D", "Enap"),
|
|
215
|
+
("#58606E", "Enap Cinza"),
|
|
216
|
+
("#AFF0ED", "Enap Azul"),
|
|
217
|
+
("#25552A", "Verde Floresta Escuro"),
|
|
218
|
+
("#818C27", "Verde Oliva"),
|
|
219
|
+
("#DB8C3F", "Dourado Queimado"),
|
|
220
|
+
("#990005", "Vermelho Bordô"),
|
|
221
|
+
("#000000", "Preto"),
|
|
222
|
+
("#2F2F2F", "Cinza Escuro"),
|
|
223
|
+
("#4A4A4A", "Cinza Médio"),
|
|
224
|
+
("#383674", "Roxo ENAP"),
|
|
225
|
+
("#BAC946", "Verdinho"),
|
|
226
|
+
],
|
|
227
|
+
"help_text": "Cor do texto do conteúdo",
|
|
228
|
+
},
|
|
229
|
+
),
|
|
230
|
+
10: (
|
|
231
|
+
"wagtail.blocks.StructBlock",
|
|
232
|
+
[
|
|
233
|
+
[
|
|
234
|
+
("cor_fundo", 0),
|
|
235
|
+
("posicao_imagem", 1),
|
|
236
|
+
("titulo", 2),
|
|
237
|
+
("cor_titulo", 3),
|
|
238
|
+
("subtitulo", 4),
|
|
239
|
+
("cor_subtitulo", 5),
|
|
240
|
+
("imagem_circular", 6),
|
|
241
|
+
("alt_imagem", 7),
|
|
242
|
+
("conteudo", 8),
|
|
243
|
+
("cor_texto", 9),
|
|
244
|
+
]
|
|
245
|
+
],
|
|
246
|
+
{},
|
|
247
|
+
),
|
|
248
|
+
},
|
|
249
|
+
help_text="Adicione seções de conteúdo para a página",
|
|
250
|
+
verbose_name="Conteúdo da Página",
|
|
251
|
+
),
|
|
252
|
+
),
|
|
253
|
+
]
|
enap_designsystem/models.py
CHANGED
|
@@ -4775,6 +4775,7 @@ class VotoRegistrado(models.Model):
|
|
|
4775
4775
|
super().save(*args, **kwargs)
|
|
4776
4776
|
|
|
4777
4777
|
|
|
4778
|
+
|
|
4778
4779
|
class SistemaVotacaoPage(Page):
|
|
4779
4780
|
"""
|
|
4780
4781
|
Página principal do sistema de votação
|
|
@@ -4824,6 +4825,16 @@ class SistemaVotacaoPage(Page):
|
|
|
4824
4825
|
use_json_field=True,
|
|
4825
4826
|
verbose_name="Imagem de Fundo",
|
|
4826
4827
|
)
|
|
4828
|
+
|
|
4829
|
+
conteudo_pagina = StreamField([
|
|
4830
|
+
('secao_apresentacao', SecaoApresentacaoBlock()),
|
|
4831
|
+
# Você pode adicionar outros blocos aqui também
|
|
4832
|
+
],
|
|
4833
|
+
blank=True,
|
|
4834
|
+
use_json_field=True,
|
|
4835
|
+
verbose_name="Conteúdo da Página",
|
|
4836
|
+
help_text="Adicione seções de conteúdo para a página"
|
|
4837
|
+
)
|
|
4827
4838
|
|
|
4828
4839
|
mostrar_progresso = models.BooleanField(
|
|
4829
4840
|
default=True,
|
|
@@ -4900,6 +4911,8 @@ class SistemaVotacaoPage(Page):
|
|
|
4900
4911
|
FieldPanel('background_image_fundo'),
|
|
4901
4912
|
], heading="Conteúdo do Header"),
|
|
4902
4913
|
|
|
4914
|
+
FieldPanel('conteudo_pagina'),
|
|
4915
|
+
|
|
4903
4916
|
FieldPanel('configuracoes_votacao'),
|
|
4904
4917
|
|
|
4905
4918
|
MultiFieldPanel([
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
{% if value.cards %}
|
|
26
26
|
<div class="secao-cartoes {{ value.grid_tipo }}">
|
|
27
27
|
{% for card_block in value.cards %}
|
|
28
|
-
{% if card_block.block_type == '
|
|
28
|
+
{% if card_block.block_type == 'card_apresentacao' %}
|
|
29
29
|
<div class="secao-cartao">
|
|
30
30
|
<!-- Ícone -->
|
|
31
31
|
{% if card_block.value.icone %}
|
|
@@ -0,0 +1,309 @@
|
|
|
1
|
+
<!-- enap_designsystem/blocks/cards_titles.html -->
|
|
2
|
+
{% load wagtailcore_tags wagtailimages_tags %}
|
|
3
|
+
<section class="secao-apresentacao-cards">
|
|
4
|
+
<!-- Background com imagem se fornecida -->
|
|
5
|
+
<div class="secao-background"
|
|
6
|
+
{% if value.background_image_fundo_bg %}
|
|
7
|
+
style="background-image: url('{{ value.background_image_fundo_bg.url }}'); background-size: cover; background-position: center; background-repeat: no-repeat;"
|
|
8
|
+
{% else %}
|
|
9
|
+
style="background: linear-gradient(135deg, #6A1B9A 0%, #4A148C 50%, #2E1065 100%);"
|
|
10
|
+
{% endif %}>
|
|
11
|
+
|
|
12
|
+
<!-- Overlay para garantir legibilidade -->
|
|
13
|
+
<div class="secao-overlay">
|
|
14
|
+
|
|
15
|
+
<!-- Container principal -->
|
|
16
|
+
<div class="container mx-auto px-4 py-16 lg:py-24">
|
|
17
|
+
|
|
18
|
+
<!-- Título centralizado -->
|
|
19
|
+
{% if value.titulo %}
|
|
20
|
+
<div class="text-center mb-12 lg:mb-16">
|
|
21
|
+
<h2 class="titulo-secao"
|
|
22
|
+
style="color: {{ value.cor_titulo|default:'#FFFFFF' }};">
|
|
23
|
+
{{ value.titulo }}
|
|
24
|
+
</h2>
|
|
25
|
+
</div>
|
|
26
|
+
{% endif %}
|
|
27
|
+
|
|
28
|
+
<!-- Grid de Cards -->
|
|
29
|
+
{% if value.cards %}
|
|
30
|
+
<div class="cards-container {{ value.layout_cards|default:'cards-3-colunas' }}">
|
|
31
|
+
{% for card in value.cards %}
|
|
32
|
+
{% if card.block_type == 'card' %}
|
|
33
|
+
<div class="card-item">
|
|
34
|
+
<div class="card-apresentacao">
|
|
35
|
+
|
|
36
|
+
<!-- Imagem do card -->
|
|
37
|
+
{% if card.value.image %}
|
|
38
|
+
<div class="card-imagem">
|
|
39
|
+
{% image card.value.image width-400 as card_img %}
|
|
40
|
+
<img src="{{ card_img.url }}"
|
|
41
|
+
alt="{{ card.value.title|default:'Card' }}"
|
|
42
|
+
class="card-img">
|
|
43
|
+
</div>
|
|
44
|
+
{% endif %}
|
|
45
|
+
|
|
46
|
+
<!-- Conteúdo do card -->
|
|
47
|
+
<div class="card-conteudo">
|
|
48
|
+
|
|
49
|
+
<!-- Título -->
|
|
50
|
+
{% if card.value.title %}
|
|
51
|
+
<h3 class="card-titulo">
|
|
52
|
+
{{ card.value.title }}
|
|
53
|
+
</h3>
|
|
54
|
+
{% endif %}
|
|
55
|
+
|
|
56
|
+
<!-- Subtítulo/Cargo -->
|
|
57
|
+
{% if card.value.subtitle %}
|
|
58
|
+
<p class="card-subtitulo">
|
|
59
|
+
{{ card.value.subtitle }}
|
|
60
|
+
</p>
|
|
61
|
+
{% endif %}
|
|
62
|
+
|
|
63
|
+
<!-- Descrição -->
|
|
64
|
+
{% if card.value.description %}
|
|
65
|
+
<div class="card-descricao">
|
|
66
|
+
{{ card.value.description|richtext }}
|
|
67
|
+
</div>
|
|
68
|
+
{% endif %}
|
|
69
|
+
|
|
70
|
+
<!-- Link/Botão -->
|
|
71
|
+
{% if card.value.link_url %}
|
|
72
|
+
<div class="card-acao">
|
|
73
|
+
<a href="{{ card.value.link_url }}"
|
|
74
|
+
class="card-link"
|
|
75
|
+
{% if card.value.link_target %}target="{{ card.value.link_target }}"{% endif %}>
|
|
76
|
+
{{ card.value.link_text|default:'Saiba mais' }}
|
|
77
|
+
<svg class="link-arrow" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
|
|
78
|
+
<path d="M5 12h14M12 5l7 7-7 7"/>
|
|
79
|
+
</svg>
|
|
80
|
+
</a>
|
|
81
|
+
</div>
|
|
82
|
+
{% endif %}
|
|
83
|
+
|
|
84
|
+
</div>
|
|
85
|
+
|
|
86
|
+
</div>
|
|
87
|
+
</div>
|
|
88
|
+
{% endif %}
|
|
89
|
+
{% endfor %}
|
|
90
|
+
</div>
|
|
91
|
+
{% endif %}
|
|
92
|
+
|
|
93
|
+
</div>
|
|
94
|
+
</div>
|
|
95
|
+
</div>
|
|
96
|
+
</section>
|
|
97
|
+
|
|
98
|
+
<style>
|
|
99
|
+
.secao-apresentacao-cards {
|
|
100
|
+
position: relative;
|
|
101
|
+
min-height: 600px;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
.secao-background {
|
|
105
|
+
position: relative;
|
|
106
|
+
width: 100%;
|
|
107
|
+
min-height: 600px;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
.secao-overlay {
|
|
111
|
+
position: absolute;
|
|
112
|
+
top: 0;
|
|
113
|
+
left: 0;
|
|
114
|
+
right: 0;
|
|
115
|
+
bottom: 0;
|
|
116
|
+
background: rgba(106, 27, 154, 0.15);
|
|
117
|
+
backdrop-filter: blur(0.5px);
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
.titulo-secao {
|
|
121
|
+
font-size: 2.5rem;
|
|
122
|
+
font-weight: 700;
|
|
123
|
+
line-height: 1.2;
|
|
124
|
+
text-align: center;
|
|
125
|
+
margin-bottom: 0;
|
|
126
|
+
text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
.cards-container {
|
|
130
|
+
display: grid;
|
|
131
|
+
gap: 2rem;
|
|
132
|
+
max-width: 1200px;
|
|
133
|
+
margin: 0 auto;
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
/* Layouts responsivos */
|
|
137
|
+
.cards-1-coluna {
|
|
138
|
+
grid-template-columns: 1fr;
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
.cards-2-colunas {
|
|
142
|
+
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
|
|
143
|
+
max-width: 800px;
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
.cards-3-colunas {
|
|
147
|
+
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
|
|
148
|
+
max-width: 1000px;
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
.cards-4-colunas {
|
|
152
|
+
grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
.cards-5-colunas {
|
|
156
|
+
grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
.card-apresentacao {
|
|
160
|
+
background: rgba(0, 0, 0, 0.6);
|
|
161
|
+
border-radius: 12px;
|
|
162
|
+
overflow: hidden;
|
|
163
|
+
transition: all 0.3s ease;
|
|
164
|
+
backdrop-filter: blur(10px);
|
|
165
|
+
border: 1px solid rgba(255, 255, 255, 0.1);
|
|
166
|
+
height: 100%;
|
|
167
|
+
display: flex;
|
|
168
|
+
flex-direction: column;
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
.card-apresentacao:hover {
|
|
172
|
+
transform: translateY(-8px);
|
|
173
|
+
background: rgba(0, 0, 0, 0.7);
|
|
174
|
+
border-color: rgba(255, 255, 255, 0.2);
|
|
175
|
+
box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
.card-imagem {
|
|
179
|
+
position: relative;
|
|
180
|
+
height: 200px;
|
|
181
|
+
overflow: hidden;
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
.card-img {
|
|
185
|
+
width: 100%;
|
|
186
|
+
height: 100%;
|
|
187
|
+
object-fit: cover;
|
|
188
|
+
transition: transform 0.3s ease;
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
.card-apresentacao:hover .card-img {
|
|
192
|
+
transform: scale(1.05);
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
.card-conteudo {
|
|
196
|
+
padding: 1.5rem;
|
|
197
|
+
flex: 1;
|
|
198
|
+
display: flex;
|
|
199
|
+
flex-direction: column;
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
.card-titulo {
|
|
203
|
+
font-size: 1.25rem;
|
|
204
|
+
font-weight: 600;
|
|
205
|
+
margin-bottom: 0.5rem;
|
|
206
|
+
line-height: 1.4;
|
|
207
|
+
color: #FFFFFF;
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
.card-subtitulo {
|
|
211
|
+
font-size: 0.9rem;
|
|
212
|
+
font-weight: 400;
|
|
213
|
+
color: rgba(255, 255, 255, 0.8);
|
|
214
|
+
margin-bottom: 1rem;
|
|
215
|
+
font-style: italic;
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
.card-descricao {
|
|
219
|
+
flex: 1;
|
|
220
|
+
font-size: 0.95rem;
|
|
221
|
+
line-height: 1.6;
|
|
222
|
+
margin-bottom: 1rem;
|
|
223
|
+
color: rgba(255, 255, 255, 0.9);
|
|
224
|
+
}
|
|
225
|
+
|
|
226
|
+
.card-descricao * {
|
|
227
|
+
color: inherit !important;
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
.card-acao {
|
|
231
|
+
margin-top: auto;
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
.card-link {
|
|
235
|
+
display: inline-flex;
|
|
236
|
+
align-items: center;
|
|
237
|
+
gap: 0.5rem;
|
|
238
|
+
font-size: 0.95rem;
|
|
239
|
+
font-weight: 500;
|
|
240
|
+
text-decoration: none;
|
|
241
|
+
color: #FFFFFF;
|
|
242
|
+
transition: all 0.3s ease;
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
.card-link:hover {
|
|
246
|
+
transform: translateX(4px);
|
|
247
|
+
color: #FFFFFF;
|
|
248
|
+
}
|
|
249
|
+
|
|
250
|
+
.link-arrow {
|
|
251
|
+
transition: transform 0.3s ease;
|
|
252
|
+
}
|
|
253
|
+
|
|
254
|
+
.card-link:hover .link-arrow {
|
|
255
|
+
transform: translateX(4px);
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
/* Responsividade */
|
|
259
|
+
@media (max-width: 768px) {
|
|
260
|
+
.titulo-secao {
|
|
261
|
+
font-size: 2rem;
|
|
262
|
+
}
|
|
263
|
+
|
|
264
|
+
.cards-container {
|
|
265
|
+
grid-template-columns: 1fr;
|
|
266
|
+
gap: 1.5rem;
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
.card-imagem {
|
|
270
|
+
height: 160px;
|
|
271
|
+
}
|
|
272
|
+
|
|
273
|
+
.card-conteudo {
|
|
274
|
+
padding: 1.25rem;
|
|
275
|
+
}
|
|
276
|
+
|
|
277
|
+
.card-titulo {
|
|
278
|
+
font-size: 1.1rem;
|
|
279
|
+
}
|
|
280
|
+
|
|
281
|
+
.card-subtitulo {
|
|
282
|
+
font-size: 0.85rem;
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
|
|
286
|
+
@media (max-width: 480px) {
|
|
287
|
+
.titulo-secao {
|
|
288
|
+
font-size: 1.75rem;
|
|
289
|
+
}
|
|
290
|
+
|
|
291
|
+
.container {
|
|
292
|
+
padding-left: 1rem;
|
|
293
|
+
padding-right: 1rem;
|
|
294
|
+
}
|
|
295
|
+
|
|
296
|
+
.card-imagem {
|
|
297
|
+
height: 140px;
|
|
298
|
+
}
|
|
299
|
+
|
|
300
|
+
.card-conteudo {
|
|
301
|
+
padding: 1rem;
|
|
302
|
+
}
|
|
303
|
+
|
|
304
|
+
.card-titulo {
|
|
305
|
+
font-size: 1rem;
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
</style></document_content>
|
|
309
|
+
</invoke>
|