/* Novidades: registro de versões. A marcação (rel-card, rel-top, rel-v, rel-tag, rel-when, rel-list)
   é a mesma do site no ar, gerada pelo publicar_versao.py a partir do app/novidades.json. */
.nov-aviso { max-width: 960px; margin: 0 auto 64px; }
.nov-aviso a { color: var(--accent-2); text-underline-offset: 3px; }

.rel { max-width: 960px; margin-inline: auto; }
.rel-card {
  display: grid; grid-template-columns: 200px 1fr; column-gap: 48px; align-content: start;
  padding: 40px 0; border-top: 1px solid var(--line);
}
.rel-card:last-of-type { border-bottom: 1px solid var(--line); }
.rel-card > * { grid-column: 2; }
.rel-top { grid-column: 1; grid-row: 1 / span 40; align-self: start; position: sticky; top: 96px; display: flex; flex-direction: column; align-items: flex-start; gap: 10px; }
.rel-v { font: 800 19px/1.15 var(--f-head); font-stretch: 112%; letter-spacing: -.01em; color: var(--text); }
.rel-when { font: 500 11.5px/1 var(--f-mono); letter-spacing: .1em; text-transform: uppercase; color: var(--mute-2); }
.rel-tag { order: 3; font: 500 10.5px/1 var(--f-mono); letter-spacing: .12em; text-transform: uppercase; padding: 6px 9px; border-radius: 5px; background: var(--accent-soft); color: var(--accent-2); }
.rel-card > p:first-of-type { margin: 0 0 6px; font-size: 17px; line-height: 1.55; color: var(--text); font-weight: 500; }
.rel-card h3 { margin: 26px 0 6px; font-size: 16px; }
.rel-card p { margin: 0; color: var(--mute); font-size: 14.5px; line-height: 1.7; }
.rel-card p b { color: var(--text); font-weight: 600; }
.rel-card a { color: var(--accent-2); text-underline-offset: 3px; }
.rel-list { list-style: none; margin: 22px 0 0; padding: 18px 20px; display: grid; gap: 10px; border: 1px solid var(--line); border-radius: 10px; background: var(--bg-2); }
.rel-list li { display: grid; grid-template-columns: 16px 1fr; gap: 12px; font-size: 14px; color: var(--mute); line-height: 1.6; }
.rel-list svg { width: 15px; height: 15px; margin-top: 4px; color: var(--cyan); }
.rel-list b { color: var(--text); font-weight: 600; }

@media (max-width: 760px) {
  .rel-card { grid-template-columns: 1fr; padding: 32px 0; }
  .rel-card > * { grid-column: 1; }
  .rel-top { grid-row: auto; position: static; flex-direction: row; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin-bottom: 14px; }
  .rel-tag { order: 0; }
}
