/* ==========================================================================
   PADRÕES DE BLOCO DO TEMA (inc/padroes.php)
   Carregada no site (depois do app.css) e no editor de blocos (add_editor_style).
   Cores só pelas variáveis --ufpr-*: os padrões seguem os temas claro, escuro
   e alto contraste sozinhos. Os seletores com #conteudo .entry-content vencem
   as regras gerais do conteúdo no site; os sem prefixo valem no editor.
   ========================================================================== */

/* Destaque com chamada: faixa azul com título, texto e botões */
.padrao-destaque { margin: 0 0 1.5em; padding: 36px 40px; border-radius: var(--ufpr-raio-lg); background-color: var(--ufpr-barra-fundo); color: var(--ufpr-barra-texto); }
.padrao-destaque > * { max-width: 46rem; }
.padrao-destaque > :first-child { margin-top: 0; }
.padrao-destaque > :last-child { margin-bottom: 0; }
.padrao-destaque h2, .padrao-destaque h3, #conteudo .entry-content .padrao-destaque h2 { margin-top: 0; color: var(--ufpr-barra-texto); }
.padrao-destaque p { color: inherit; font-size: 1.1em; line-height: 1.6; }
.padrao-destaque a:not(.wp-block-button__link), .padrao-destaque a:not(.wp-block-button__link):visited { color: inherit; }
.padrao-destaque .wp-block-button .wp-block-button__link:not(.has-background) { border: 2px solid var(--ufpr-barra-texto); background-color: var(--ufpr-barra-texto); color: var(--ufpr-barra-fundo); }
.padrao-destaque .wp-block-button .wp-block-button__link:not(.has-background):hover { background-color: transparent; color: var(--ufpr-barra-texto); }
.padrao-destaque .is-style-outline > .wp-block-button__link:not(.has-background) { background-color: transparent; color: var(--ufpr-barra-texto); }
.padrao-destaque .is-style-outline > .wp-block-button__link:not(.has-background):hover { background-color: var(--ufpr-barra-realce); color: var(--ufpr-barra-texto); }

/* Cartões de serviço */
.padrao-cartoes { gap: 24px; margin: 0 0 1.5em; }
.padrao-cartao { display: flex; flex-direction: column; padding: 22px 24px; background-color: var(--ufpr-superficie); border: 1px solid var(--ufpr-borda); border-radius: var(--ufpr-raio); box-shadow: var(--ufpr-sombra-leve); }
.wp-block-column.padrao-cartao > * { margin-left: 0; margin-right: 0; } /* no editor, as margens automáticas centralizariam os blocos */
.padrao-cartao h3, #conteudo .entry-content .padrao-cartao h3 { margin: 0 0 0.5em; font-size: 1.2em; color: var(--ufpr-titulo-forte); }
.padrao-cartao p { margin: 0 0 1em; }
.padrao-cartao .padrao-cartao__link { margin: auto 0 0; font-weight: 600; }

/* Linha do tempo: lista com o ano em negrito no início de cada item */
.padrao-linha-tempo, #conteudo .entry-content .padrao-linha-tempo { position: relative; margin: 0 0 1.5em; padding: 0 0 0 2rem; list-style: none; }
.padrao-linha-tempo::before { content: ""; position: absolute; top: 0.45em; bottom: 0.45em; left: 0.5rem; border-left: 2px solid var(--ufpr-borda-campo); }
.padrao-linha-tempo li, #conteudo .entry-content .padrao-linha-tempo li { position: relative; margin: 0; padding: 0 0 1.25em; }
.padrao-linha-tempo li:last-child { padding-bottom: 0; }
.padrao-linha-tempo li::before { content: ""; position: absolute; top: 0.35em; left: -1.85rem; width: 0.8rem; height: 0.8rem; border: 2px solid var(--ufpr-destaque); border-radius: 50%; background-color: var(--ufpr-fundo); box-sizing: border-box; }
.padrao-linha-tempo li::marker { content: none; }
.padrao-linha-tempo strong { display: block; color: var(--ufpr-titulo-forte); font-size: 1.1em; }

/* Galeria */
.padrao-galeria img { border-radius: var(--ufpr-raio-sm); }
.padrao-galeria figcaption { font-size: 0.85em; }

/* Chamada para edital */
.padrao-edital { margin: 0 0 1.5em; padding: 26px 30px; background-color: var(--ufpr-superficie); border: 1px solid var(--ufpr-borda); border-radius: var(--ufpr-raio); box-shadow: var(--ufpr-sombra-leve); }
.padrao-edital > :last-child { margin-bottom: 0; }
.padrao-edital h2, #conteudo .entry-content .padrao-edital h2 { margin: 0.4em 0 0.4em; font-size: 1.45em; }
.padrao-edital .padrao-edital__selo { display: inline-block; margin: 0; padding: 3px 12px; border-radius: 999px; background-color: var(--ufpr-aviso-fundo); color: var(--ufpr-aviso-texto); font-size: 0.8em; font-weight: 700; letter-spacing: 0.05em; text-transform: uppercase; }
.padrao-edital__datas, #conteudo .entry-content .padrao-edital__datas { margin: 0 0 1.25em; padding: 0; list-style: none; }
.padrao-edital__datas li, #conteudo .entry-content .padrao-edital__datas li { margin: 0; padding: 8px 0; border-top: 1px solid var(--ufpr-borda); }
.padrao-edital__datas li:last-child { border-bottom: 1px solid var(--ufpr-borda); }
.padrao-edital__datas li::marker { content: none; }

/* Números do laboratório */
.padrao-numeros { gap: 16px; margin: 0 0 1.5em; padding: 28px 24px; border-radius: var(--ufpr-raio); background-color: var(--ufpr-azul-suave); text-align: center; }
.padrao-numero p { margin: 0; }
.padrao-numero .padrao-numero__valor { color: var(--ufpr-titulo-forte); font-size: 2.6em; font-weight: 800; line-height: 1.1; }
.padrao-numero .padrao-numero__rotulo { color: var(--ufpr-texto); font-size: 0.95em; }

/* Cartões com ícone: estilos de bloco da Coluna (inc/padroes.php, wpufpr_estilos_bloco()).
   O estilo escolhido em "Estilos" dá à coluna o visual de cartão e desenha o ícone
   (máscara SVG na cor --ufpr-destaque, sobre um quadrado em --ufpr-azul-suave). */
.wp-block-column[class*="is-style-icone-"] { position: relative; display: flex; flex-direction: column; padding: 22px 24px; background-color: var(--ufpr-superficie); border: 1px solid var(--ufpr-borda); border-radius: var(--ufpr-raio); box-shadow: var(--ufpr-sombra-leve); }
.wp-block-column[class*="is-style-icone-"] > * { margin-left: 0; margin-right: 0; }
.wp-block-column[class*="is-style-icone-"]::before { content: ""; display: block; flex: none; width: 48px; height: 48px; margin: 0 0 16px; border-radius: var(--ufpr-raio); background-color: var(--ufpr-azul-suave); }
.wp-block-column[class*="is-style-icone-"]::after { content: ""; position: absolute; top: 34px; left: 36px; width: 24px; height: 24px; background-color: var(--ufpr-destaque); -webkit-mask: var(--ufpr-icone-desenho) center / contain no-repeat; mask: var(--ufpr-icone-desenho) center / contain no-repeat; }
.wp-block-column[class*="is-style-icone-"] h3, #conteudo .entry-content .wp-block-column[class*="is-style-icone-"] h3 { margin: 0 0 0.5em; font-size: 1.2em; color: var(--ufpr-titulo-forte); }
.wp-block-column[class*="is-style-icone-"] p { margin: 0 0 1em; }
.wp-block-column[class*="is-style-icone-"] .padrao-cartao__link { margin: auto 0 0; font-weight: 600; }

/* Cartões com imagem: a imagem ocupa o alto do cartão, de borda a borda */
.padrao-cartao--imagem { overflow: hidden; padding-top: 0; }
.padrao-cartao--imagem > .padrao-cartao__imagem, .wp-block-column.padrao-cartao--imagem > .padrao-cartao__imagem, #conteudo .entry-content .padrao-cartao--imagem > .padrao-cartao__imagem { margin: 0 -24px 18px; max-width: none; }
.padrao-cartao__imagem img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; border-radius: 0; }

/* Avisos: estilos de bloco do Grupo (informação, atenção, erro, sucesso). O tipo
   também vem escrito no texto ("Atenção:"), para não depender só da cor e do ícone. */
.wp-block-group[class*="is-style-aviso-"], #conteudo .entry-content .wp-block-group[class*="is-style-aviso-"] { position: relative; margin: 0 0 1.5em; padding: 16px 20px 16px 54px; border: 1px solid var(--ufpr-caixa-borda); border-radius: var(--ufpr-raio); background-color: var(--ufpr-caixa-fundo); color: var(--ufpr-caixa-texto); }
.wp-block-group[class*="is-style-aviso-"]::before { content: ""; position: absolute; top: 17px; left: 20px; width: 22px; height: 22px; background-color: currentColor; -webkit-mask: var(--ufpr-icone-desenho) center / contain no-repeat; mask: var(--ufpr-icone-desenho) center / contain no-repeat; }
.wp-block-group[class*="is-style-aviso-"] > *, .wp-block-group[class*="is-style-aviso-"] > .wp-block-group__inner-container > *, #conteudo .entry-content .wp-block-group[class*="is-style-aviso-"] > .wp-block-group__inner-container > * { margin-top: 0; margin-bottom: 0.6em; }
/* Em temas clássicos, o WordPress põe o conteúdo do Grupo num .wp-block-group__inner-container */
.wp-block-group[class*="is-style-aviso-"] > :last-child, .wp-block-group[class*="is-style-aviso-"] > .wp-block-group__inner-container > :last-child, #conteudo .entry-content .wp-block-group[class*="is-style-aviso-"] > .wp-block-group__inner-container > :last-child { margin-bottom: 0; }
.wp-block-group[class*="is-style-aviso-"] p, .wp-block-group[class*="is-style-aviso-"] li, .wp-block-group[class*="is-style-aviso-"] strong, #conteudo .entry-content .wp-block-group[class*="is-style-aviso-"] p { color: inherit; }
.wp-block-group[class*="is-style-aviso-"] a, .wp-block-group[class*="is-style-aviso-"] a:visited, .wp-block-group[class*="is-style-aviso-"] a:hover, #conteudo .entry-content .wp-block-group[class*="is-style-aviso-"] a { color: inherit; text-decoration: underline; }
.is-style-aviso-informacao { --ufpr-caixa-fundo: var(--ufpr-info-fundo); --ufpr-caixa-borda: var(--ufpr-info-borda); --ufpr-caixa-texto: var(--ufpr-info-texto); }
.is-style-aviso-atencao { --ufpr-caixa-fundo: var(--ufpr-aviso-fundo); --ufpr-caixa-borda: var(--ufpr-aviso-borda); --ufpr-caixa-texto: var(--ufpr-aviso-texto); }
.is-style-aviso-erro { --ufpr-caixa-fundo: var(--ufpr-erro-fundo); --ufpr-caixa-borda: var(--ufpr-erro-borda); --ufpr-caixa-texto: var(--ufpr-erro-texto); }
.is-style-aviso-sucesso { --ufpr-caixa-fundo: var(--ufpr-sucesso-fundo); --ufpr-caixa-borda: var(--ufpr-sucesso-borda); --ufpr-caixa-texto: var(--ufpr-sucesso-texto); }

/* Desenhos dos ícones (os mesmos de wpufpr_icones(), em functions.php) */
.is-style-icone-pesquisa { --ufpr-icone-desenho: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 3h6M10 3v6l-5.6 9.6A1.6 1.6 0 0 0 5.8 21h12.4a1.6 1.6 0 0 0 1.4-2.4L14 9V3'/%3E%3Cpath d='M7.2 15h9.6'/%3E%3C/svg%3E"); }
.is-style-icone-ensino { --ufpr-icone-desenho: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 9.5 12 5l10 4.5L12 14z'/%3E%3Cpath d='M6 11.5V16c0 1.5 2.7 3 6 3s6-1.5 6-3v-4.5M22 9.5V15'/%3E%3C/svg%3E"); }
.is-style-icone-equipe { --ufpr-icone-desenho: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='8' r='3.5'/%3E%3Cpath d='M2.5 20a6.5 6.5 0 0 1 13 0'/%3E%3Cpath d='M15.5 4.7a3.5 3.5 0 0 1 0 6.6M17.5 13.6A6.5 6.5 0 0 1 21.5 20'/%3E%3C/svg%3E"); }
.is-style-icone-publicacoes { --ufpr-icone-desenho: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 18.5V5a2 2 0 0 1 2-2h14v15H6a2 2 0 0 0-2 2v0a2 2 0 0 0 2 2h14'/%3E%3Cpath d='M8 7h8'/%3E%3C/svg%3E"); }
.is-style-icone-documentos { --ufpr-icone-desenho: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 3h8l4 4v14H6zM14 3v4h4M9 12h6M9 16h6'/%3E%3C/svg%3E"); }
.is-style-icone-eventos { --ufpr-icone-desenho: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M3 10h18M8 3v4M16 3v4'/%3E%3C/svg%3E"); }
.is-style-icone-resultados { --ufpr-icone-desenho: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 20h16M7 16v-4M12 16V7M17 16v-6'/%3E%3C/svg%3E"); }
.is-style-icone-inovacao { --ufpr-icone-desenho: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 18h6M10 21h4'/%3E%3Cpath d='M12 3a6 6 0 0 0-3.6 10.8c.7.6 1.1 1.3 1.1 2.2h5c0-.9.4-1.6 1.1-2.2A6 6 0 0 0 12 3z'/%3E%3C/svg%3E"); }
.is-style-icone-parcerias { --ufpr-icone-desenho: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M3 12h18M12 3a14 14 0 0 1 0 18M12 3a14 14 0 0 0 0 18'/%3E%3C/svg%3E"); }
.is-style-icone-contato { --ufpr-icone-desenho: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m3 7 9 6 9-6'/%3E%3C/svg%3E"); }
.is-style-icone-localizacao { --ufpr-icone-desenho: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-7-6.2-7-12a7 7 0 0 1 14 0c0 5.8-7 12-7 12z'/%3E%3Ccircle cx='12' cy='9' r='2.5'/%3E%3C/svg%3E"); }
.is-style-icone-informacao { --ufpr-icone-desenho: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 11v6M12 7.5h.01'/%3E%3C/svg%3E"); }
.is-style-aviso-informacao { --ufpr-icone-desenho: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 11v6M12 7.5h.01'/%3E%3C/svg%3E"); }
.is-style-aviso-atencao { --ufpr-icone-desenho: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3 2 20h20z'/%3E%3Cpath d='M12 10v4M12 17h.01'/%3E%3C/svg%3E"); }
.is-style-aviso-erro { --ufpr-icone-desenho: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='m15 9-6 6M9 9l6 6'/%3E%3C/svg%3E"); }
.is-style-aviso-sucesso { --ufpr-icone-desenho: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='m8 12.5 2.7 2.7L16 9.8'/%3E%3C/svg%3E"); }

/* Celular */
@media screen and (max-width: 639px) {
    .padrao-destaque { padding: 26px 22px; }
    .padrao-edital { padding: 22px 20px; }
    .padrao-numeros { padding: 22px 16px; }
}

/* Impressão: sem fundos (seção 15 do app.css), com bordas para separar */
@media print {
    .padrao-destaque, .padrao-numeros, .padrao-cartao, .padrao-edital { border: 1px solid #999999 !important; padding: 10pt !important; }
    .wp-block-column[class*="is-style-icone-"] { border: 1px solid #999999 !important; padding: 10pt !important; }
    .wp-block-column[class*="is-style-icone-"]::before, .wp-block-column[class*="is-style-icone-"]::after, .wp-block-group[class*="is-style-aviso-"]::before { display: none; }
    .wp-block-group[class*="is-style-aviso-"] { border: 1px solid #999999 !important; padding: 8pt 10pt !important; }
    .padrao-edital .padrao-edital__selo { border: 1px solid #000000 !important; }
}
