/* ==========================================================================
   Folha de Estilos — OJS 3.5.0.5 (tema padrão / Default Theme)
   Visual baseado no portal www.unitins.br
   --------------------------------------------------------------------------
   ATENÇÃO: as cores abaixo foram ESTIMADAS a partir de um print do portal,
   não do CSS oficial. Confira com o conta-gotas do DevTools (F12) e ajuste.
   ========================================================================== */

/* Fonte: não confirmei qual o portal usa. Se descobrir (ex.: via DevTools),
   descomente e ajuste a linha abaixo e a variável --fonte-base.
@import url("https://fonts.googleapis.com/css2?family=Nunito+Sans:wght@400;600;700;800&display=swap");
*/

/* ---------- 1. Variáveis ---------- */
:root {
  --azul-unitins:   #1e3f8f;   /* texto do menu, logo, títulos     — ESTIMADO */
  --azul-faixa:     #2a52a8;   /* faixa "Eu sou:" abaixo do menu   — ESTIMADO */
  --azul-escuro:    #17306b;   /* botões em pílula, cartões, rodapé — ESTIMADO */
  --amarelo:        #f6c21b;   /* botão "ENGLISH", destaques       — ESTIMADO */
  --amarelo-escuro: #d9a50c;

  --cor-texto:       #1f2933;
  --cor-texto-suave: #52606d;
  --cor-fundo:       #f7f8fa;
  --cor-superficie:  #ffffff;
  --cor-borda:       #dde3ee;

  --fonte-base: "Nunito Sans", "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;

  --raio: 6px;
  --raio-pilula: 14px;
  --sombra: 0 2px 6px rgba(23, 48, 107, .10);
  --largura-max: 1100px;
}

/* ---------- 2. Base ---------- */
body,
.pkp_structure_page {
  background: var(--cor-fundo);
  color: var(--cor-texto);
  font-family: var(--fonte-base);
  font-size: 15px;
  line-height: 1.6;
}

a {
  color: var(--azul-unitins);
  text-decoration: none;
}
a:hover,
a:focus {
  color: var(--azul-escuro);
  text-decoration: underline;
}

h1, h2, h3, h4 {
  font-family: var(--fonte-base);
  color: var(--azul-escuro);
  font-weight: 800;
  line-height: 1.3;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 3px solid var(--amarelo);
  outline-offset: 2px;
}

/* ---------- 3. Cabeçalho (branco, logo centralizado, faixa azul abaixo) ---------- */
.pkp_structure_head {
  background: var(--cor-superficie);
  border-bottom: 10px solid var(--azul-faixa);
  box-shadow: none;
}

.pkp_head_wrapper {
  max-width: var(--largura-max);
}

.pkp_site_name_wrapper,
.pkp_site_name {
  text-align: center;
}

.pkp_site_name .is_text,
.pkp_site_name a {
  color: var(--azul-unitins);
  font-weight: 700;
}
.pkp_site_name a:hover {
  text-decoration: none;
  opacity: .85;
}

.pkp_site_name .is_img img {
  max-height: 70px;
  width: auto;
  margin: 0 auto;
}

/* ---------- 4. Menu principal (caixa alta, azul-marinho sobre branco) ---------- */
.pkp_navigation_primary_row,
.pkp_navigation_primary_wrapper {
  background: transparent;
  text-align: center;
}

.pkp_navigation_primary > li > a {
  color: var(--azul-unitins);
  font-weight: 700;
  text-transform: uppercase;
  font-size: .9rem;
  letter-spacing: .01em;
  border-bottom: 3px solid transparent;
  transition: border-color .2s ease, color .2s ease;
}
.pkp_navigation_primary > li > a:hover,
.pkp_navigation_primary > li > a:focus {
  color: var(--azul-escuro);
  border-bottom-color: var(--amarelo);
  text-decoration: none;
}

/* Submenus */
.pkp_navigation_primary ul {
  background: var(--cor-superficie);
  border: 1px solid var(--cor-borda);
  border-top: 3px solid var(--azul-faixa);
  border-radius: 0 0 var(--raio) var(--raio);
  box-shadow: var(--sombra);
}
.pkp_navigation_primary ul a {
  color: var(--azul-unitins);
  text-transform: none;
}
.pkp_navigation_primary ul a:hover {
  background: var(--cor-fundo);
  color: var(--azul-escuro);
}

/* Menu do usuário (Entrar / Cadastro) */
.pkp_navigation_user > li > a {
  color: var(--azul-unitins);
  font-weight: 600;
}

/* Busca — pílula amarela, como o botão "ENGLISH" */
.pkp_navigation_search_wrapper a,
.pkp_head_wrapper .pkp_search {
  background: var(--amarelo);
  color: var(--azul-escuro);
  border-radius: var(--raio-pilula);
  padding: .2rem .8rem;
  font-weight: 700;
}
.pkp_navigation_search_wrapper a:hover {
  background: var(--amarelo-escuro);
  text-decoration: none;
}

/* ---------- 5. Conteúdo ---------- */
.pkp_structure_content {
  max-width: var(--largura-max);
  background: var(--cor-superficie);
}

.cmp_breadcrumbs {
  font-size: .85rem;
  color: var(--cor-texto-suave);
}
.cmp_breadcrumbs a {
  color: var(--azul-unitins);
}

/* ---------- 6. Barra lateral (estilo dos cartões dos campi) ---------- */
.pkp_block {
  background: var(--azul-escuro);
  color: #fff;
  border-radius: var(--raio);
  margin-bottom: 1rem;
  padding: 1rem 1.1rem;
  border: none;
}
.pkp_block .title {
  color: #fff;
  font-weight: 800;
  text-transform: uppercase;
  font-size: .95rem;
  border-bottom: 2px solid var(--amarelo);
  padding-bottom: .35rem;
}
.pkp_block a {
  color: #fff;
}
.pkp_block a:hover {
  color: var(--amarelo);
}
.pkp_block li a::before {
  content: "› ";
  font-weight: 700;
}

/* ---------- 7. Página inicial da revista ---------- */
.page_index_journal .homepage_image img {
  width: 100%;
  height: auto;
}

.page_index_journal .current_issue > h2,
.page_index_journal .cmp_announcements > h2 {
  text-transform: uppercase;
  border-bottom: 3px solid var(--amarelo);
  padding-bottom: .25rem;
}

/* ---------- 8. Sumário / lista de artigos ---------- */
.obj_issue_toc .sections .section > h2,
.obj_issue_toc .section > h2 {
  background: var(--azul-faixa);
  color: #fff;
  text-transform: uppercase;
  font-size: 1rem;
  padding: .45rem .8rem;
  border-radius: var(--raio);
}

.obj_article_summary {
  padding: .8rem 0;
  border-bottom: 1px solid var(--cor-borda);
}
.obj_article_summary > .title a {
  color: var(--azul-escuro);
  font-weight: 700;
}
.obj_article_summary > .title a:hover {
  color: var(--azul-faixa);
}
.obj_article_summary .meta,
.obj_article_summary .authors {
  color: var(--cor-texto-suave);
  font-size: .9rem;
}

/* Botões de galé (PDF, HTML…) em pílula azul */
.obj_galley_link {
  background: var(--azul-escuro);
  color: #fff;
  border: none;
  border-radius: var(--raio-pilula);
  font-weight: 700;
  text-transform: uppercase;
  transition: background .2s ease, color .2s ease;
}
.obj_galley_link:hover,
.obj_galley_link:focus {
  background: var(--amarelo);
  color: var(--azul-escuro);
  text-decoration: none;
}

/* ---------- 9. Página do artigo ---------- */
.obj_article_details .page_title {
  font-size: 1.75rem;
  color: var(--azul-escuro);
}
.obj_article_details .subtitle {
  color: var(--cor-texto-suave);
}
.obj_article_details .item > .label,
.obj_article_details .entry_details .item .label {
  color: var(--azul-unitins);
  font-weight: 800;
  text-transform: uppercase;
  font-size: .85rem;
}
.obj_article_details .abstract {
  text-align: justify;
}
.obj_article_details .entry_details {
  background: var(--cor-fundo);
  border-left: 4px solid var(--azul-faixa);
}

/* ---------- 10. Botões e formulários ---------- */
.cmp_button,
.cmp_form .buttons button,
.pkp_button,
button.submit {
  background: var(--azul-escuro);
  color: #fff;
  border: none;
  border-radius: var(--raio-pilula);
  font-weight: 700;
  text-transform: uppercase;
  box-shadow: none;
}
.cmp_button:hover,
.cmp_form .buttons button:hover,
.pkp_button:hover,
button.submit:hover {
  background: var(--azul-faixa);
  color: #fff;
}

.cmp_form input[type="text"],
.cmp_form input[type="email"],
.cmp_form input[type="password"],
.cmp_form select,
.cmp_form textarea {
  border: 1px solid var(--cor-borda);
  border-radius: var(--raio);
}

.cmp_notification {
  border-left: 4px solid var(--amarelo);
  background: var(--cor-fundo);
}

/* ---------- 11. Notícias ---------- */
.obj_announcement_summary h2 a,
.obj_announcement_summary h3 a {
  color: var(--azul-escuro);
}
.obj_announcement_summary .date {
  color: var(--cor-texto-suave);
  font-size: .85rem;
}

/* ---------- 12. Rodapé ---------- */
.pkp_structure_footer_wrapper {
  background: var(--azul-escuro);
  color: #e3e8f4;
  border-top: 6px solid var(--azul-faixa);
}
.pkp_structure_footer_wrapper a {
  color: var(--amarelo);
}
.pkp_structure_footer {
  max-width: var(--largura-max);
}
.pkp_brand_footer img {
  filter: brightness(0) invert(1);
  opacity: .75;
}

/* ---------- 12b. Página inicial do PORTAL (lista de revistas) ---------- */

/* Remove as divisórias verticais do tema padrão (sobram quando não há barra lateral) */
.pkp_structure_main::before,
.pkp_structure_main::after {
  display: none !important;
}

/* Esconde o bloco "Sobre o site" quando estiver vazio */
.page_index_site .about_site:empty {
  display: none;
}

/* Lista de revistas em cartões */
.page_index_site .journals > ul {
  list-style: none;
  margin: 1.5rem 0;
  padding: 0;
}

.page_index_site .journals > ul > li {
  display: flex;
  gap: 1.5rem;
  align-items: flex-start;
  background: var(--cor-superficie);
  border: 1px solid var(--cor-borda);
  border-top: 5px solid var(--azul-faixa);
  border-radius: var(--raio);
  box-shadow: var(--sombra);
  padding: 1.5rem;
  margin-bottom: 1.5rem;
}

.page_index_site .journals .thumb {
  flex: 0 0 170px;
  max-width: 170px;
}
.page_index_site .journals .thumb img {
  width: 100%;
  height: auto;
}

.page_index_site .journals .body {
  flex: 1;
  min-width: 0;
}

.page_index_site .journals h3 {
  margin-top: 0;
  font-size: 1.3rem;
  text-transform: uppercase;
}
.page_index_site .journals h3 a {
  color: var(--azul-escuro);
}
.page_index_site .journals h3 a:hover {
  color: var(--azul-faixa);
  text-decoration: none;
}

/* Reduz o espaçamento entre parágrafos da descrição */
.page_index_site .journals .description p {
  margin: .3rem 0;
}

/* Links "Acessar revista" / "Edição Atual" como botões em pílula */
.page_index_site .journals .links {
  list-style: none;
  padding: 0;
  margin: 1rem 0 0;
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
}
.page_index_site .journals .links a {
  display: inline-block;
  background: var(--azul-escuro);
  color: #fff;
  border-radius: var(--raio-pilula);
  padding: .35rem 1rem;
  font-weight: 700;
  font-size: .85rem;
  text-transform: uppercase;
}
.page_index_site .journals .links a:hover,
.page_index_site .journals .links a:focus {
  background: var(--amarelo);
  color: var(--azul-escuro);
  text-decoration: none;
}

@media (max-width: 767px) {
  .page_index_site .journals > ul > li {
    flex-direction: column;
  }
  .page_index_site .journals .thumb {
    flex-basis: auto;
    max-width: 200px;
  }
}

/* ---------- 13. Responsivo ---------- */
@media (max-width: 991px) {
  .pkp_site_nav_toggle {
    color: var(--azul-unitins);
  }
  .pkp_site_nav_menu {
    background: var(--azul-escuro);
  }
  .pkp_site_nav_menu .pkp_navigation_primary > li > a,
  .pkp_site_nav_menu .pkp_navigation_user > li > a {
    color: #fff;
  }
  .obj_article_details .page_title {
    font-size: 1.4rem;
  }
}

/* ---------- 14. Impressão ---------- */
@media print {
  .pkp_structure_head,
  .pkp_navigation_primary_wrapper,
  .pkp_structure_sidebar,
  .pkp_structure_footer_wrapper {
    display: none !important;
  }
}
