/* VAELITH — camada final de estabilidade visual */
/* Figuras científicas precisam permanecer inteiras, inclusive nos cards. */
.research-feature-media .research-feature-image,
.article-figure .article-hero,
.research-ranked-image img.research-thumb{object-fit:contain!important;background:#fff!important}

/* Imagens reais: nunca distorcer e nunca crescer além do bloco */
.list-grid .image,.daily-cards .image,.editorial-lead .image{display:block!important;width:100%!important;max-width:100%!important;aspect-ratio:16/9!important;height:auto!important;max-height:330px!important;object-fit:cover!important;object-position:center!important}
.side-story .thumb{max-height:220px!important;object-fit:cover!important}

/* Figuras e fluxogramas científicos não podem ser recortados nos cards genéricos. */
.list-grid img[data-scientific-figure="true"],
.daily-cards img[data-scientific-figure="true"],
.editorial-lead img[data-scientific-figure="true"],
.editorial-stack img[data-scientific-figure="true"],
.side-story img[data-scientific-figure="true"]{object-fit:contain!important;object-position:center!important;background:#fff!important}
.list-grid img[data-preserve-full="true"],
.daily-cards img[data-preserve-full="true"],
.editorial-lead img[data-preserve-full="true"],
.editorial-stack img[data-preserve-full="true"],
.side-story img[data-preserve-full="true"],
.hero-story img[data-preserve-full="true"]{object-fit:contain!important;object-position:center!important;background:#fff!important}

/* Sem imagem validada: card textual limpo, sem placeholder nem aviso técnico. */
.card.no-image>a,.side-story.no-image>a{position:relative!important;background:#f9faf7!important}
.card.no-image>a{padding:18px 18px 16px!important;border-top:2px solid #1c2320!important;min-height:150px!important}
.card.no-image h3{min-height:0!important}
.side-story.no-image{border-top:1px solid var(--line)!important}
.side-story.no-image>a{display:block!important;padding:14px 0!important}

/* Editorias: o card externo nunca vira uma segunda grade. Só o link controla a composição. */
.editorial-stack{display:block!important;width:100%!important;min-width:0!important}
.editorial-stack .card{display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;padding:14px 0!important;border-bottom:1px solid var(--line)!important}
.editorial-stack .card>a{display:grid!important;grid-template-columns:128px minmax(0,1fr)!important;column-gap:16px!important;align-items:start!important;width:100%!important;min-width:0!important;max-width:100%!important;height:auto!important}
.editorial-stack .card .image{display:block!important;width:128px!important;max-width:128px!important;height:96px!important;aspect-ratio:4/3!important;grid-column:1!important;grid-row:1/5!important;margin:0!important;object-fit:cover!important;object-position:center!important}
.editorial-stack .card .tag,.editorial-stack .card h3,.editorial-stack .card p,.editorial-stack .card .meta{grid-column:2!important;min-width:0!important;width:auto!important}
.editorial-stack .card h3{font-size:16px!important;line-height:1.3!important;margin:3px 0 6px!important;word-break:normal!important;overflow-wrap:break-word!important}
.editorial-stack .card p{display:none!important}
.editorial-stack .card .meta{font-size:10px!important}
.editorial-stack .card.no-image>a{display:block!important;padding:14px 16px!important;border-left:2px solid #d0df42!important;min-height:0!important}
.editorial-stack .card.no-image .tag,.editorial-stack .card.no-image h3,.editorial-stack .card.no-image .meta{display:block!important;width:100%!important;grid-column:auto!important}

/* Pesquisa & Ciência — artigo do dia */
.research-day-section .section-head{margin-bottom:22px!important}
.research-feature{display:grid!important;grid-template-columns:minmax(280px,410px) minmax(0,1fr)!important;gap:30px!important;align-items:start!important;width:100%!important;padding:0!important}
.research-feature-media{display:block!important;width:100%!important;min-width:0!important;overflow:hidden!important;background:#eceeea!important}
.research-feature-image{display:block!important;width:100%!important;height:auto!important;aspect-ratio:16/9!important;max-height:240px!important;object-fit:cover!important;object-position:center!important;margin:0!important}
.research-feature-copy{display:block!important;min-width:0!important;width:100%!important;padding-top:2px!important}
.research-feature-copy h2{font-size:24px!important;line-height:1.18!important;letter-spacing:-.015em!important;margin:6px 0 10px!important;color:var(--ink)!important;max-width:760px!important;word-break:normal!important}
.research-feature-copy h2 a{color:inherit!important}
.research-feature-dek{font-size:14px!important;line-height:1.55!important;color:var(--muted)!important;margin:0 0 12px!important;max-width:760px!important}
.research-why{margin:14px 0 0!important;padding:12px 0 0!important;border-top:1px solid var(--line)!important;border-bottom:0!important}
.research-why strong{display:block!important;font-size:10px!important;line-height:1.2!important;letter-spacing:.12em!important;text-transform:uppercase!important;color:var(--ink)!important;margin-bottom:6px!important}
.research-why p{font-size:13px!important;line-height:1.55!important;color:var(--muted)!important;margin:0!important;display:block!important;overflow:visible!important;-webkit-line-clamp:unset!important}
.research-feature-meta{display:flex!important;gap:8px 16px!important;align-items:center!important;flex-wrap:wrap!important;margin-top:14px!important;padding-top:10px!important;border-top:1px solid var(--line)!important;font-size:10.5px!important;color:var(--soft)!important}
.research-feature-score{font-weight:800!important;color:var(--accent-dark)!important}

/* Pesquisa & Ciência — ranking semanal */
.research-ranked-list{display:block!important;width:100%!important;max-width:100%!important;border-top:1px solid var(--line)!important}
.research-ranked-item{display:grid!important;grid-template-columns:56px 190px minmax(0,1fr)!important;gap:18px!important;align-items:center!important;width:100%!important;max-width:100%!important;min-width:0!important;padding:18px 0!important;border-bottom:1px solid var(--line)!important}
.research-rank-block{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;gap:5px!important;width:56px!important;min-width:56px!important;max-width:56px!important}
.research-rank-no{display:block!important;font-size:22px!important;line-height:1!important;font-weight:800!important;letter-spacing:-.02em!important;color:var(--ink)!important;white-space:nowrap!important}
.research-score{display:block!important;font-size:10px!important;line-height:1.2!important;font-weight:800!important;color:var(--accent-dark)!important;white-space:nowrap!important}
.research-ranked-image{display:block!important;width:190px!important;max-width:190px!important;min-width:190px!important;overflow:hidden!important;background:#eceeea!important}
.research-ranked-image img,.research-ranked-image .research-thumb{display:block!important;width:190px!important;max-width:190px!important;height:107px!important;max-height:107px!important;aspect-ratio:16/9!important;object-fit:cover!important;object-position:center!important;margin:0!important}
.research-ranked-copy{display:block!important;min-width:0!important;width:100%!important;max-width:100%!important}
.research-ranked-copy .tag{margin:0 0 3px!important}
.research-ranked-copy h3{display:block!important;font-size:17px!important;line-height:1.28!important;margin:4px 0 7px!important;max-width:850px!important;word-break:normal!important;overflow-wrap:break-word!important}
.research-ranked-copy h3 a{color:var(--ink)!important}
.research-ranked-copy>p{font-size:13px!important;line-height:1.5!important;color:var(--muted)!important;margin:0!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;max-width:900px!important}
.research-ranked-meta{display:flex!important;gap:14px!important;flex-wrap:wrap!important;margin-top:8px!important;font-size:10.5px!important;color:var(--soft)!important}

/* Acervo científico: cada item é uma linha independente */
.research-archive-list{display:flex!important;flex-direction:column!important;width:100%!important;max-width:100%!important;border-top:1px solid var(--line)!important}
.research-archive-row{display:grid!important;grid-template-columns:112px minmax(0,1fr) 70px!important;gap:18px!important;align-items:center!important;width:100%!important;max-width:100%!important;min-width:0!important;padding:14px 0!important;border-bottom:1px solid var(--line)!important;color:var(--ink)!important}
.research-archive-date{display:block!important;font-size:11px!important;line-height:1.35!important;color:var(--muted)!important;white-space:nowrap!important}
.research-archive-title{display:block!important;min-width:0!important;font-size:14px!important;line-height:1.4!important;font-weight:700!important;color:var(--ink)!important;word-break:normal!important;overflow-wrap:break-word!important}
.research-archive-score{display:block!important;text-align:right!important;font-size:11px!important;line-height:1!important;font-weight:800!important;color:var(--accent-dark)!important;white-space:nowrap!important}

/* Proteções genéricas contra colunas esmagadas */
.card,.card>a,.side-story,.side-story>a{min-width:0!important;max-width:100%!important}
.card h3,.card p,.side-story h2{word-break:normal!important;overflow-wrap:break-word!important}

@media(max-width:860px){
  .list-grid{grid-template-columns:1fr!important;gap:28px!important}
  .editorial-grid{grid-template-columns:1fr!important}
  .editorial-stack .card:not(.no-image)>a{grid-template-columns:150px minmax(0,1fr)!important;column-gap:16px!important}
  .editorial-stack .card .image{width:150px!important;max-width:150px!important;height:112px!important}
  .research-feature{grid-template-columns:minmax(240px,340px) minmax(0,1fr)!important;gap:22px!important}
  .research-ranked-item{grid-template-columns:50px 150px minmax(0,1fr)!important;gap:14px!important}
  .research-rank-block{width:50px!important;min-width:50px!important;max-width:50px!important}
  .research-ranked-image{width:150px!important;max-width:150px!important;min-width:150px!important}
  .research-ranked-image img,.research-ranked-image .research-thumb{width:150px!important;max-width:150px!important;height:84px!important;max-height:84px!important}
}

@media(max-width:640px){
  .list-grid{grid-template-columns:1fr!important}
  .card.no-image>a{min-height:0!important}
  .editorial-stack .card,.editorial-stack .card>a{display:block!important;width:100%!important}
  .editorial-stack .card{padding:16px 0!important}
  .editorial-stack .card .image{display:block!important;width:100%!important;max-width:100%!important;height:auto!important;aspect-ratio:16/9!important;margin:0 0 10px!important}
  .editorial-stack .card .tag,.editorial-stack .card h3,.editorial-stack .card p,.editorial-stack .card .meta{display:block!important;width:100%!important;grid-column:auto!important}

  .research-feature{display:block!important}
  .research-feature-media{margin-bottom:16px!important}
  .research-feature-image{max-height:none!important}
  .research-feature-copy h2{font-size:21px!important;line-height:1.22!important}
  .research-feature-dek{font-size:14px!important}
  .research-why p{font-size:12.5px!important}

  .research-ranked-item{grid-template-columns:42px minmax(0,1fr)!important;grid-template-areas:"rank media" "rank copy"!important;gap:10px 12px!important;align-items:start!important;padding:16px 0!important}
  .research-rank-block{grid-area:rank!important;width:42px!important;min-width:42px!important;max-width:42px!important;padding-top:2px!important}
  .research-rank-no{font-size:18px!important}
  .research-score{font-size:9px!important}
  .research-ranked-image{grid-area:media!important;width:min(100%,280px)!important;max-width:280px!important;min-width:0!important}
  .research-ranked-image img,.research-ranked-image .research-thumb{width:100%!important;max-width:280px!important;height:auto!important;max-height:none!important;aspect-ratio:16/9!important}
  .research-ranked-copy{grid-area:copy!important}
  .research-ranked-copy h3{font-size:15px!important;line-height:1.32!important;margin:3px 0 6px!important}
  .research-ranked-copy>p{font-size:12.5px!important;-webkit-line-clamp:3!important}
  .research-ranked-meta{display:block!important;font-size:10px!important;margin-top:7px!important}
  .research-ranked-meta span{display:block!important;margin-top:2px!important}

  .research-archive-row{grid-template-columns:minmax(0,1fr) 62px!important;gap:6px 12px!important;padding:14px 0!important}
  .research-archive-date{grid-column:1/3!important;font-size:10.5px!important}
  .research-archive-title{grid-column:1!important;font-size:13.5px!important;line-height:1.38!important}
  .research-archive-score{grid-column:2!important;align-self:center!important;font-size:10.5px!important}
}

/* Original editorial collection, scoped to avoid changing existing articles. */
.original-editorial .list-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.original-editorial .card{min-width:0}
.original-editorial .card h2{font-size:24px;line-height:1.22;margin:12px 0}
.original-editorial p,.original-editorial a{overflow-wrap:anywhere}
@media(max-width:760px){.original-editorial .list-grid{grid-template-columns:minmax(0,1fr)}.original-editorial .card h2{font-size:22px}}

.original-editorial-article .article-grid>article{min-width:0}
.original-editorial-article .article-body,.original-editorial-article .article-body a{overflow-wrap:anywhere}

.navbar a.mobile-utility{display:none}
@media(max-width:760px){.site-header.open .navbar a.mobile-utility{display:block}}
.article-grid>article,.article-grid>.sidebar{min-width:0}
.article-body,.article-body a,.article-figure figcaption{overflow-wrap:anywhere;word-break:normal}
.article-body img{max-width:100%;height:auto}

.image-expand-link{display:inline-block;margin-top:10px;min-height:44px;padding:10px 0;font-size:13px;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.article-next-links{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}
.article-next-links a{display:inline-flex;align-items:center;min-height:44px;font-size:13px;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.article-info{flex-wrap:wrap}
