/* =========================================================================
   Página do aviso (/avisos/{slug}): extraído do rascunho aprovado (rodadas 1 a 4).
   Base (tokens, chips, blocos, tabelas .tbl/.tbl-stack, .ext, .note) em /assets/site.css.
   ========================================================================= */
/* ---- Página do aviso ---- */
.adv-layout { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 2rem; align-items: start; padding-bottom: 2rem; }
/* Ficha embaixo: o mesmo respiro entre todos os blocos (antes 20, 32 e 16 px) */
@media (max-width: 1000px) { .adv-layout { grid-template-columns: 1fr; gap: 1.25rem; } }
.adv-main { display: grid; gap: 1.25rem; min-width: 0; }
.todo { position: relative; border: 1px solid var(--line-2); background: linear-gradient(180deg, var(--brand-50), var(--surface) 38%); box-shadow: var(--shadow-md); overflow: hidden; }
.todo::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 5px; background: var(--grad-brand); }
.ai-badge { display: inline-flex; align-items: center; gap: .35rem; font-size: .74rem; font-weight: 700; color: var(--ink-2); background: var(--surface-2); border: 1px solid var(--line-2); padding: .25rem .65rem; border-radius: var(--r-pill); }
.ai-badge svg { width: 13px; height: 13px; color: var(--brand-2); }
/* Selo + "Como funciona" (link discreto para /como-funciona#resumos) */
.ai-meta { display: inline-flex; flex-wrap: wrap; align-items: center; gap: .3rem .65rem; }
.ai-how { font-size: var(--fs-xs); font-weight: 700; color: var(--muted); text-decoration: underline; text-decoration-color: color-mix(in srgb, currentColor 35%, transparent); text-underline-offset: 3px; transition: color var(--t); }
.ai-how:hover { color: var(--brand-2); }
.provenance { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .5rem 1rem; margin-top: 1rem; padding-top: .9rem; border-top: 1px solid var(--line); font-size: var(--fs-xs); color: var(--muted); font-weight: 600; }
/* FAQ.astro */
.acc { padding: 0; overflow: hidden; }
.acc > button { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1.1rem clamp(1.15rem, .9rem + 1vw, 1.6rem); text-align: left; font-family: var(--font-display); font-weight: 700; color: var(--ink); font-size: var(--fs-md); }
.acc > button .l { display: inline-flex; align-items: center; gap: .55rem; }
.acc > button small { font-family: var(--font-body); color: var(--muted); font-weight: 600; font-size: var(--fs-xs); white-space: nowrap; }
@media (max-width: 600px) { .acc > button small { display: block; white-space: normal; margin-top: .1rem; } .acc > button .l { align-items: flex-start; } }
.acc-icon { width: 20px; height: 20px; color: var(--brand-2); transition: transform var(--t) var(--ease); flex: 0 0 auto; }
.acc.open .acc-icon { transform: rotate(135deg); }
.acc-body { display: grid; grid-template-rows: 0fr; transition: grid-template-rows var(--t) var(--ease); }
.acc.open .acc-body { grid-template-rows: 1fr; }
.acc-inner { overflow: hidden; visibility: hidden; transition: visibility 0s linear var(--t); }
.acc.open .acc-inner { visibility: visible; transition: visibility 0s; }
/* Sem JS o botão não abre nada: o conteúdo fica à vista */
html:not(.js) .acc-body { grid-template-rows: 1fr; }
html:not(.js) .acc-inner { visibility: visible; }
html:not(.js) .acc-icon { display: none; }
#t-versoes:focus { outline: none; }
#t-versoes:focus-visible { outline: 3px solid var(--focus); outline-offset: 4px; border-radius: var(--r-xs); }
.acc-pad { padding: 0 clamp(1.15rem, .9rem + 1vw, 1.6rem) 1.3rem; }
blockquote.vendor { border-left: 3px solid var(--line-2); padding: .2rem 0 .2rem 1rem; margin-top: .7rem; color: var(--ink-2); font-size: var(--fs-sm); line-height: 1.7; overflow-wrap: anywhere; }
.vendor-cite { margin-top: .8rem; font-size: var(--fs-xs); color: var(--muted); font-weight: 600; display: flex; flex-wrap: wrap; gap: .3rem .8rem; }
.copyright { margin-top: .6rem; font-size: var(--fs-xs); color: var(--muted); }
.copyright a { text-decoration: underline; text-underline-offset: 2px; }
/* Ficha lateral */
.aside { position: sticky; top: 92px; display: grid; gap: 1.25rem; }
@media (max-width: 1000px) { .aside { position: static; } }
.sheet { padding: 1.2rem 1.25rem; }
.sheet h2 { font-size: var(--fs-sm); font-family: var(--font-body); font-weight: 800; letter-spacing: .06em; text-transform: uppercase; color: var(--muted); margin-bottom: .8rem; }
.sheet dl { display: grid; gap: .1rem; }
.sheet .kv { display: flex; justify-content: space-between; gap: 1rem; padding: .55rem 0; border-bottom: 1px solid var(--line); font-size: var(--fs-sm); }
.sheet .kv:last-child { border-bottom: 0; }
.sheet dt { color: var(--muted); font-weight: 600; white-space: nowrap; }
.sheet dd { color: var(--ink); font-weight: 700; text-align: right; min-width: 0; overflow-wrap: anywhere; }
.sheet dd small { text-wrap: balance; }
.sheet-actions { display: grid; gap: .5rem; margin-top: 1rem; }
.sheet-actions .btn { width: 100%; }
.help-card { padding: 1.2rem 1.25rem; background: var(--surface-2); }
.help-card h3 { font-size: var(--fs-base); }
.help-card p { color: var(--muted); font-size: var(--fs-sm); margin: .4rem 0 .9rem; }

/* Detalhes técnicos (acordeão único) */
.tech .acc-pad { display: grid; gap: 0; }
.tech-sec + .tech-sec { margin-top: 1.4rem; padding-top: 1.3rem; border-top: 1px solid var(--line); }
.tech-sec > h3 { font-family: var(--font-display); font-size: var(--fs-base); font-weight: 700; color: var(--ink); margin-bottom: .75rem; display: flex; align-items: center; gap: .5rem; flex-wrap: wrap; }
.tech-sec > h3 .tag { font-family: var(--font-body); }
.gloss { margin-top: 1.4rem; border: 1px solid var(--line); border-radius: var(--r-md); background: var(--surface-2); }
.gloss summary { cursor: pointer; list-style: none; display: flex; align-items: center; gap: .45rem; padding: .7rem .95rem; font-size: var(--fs-sm); font-weight: 700; color: var(--brand-2); }
.gloss summary::-webkit-details-marker { display: none; }
.gloss summary svg { width: 16px; height: 16px; transition: transform var(--t) var(--ease); }
.gloss[open] summary svg { transform: rotate(90deg); }
.gloss dl { display: grid; gap: .55rem; padding: 0 .95rem .9rem; }
.gloss dl div { display: grid; grid-template-columns: 5.5rem minmax(0, 1fr); gap: .75rem; font-size: var(--fs-sm); line-height: 1.5; }
.gloss dt { font-weight: 800; color: var(--ink); }
.gloss dd { color: var(--ink-2); text-wrap: pretty; }
@media (max-width: 520px) { .gloss dl div { grid-template-columns: 1fr; gap: .1rem; } }
.tbl td.mono { white-space: nowrap; }
.aff-sum { font-size: var(--fs-sm); color: var(--ink-2); margin-bottom: .55rem; }
.aff-sum b { color: var(--ink); }
.vchip.aff { background: var(--surface-2); color: var(--ink-2); border-color: var(--line-2); }
.vchips.is-cut .vchip:nth-child(n+7), .vchips.is-cut12 .vchip:nth-child(n+13) { display: none; }
a.vchip:hover { border-color: var(--brand-300); color: var(--brand-2); }
.vchip.alt { background: var(--surface-2); color: var(--ink-2); border-color: var(--line-2); }
/* CVE abre o NVD (fora da página): ícone pequeno de link externo */
.vchip.cve-l { display: inline-flex; align-items: center; gap: .3rem; }
.vchip.cve-l svg { width: 11px; height: 11px; flex: 0 0 auto; opacity: .65; }
a.vchip.cve-l:hover svg { opacity: 1; }
/* As linhas dividem as colunas (subgrid): os títulos começam todos na mesma posição, qualquer que seja o chip */
.near { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: .4rem .8rem; }
.near a { grid-column: 1 / -1; display: grid; grid-template-columns: subgrid; align-items: baseline; padding: .6rem .8rem; border-radius: var(--r-sm); border: 1px solid var(--line); background: var(--surface-2); font-size: var(--fs-sm); transition: border-color var(--t); }
@supports not (grid-template-columns: subgrid) { .near a { grid-template-columns: 8.4rem minmax(0, 1fr) auto; column-gap: .8rem; } }
.near a:hover { border-color: var(--brand-300); }
.near .sev { justify-self: start; }
.near .t { font-weight: 700; color: var(--ink); overflow-wrap: anywhere; line-height: 1.4; }
.near time { color: var(--muted); font-size: var(--fs-xs); font-weight: 600; white-space: nowrap; }

/* =========================================================================
   Rodada 4: página do aviso com resposta rápida
   ========================================================================= */
/* Cabeçalho curto: título menor que o da home, migalha vira "‹ Avisos de X" no celular */
.adv-header { padding-block: clamp(1.2rem, .8rem + 1.8vw, 2rem) clamp(1rem, .8rem + 1vw, 1.5rem); }
.adv-header .crumb { margin-bottom: .7rem; }
.adv-header .ph-meta { margin-bottom: .7rem; }
.adv-header h1 { font-size: clamp(1.5rem, 1.15rem + 1.5vw, 2.25rem); line-height: 1.15; max-width: 34ch; }
.crumb .c-full { display: contents; }
.crumb .c-back, .crumb .c-pre { display: none; }
@media (max-width: 600px) {
  .crumb .c-full { display: none; }
  .crumb .c-prod { display: inline-flex; align-items: center; gap: .25rem; min-height: 32px; }
  .crumb .c-back { display: block; transform: rotate(180deg); }
  .crumb .c-pre { display: inline; }
}

/* Bloco "O que fazer": o único destaque da página (barra roxa); por dentro, linhas sem moldura */
.todo .block-h { margin-bottom: .55rem; }
/* Sem resumo automático: a explicação da marca "Passos gerais" numa linha visível (não só no tooltip) */
.todo-std { margin: -.25rem 0 .8rem; font-size: var(--fs-xs); color: var(--muted); line-height: 1.5; }
.todo .block-h h2, .what .block-h h2, .related .block-h h2 { font-size: var(--fs-md); }
.qa { display: grid; }
.qa > div { display: grid; grid-template-columns: 7.4rem minmax(0, 1fr); gap: .15rem 1rem; padding: .7rem 0; border-top: 1px solid var(--line); }
.qa > div:first-child { border-top: 0; padding-top: .25rem; }
.qa dt { font-size: var(--fs-sm); font-weight: 700; color: var(--muted); line-height: 1.5; padding-top: .06rem; }
.qa dt small { display: block; font-size: .72rem; font-weight: 600; color: var(--muted-2); line-height: 1.3; }
.qa dd { color: var(--ink); font-size: var(--fs-base); line-height: 1.5; min-width: 0; overflow-wrap: anywhere; }
.qa dd b { font-weight: 700; }
.qa dd b.mono { font-weight: 600; }
.qa-sub { display: block; margin-top: .15rem; font-size: var(--fs-sm); font-weight: 500; color: var(--muted); line-height: 1.5; }
.qa-sub b.mono { color: var(--ink-2); }
.due-b { display: inline-flex; align-items: center; gap: .4rem; font-weight: 800; }
.due-b svg { width: 16px; height: 16px; flex: 0 0 auto; color: var(--muted); }
.due-b.now, .due-b.now svg { color: var(--sev-critical-fg); }
.due-past { display: inline-block; margin-left: .5rem; padding: .02rem .5rem; border-radius: var(--r-pill); font-size: .72rem; font-weight: 800; line-height: 1.5; vertical-align: 1px; color: var(--sev-medium-fg); background: var(--sev-medium-bg); border: 1px solid var(--sev-medium-line); white-space: nowrap; }
.qa-sub b.late { font-weight: 700; color: var(--ink-2); }
.who-l { display: flex; gap: .45rem; align-items: flex-start; }
.who-l + .who-l { margin-top: .3rem; }
.who-l > svg { width: 16px; height: 16px; flex: 0 0 auto; margin-top: .22rem; }
.who-l.rc { color: var(--ink-2); }
.who-l.rc > svg { color: var(--success); }
.who-l.you > svg { color: var(--brand-2); }
.vsafes { display: flex; flex-wrap: wrap; gap: .35rem; margin-top: .4rem; }
.vsafe { display: inline-flex; align-items: baseline; gap: .4rem; margin-inline: .1rem; font-family: var(--font-mono); font-size: .86rem; font-weight: 600; line-height: 1.5; padding: .05rem .5rem; border-radius: 7px; background: var(--success-bg); color: var(--success-ink); border: 1px solid color-mix(in srgb, var(--success) 28%, transparent); white-space: nowrap; }
.vsafes .vsafe { margin-inline: 0; }
.vsafe small { font-family: var(--font-body); font-size: .66rem; font-weight: 800; letter-spacing: .03em; opacity: .85; }
.qa-newer { display: flex; gap: .55rem; align-items: flex-start; margin: 0 0 .45rem; padding: .7rem .85rem; border-radius: var(--r-md); background: var(--surface-2); border: 1px solid var(--line-2); font-size: var(--fs-sm); color: var(--ink-2); line-height: 1.55; }
.qa-newer > svg { width: 16px; height: 16px; flex: 0 0 auto; margin-top: .2rem; color: var(--ink-2); }
.qa-newer b { color: var(--ink); }
.qa-newer .ext { white-space: nowrap; }
.qa-newer .ext svg { width: 14px; height: 14px; }
.linkish { color: var(--brand-2); font-weight: 700; text-decoration: underline; text-underline-offset: 2px; text-decoration-color: color-mix(in srgb, var(--brand-2) 40%, transparent); font-size: inherit; }
/* celular: rótulo em cima, valor na largura toda (as versões cabem lado a lado e o texto quebra menos) */
@media (max-width: 600px) {
  .qa > div { grid-template-columns: minmax(0, 1fr); gap: .1rem; padding: .55rem 0; }
  .qa dt { font-size: .78rem; line-height: 1.35; padding: 0; }
  .qa dt small { display: inline; margin-left: .35rem; }
  .qa dt small::before { content: "· "; }
  .qa dd { font-size: .95rem; }
}

/* Passo a passo e comandos */
.how-h { font-family: var(--font-display); font-size: var(--fs-base); font-weight: 700; color: var(--ink); margin: 1.2rem 0 .6rem; }
.steps { display: grid; gap: .65rem; counter-reset: s; }
.steps li { display: grid; grid-template-columns: 26px minmax(0, 1fr); gap: .7rem; align-items: start; color: var(--ink-2); line-height: 1.55; }
.steps li::before { counter-increment: s; content: counter(s); display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; background: var(--surface-3); color: var(--ink-2); font-family: var(--font-display); font-weight: 800; font-size: .78rem; }
.steps b { color: var(--ink); }
details.how { margin-top: .9rem; border-top: 1px solid var(--line); }
details.how > summary, details.cli > summary, details.orig > summary, .more-d > summary { list-style: none; cursor: pointer; }
details.how > summary::-webkit-details-marker, details.cli > summary::-webkit-details-marker, details.orig > summary::-webkit-details-marker, .more-d > summary::-webkit-details-marker { display: none; }
details.how > summary { display: flex; align-items: center; gap: .55rem; min-height: 48px; padding: .55rem 0 .2rem; font-family: var(--font-display); font-weight: 700; color: var(--ink); }
details.how > summary > svg:first-child { width: 18px; height: 18px; color: var(--brand-2); flex: 0 0 auto; }
details.how > summary .chev { width: 18px; height: 18px; margin-left: auto; color: var(--muted); transition: transform var(--t) var(--ease); flex: 0 0 auto; }
details.how[open] > summary .chev, details.cli[open] > summary .chev, details.orig[open] > summary .chev, .gloss[open] summary .chev { transform: rotate(90deg); }
details.how > summary:hover span { color: var(--brand-2); }
details.how .how-body > .steps { margin-top: .5rem; }
.cmds { margin-top: .4rem; }
.cmds .how-h { margin-top: 1rem; }
.cmds ul { display: grid; gap: .5rem; }
/* Rótulo à esquerda, alinhado com o texto da caixa; a nota fica embaixo da caixa, na coluna do comando */
.cmds li { display: grid; grid-template-columns: 9.5rem minmax(0, 1fr); gap: .25rem .9rem; align-items: start; }
.cmd-l { grid-column: 1; grid-row: 1; padding-top: .6rem; font-size: var(--fs-sm); font-weight: 700; color: var(--ink-2); line-height: 1.3; }
.cmds .cmd { grid-column: 2; grid-row: 1; }
.cmd-n { grid-column: 2; grid-row: 2; font-size: .74rem; font-weight: 500; color: var(--muted); line-height: 1.4; }
.cmd { display: flex; align-items: stretch; min-width: 0; border: 1px solid var(--line-2); border-radius: 10px; background: var(--surface-2); overflow: hidden; }
.cmd code { flex: 1 1 auto; min-width: 0; align-self: center; padding: .5rem .75rem; font-family: var(--font-mono); font-size: .82rem; font-weight: 500; color: var(--ink); line-height: 1.45; overflow-wrap: anywhere; }
.cmd-copy { flex: 0 0 auto; width: 44px; min-height: 44px; display: grid; place-items: center; border-left: 1px solid var(--line-2); color: var(--brand-2); transition: background var(--t); }
.cmd-copy:hover { background: var(--brand-50); }
.cmd-copy svg { width: 16px; height: 16px; }
/* Celular, como antes: rótulo e nota na mesma linha, a caixa embaixo, na largura toda */
@media (max-width: 600px) { .cmds li { display: flex; flex-wrap: wrap; align-items: baseline; gap: .25rem .3rem; } .cmd-l { order: 1; padding-top: 0; } .cmd-n { order: 2; } .cmds .cmd { order: 3; flex: 1 1 100%; } }
.steps code, .where-l code, .tech code, .what code { font-family: var(--font-mono); font-size: .84em; font-weight: 500; color: var(--ink); background: var(--surface-3); border: 1px solid var(--line); padding: .05rem .35rem; border-radius: 6px; overflow-wrap: anywhere; }
.where-l { display: flex; gap: .5rem; align-items: flex-start; margin-top: .85rem; font-size: var(--fs-sm); color: var(--ink-2); line-height: 1.55; }
.where-l > svg { width: 16px; height: 16px; flex: 0 0 auto; margin-top: .2rem; color: var(--muted); }
.where-l b { color: var(--ink); }
details.cli { margin-top: .75rem; }
details.cli > summary, details.orig > summary, .more-d > summary { display: inline-flex; align-items: center; gap: .35rem; min-height: 36px; font-size: var(--fs-sm); font-weight: 700; color: var(--brand-2); }
details.cli > summary .chev, details.orig > summary .chev { width: 15px; height: 15px; transition: transform var(--t) var(--ease); }
details.cli .cmds { margin-top: .3rem; }
.todo-foot { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem 1rem; margin-top: 1.1rem; padding-top: .9rem; border-top: 1px solid var(--line); font-size: var(--fs-sm); color: var(--muted); }
.todo-foot .btn { min-height: 44px; }

/* "Não afetado": a melhor notícia, sem passos nem prazo */
.todo.is-ok { background: linear-gradient(180deg, var(--success-bg), var(--surface) 70%); }
.todo.is-ok::before { background: var(--success); }
.verdict { display: grid; grid-template-columns: 44px minmax(0, 1fr); gap: .3rem 1rem; align-items: start; }
.verdict .ic { width: 44px; height: 44px; border-radius: 14px; display: grid; place-items: center; background: var(--success-bg); color: var(--success-ink); border: 1px solid color-mix(in srgb, var(--success) 30%, transparent); }
.verdict .ic svg { width: 24px; height: 24px; }
.verdict h2 { font-size: var(--fs-lg); margin-top: .35rem; }
.verdict p { color: var(--ink-2); margin-top: .4rem; }
.verdict .qa-sub { margin-top: .5rem; }

/* O que aconteceu */
.what p { color: var(--ink-2); line-height: 1.7; }
.what p + p { margin-top: .7rem; }
.what .copyright { margin-top: .9rem; }
details.orig { margin-top: .9rem; padding-top: .5rem; border-top: 1px solid var(--line); }

/* Detalhes técnicos */
.tech-sec .sec-h { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .4rem 1rem; margin-bottom: .5rem; }
.tech-sec .sec-h h3 { margin: 0; font-family: var(--font-display); font-size: var(--fs-base); font-weight: 700; color: var(--ink); display: flex; align-items: center; gap: .5rem; }
.tech-sec .sec-h h3 .tag { font-family: var(--font-body); }
.fxv { min-width: 0; overflow-wrap: anywhere; }
.fxv .more-d { margin-top: .2rem; }
@media (max-width: 600px) { .tbl-stack td .fxv { flex: 1; text-align: right; } .tbl-stack td .fxv .more-d > summary { justify-content: flex-end; } }
.tech-sec .btn-clear { display: inline-flex; align-items: center; gap: .35rem; min-height: 36px; }
.tech-sec .btn-clear svg { width: 14px; height: 14px; }
.sec-d { font-size: var(--fs-xs); color: var(--muted); margin: -.1rem 0 .5rem; }
.sec-d code { font-size: .74rem; }
.orig-t { color: var(--ink-2); font-size: var(--fs-sm); font-weight: 600; line-height: 1.5; overflow-wrap: anywhere; margin-bottom: .35rem; }
.orig-t .lang { display: inline-block; vertical-align: 1px; margin-right: .4rem; font-size: .62rem; font-weight: 800; letter-spacing: .06em; color: var(--muted); border: 1px solid var(--line-2); border-radius: 5px; padding: 0 .3rem; }
.flaws { display: grid; }
.flaw { display: grid; grid-template-columns: 8.4rem minmax(0, 1fr) auto; gap: .3rem .9rem; align-items: baseline; padding: .6rem 0; border-top: 1px solid var(--line); font-size: var(--fs-sm); }
.flaw:first-child { border-top: 0; }
.flaw .sev { justify-self: start; }
.flaw:not(:has(.f-c)) .f-t { grid-column: 2 / -1; }
.flaw .f-t { color: var(--ink); font-weight: 600; line-height: 1.45; overflow-wrap: anywhere; }
.flaw .f-t a:hover { color: var(--brand-2); text-decoration: underline; text-underline-offset: 2px; }
.flaw .f-c { display: grid; justify-items: end; gap: .05rem; font-size: .76rem; text-align: right; }
.flaw .f-c a { font-family: var(--font-mono); font-weight: 600; color: var(--brand-2); white-space: nowrap; }
.flaw .f-c a:hover { text-decoration: underline; }
.flaw .f-c small { color: var(--muted); font-weight: 600; }
@media (max-width: 600px) { .flaw { grid-template-columns: auto minmax(0, 1fr); } .flaw .f-t { grid-column: 1 / -1; grid-row: 2; } }
.more-d { margin-top: .4rem; }
.more-d[open] > summary { margin-bottom: .3rem; }
.more-d .flaws .flaw:first-child { border-top: 1px solid var(--line); }
.small { font-size: .74rem; line-height: 1.6; color: var(--ink-2); }
.vkv { display: grid; gap: .35rem; }
.vkv > div { display: grid; grid-template-columns: 7.4rem minmax(0, 1fr); gap: .8rem; font-size: var(--fs-sm); }
.vkv dt { color: var(--muted); font-weight: 600; }
.vkv dd { color: var(--ink-2); overflow-wrap: anywhere; }
.vkv b.mono { color: var(--ink); font-weight: 600; }
.tech .tbl-wrap + .note { margin-top: .6rem; }
.tech .tbl td .more-d summary { font-size: var(--fs-xs); min-height: 28px; }
.gloss summary .chev { width: 16px; height: 16px; transition: transform var(--t) var(--ease); }

/* Mais avisos do produto */
/* Celular: chip e data em cima, título embaixo, na largura toda (sem subgrid) */
@media (max-width: 520px) { .related .near { grid-template-columns: minmax(0, 1fr); } .related .near a { grid-template-columns: auto minmax(0, 1fr); column-gap: .8rem; row-gap: .35rem; } .related .near .sev { grid-column: 1; } .related .near time { grid-column: 2; grid-row: 1; justify-self: end; } .related .near .t { grid-column: 1 / -1; grid-row: 2; } }
.related .block-h { margin-bottom: .7rem; }
.related .near time { font-variant-numeric: tabular-nums; }

/* Ficha lateral: metadados e ações; no celular, só as ações */
.sheet h2 { font-family: var(--font-display); font-size: var(--fs-base); font-weight: 700; letter-spacing: -.01em; text-transform: none; color: var(--ink); margin-bottom: .5rem; }
.help-card .btn-primary { width: 100%; }
@media (max-width: 1000px) {
  .sheet h2, .sheet .sheet-kv { display: none; }
  .sheet-actions { margin-top: 0; grid-template-columns: repeat(auto-fit, minmax(min(100%, 12.5rem), 1fr)); }
  .sheet-actions .btn { min-height: 44px; }
}
