/* ============================================================
   Passagens – folha de estilo (tema padrão, OJS 3.4)
   Mistura Classic (estrutura) + Immersion (faixas de cor)
   Paleta tirada da foto: vermelho, roxo, azul, verde, amarelo, laranja
   Já inclui as regras de largura: não use junto com passagens-largura.css
   ============================================================ */

:root {
  --passagens-largura: min(94vw, 1500px);

  --psg-vermelho: #B8141F;
  --psg-roxo: #4B2250;
  --psg-azul: #0B5CAD;
  --psg-amarelo: #FFE11A;
  --psg-fundo-amarelo: #FFF6CC;
  --psg-fundo-roxo: #F3ECF4;
  --psg-serifa: Lora, "Noto Serif", Georgia, "Times New Roman", serif;

  /* Listra de seis cores (cabeçalho e rodapé). Para tirar, apague as
     duas regras "border-image" mais abaixo. */
  --psg-listras: linear-gradient(90deg,
    #5B2A5F 0 16.66%, #0F6FD0 0 33.33%, #2E9B66 0 50%,
    #FFE11A 0 66.66%, #F07A00 0 83.33%, #E8231E 0);
}

/* ---------- 1. Cores gerais ---------- */
a { color: var(--psg-azul); }
a:hover, a:focus { color: var(--psg-roxo); }

.pkp_structure_head,
.pkp_site_nav_menu {
  background-color: var(--psg-vermelho);
}
.pkp_structure_head {
  border-bottom: 6px solid;
  border-image: var(--psg-listras) 1;
}

.pkp_structure_footer_wrapper {
  background: var(--psg-fundo-roxo);
  border-top: 6px solid;
  border-image: var(--psg-listras) 1;
}

/* Nome da revista: só "Passagens" em amarelo (o script marca a palavra) */
.pkp_site_name .is_text .psg-nome {
  color: var(--psg-amarelo);
}

/* Botões PDF / EPUB */
.obj_galley_link {
  border-color: var(--psg-roxo);
  color: var(--psg-roxo);
}
.obj_galley_link:hover,
.obj_galley_link:focus {
  background: var(--psg-roxo);
  color: #fff;
}

/* Títulos em serifa, como no Classic */
.page_index_journal h2,
.obj_issue_toc h2,
.obj_issue_toc h3,
#psg-slider h2 {
  font-family: var(--psg-serifa);
  color: var(--psg-roxo);
}
.page_index_journal h2 { font-size: 1.6rem; }

/* ---------- 2. Largura e menu (telas de computador) ---------- */
@media (min-width: 992px) {

  /* Cabeçalho, conteúdo e rodapé com a mesma largura */
  .pkp_site_name_wrapper,
  .pkp_navigation_primary_wrapper,
  .pkp_navigation_user,
  .pkp_structure_content,
  .pkp_structure_footer,
  .has_site_logo .pkp_head_wrapper {
    width: var(--passagens-largura);
  }

  /* Sem barra lateral, a coluna principal ocupa toda a largura */
  .pkp_structure_main:first-child:last-child {
    width: 100%;
    padding-bottom: 3rem;
  }

  /* Menu principal: itens esticados, em até duas linhas justificadas */
  .pkp_navigation_primary_wrapper {
    display: flex;
    align-items: center;
  }
  ul.pkp_navigation_primary {
    display: flex;
    flex: 1 1 auto;
    flex-wrap: wrap;
    max-width: none;
    text-align: center;
  }
  ul.pkp_navigation_primary > li {
    display: block;
    flex: 1 1 auto;
  }
  ul.pkp_navigation_primary > li > a {
    display: block;
    text-align: center;
  }
  .pkp_navigation_primary_wrapper .pkp_navigation_search_wrapper {
    float: none;
    flex: 0 0 auto;
  }

  /* "Enviar Submissão" isolado no canto direito (criado pelo script) */
  .pkp_site_nav_menu a.psg-enviar {
    flex: 0 0 auto;
    margin-left: 1rem;
    padding: 0.55rem 1.1rem;
    background: var(--psg-amarelo);
    color: #2a1030;
    font-weight: 700;
    white-space: nowrap;
    border-radius: 3px;
    text-decoration: none;
  }
  .pkp_site_nav_menu a.psg-enviar:hover,
  .pkp_site_nav_menu a.psg-enviar:focus {
    background: #fff;
    color: var(--psg-vermelho);
  }

  /* Menu suspenso de idiomas, no canto superior esquerdo (criado pelo script) */
  .psg-idioma {
    position: absolute;
    top: 0;
    left: calc((100% - var(--passagens-largura)) / 2);
    z-index: 1001;
    font-size: 0.857rem;
  }
  .psg-idioma summary {
    padding: 0.5rem 0;
    color: #fff;
    cursor: pointer;
    list-style: none;
  }
  .psg-idioma summary::-webkit-details-marker { display: none; }
  .psg-idioma summary::after { content: " \25BE"; }
  .psg-idioma ul {
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 9rem;
    margin: 0;
    padding: 0;
    list-style: none;
    background: #fff;
    border-radius: 4px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
  }
  .psg-idioma a {
    display: block;
    padding: 0.5rem 0.9rem;
    color: var(--psg-roxo);
    text-decoration: none;
  }
  .psg-idioma a:hover,
  .psg-idioma a:focus { background: var(--psg-fundo-roxo); }
}

/* Em telas pequenas o menu suspenso de idiomas fica oculto
   (os idiomas continuam no rodapé) */
@media (max-width: 991px) {
  .psg-idioma { display: none; }
}

/* Remove as linhas verticais da largura antiga */
.pkp_structure_main:before,
.pkp_structure_main:after {
  display: none;
}

/* ---------- 3. Página inicial em faixas de cor ---------- */
#homepageAbout {
  padding: 1rem 0 2rem;
  font-size: 1.05rem;
}

/* Faixas de ponta a ponta da tela */
#homepageAnnouncements,
#homepageIssue,
.obj_issue_toc .sections {
  clip-path: inset(0 -100vmax);
}
#homepageAnnouncements,
#homepageIssue {
  margin: 2rem 0 0;
  padding: 2rem 0;
}
#homepageAnnouncements {
  background: var(--psg-fundo-amarelo);
  box-shadow: 0 0 0 100vmax var(--psg-fundo-amarelo);
  border-top: 0;
}
#homepageIssue {
  background: var(--psg-fundo-roxo);
  box-shadow: 0 0 0 100vmax var(--psg-fundo-roxo);
}

/* ---------- 4. Edição atual: capa grande + expediente ---------- */
@media (min-width: 768px) {
  .obj_issue_toc .heading {
    display: grid;
    grid-template-columns: minmax(220px, 340px) 1fr;
    column-gap: 2.5rem;
    align-items: start;
  }
  .obj_issue_toc .heading > * {
    grid-column: 2;
  }
  .obj_issue_toc .heading > .cover {
    grid-column: 1;
    grid-row: 1 / span 12;
    float: none;
    width: auto;
    margin: 0;
  }
}
.obj_issue_toc .heading .cover img {
  display: block;
  width: 100%;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.25);
}

/* ---------- 5. Artigos em colunas (como no Classic) ---------- */
.obj_issue_toc .sections {
  margin-top: 2rem;
  padding: 2rem 0;
  background: #fff;
  box-shadow: 0 0 0 100vmax #fff;
}
.obj_issue_toc .cmp_article_list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 2rem 2.5rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.obj_issue_toc .cmp_article_list > li {
  margin: 0;
  padding-top: 0.75rem;
  border-top: 3px solid var(--psg-roxo);
}
.obj_issue_toc .obj_article_summary .pages {
  position: static;
  float: none;
  display: block;
  margin: 0.25rem 0;
  text-align: left;
}
@media (max-width: 991px) {
  .obj_issue_toc .cmp_article_list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
  .obj_issue_toc .cmp_article_list { grid-template-columns: 1fr; }
}
