/* ============================================
   BLOG DO TCG MANAGER — listagem e artigo
   Enfileirado só nas rotas do blog (plugin tcg-site).
   Cabeçalho, CTA final e rodapé têm CSS próprio, dentro
   do padrão "tcg-cabecalho" (.tcg-chrome).

   O conteúdo do artigo (.tcg-artigo-corpo) NÃO passa por
   reset universal: os estilos por bloco do WordPress
   (wp-block-*) usam :where(), de especificidade zero, e
   seriam anulados. Também não recebe cor de fundo nem de
   botão: as cores dos grupos de CTA são as dos blocos.
   Regra de contraste: #FF7A1A nunca como texto em fundo
   claro (aqui só em traços e marcadores).
   ============================================ */

body.tcg-blog{
  --ink:#161616;
  --ink-2:#333333;
  --muted:#5A5A5A;
  --line:#BDBDBD;
  --soft:#F2F2F2;
  --white:#FFFFFF;
  --orange:#FF7A1A;
  --orange-dark:#C2410C;
  --font:'Sora',system-ui,-apple-system,sans-serif;
  --max-w:1200px;
  --radius:16px;
  --radius-sm:10px;
  --shadow:0 1px 3px rgba(22,22,22,.06),0 8px 24px rgba(22,22,22,.08);
  margin:0!important;padding:0!important;background:var(--white)!important;background-image:none!important;
  color:var(--ink);font-family:var(--font);line-height:1.6;-webkit-font-smoothing:antialiased
}
.tcg-blog-main,.tcg-blog-main *,.tcg-blog-main *::before,.tcg-blog-main *::after{box-sizing:border-box}
.tcg-blog-main{font-family:var(--font);overflow-x:clip}
.tcg-blog-main img{max-width:100%;height:auto}
.tcg-blog-wrap{max-width:var(--max-w);margin:0 auto;padding:0 24px}
.tcg-blog-main [id]{scroll-margin-top:96px}

/* ── Selos dos pilares (única cor por pilar, da paleta de dados) ── */
.tcg-selo{display:inline-flex;align-items:center;padding:4px 12px;border-radius:40px;font-size:12px;font-weight:600;letter-spacing:.3px;line-height:1.4;text-decoration:none;color:var(--ink-2);background:var(--soft)}
.tcg-selo--lucro{color:#166534;background:#DCFCE7}
.tcg-selo--taxas{color:#BE185D;background:#FCE7F3}
.tcg-selo--estoque{color:#7C3AED;background:#EDE9FE}
.tcg-selo--faturamento{color:#1D4ED8;background:#DBEAFE}
a.tcg-selo:hover{text-decoration:underline;text-underline-offset:3px}

.tcg-eyebrow{display:inline-flex;align-items:center;gap:8px;margin:0;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:1.2px;color:var(--ink-2)}
.tcg-eyebrow::before{content:'';width:8px;height:8px;border-radius:50%;background:var(--orange)}

/* ============ LISTAGEM ============ */
.tcg-lista{padding:56px 0 88px;background:var(--soft)}
.tcg-lista-topo{max-width:720px;margin:0 0 28px}
.tcg-lista-topo h1{margin:12px 0 12px;font-size:clamp(32px,5vw,48px);font-weight:700;letter-spacing:-.8px;line-height:1.12;color:var(--ink)}
.tcg-lista-intro{margin:0;font-size:18px;line-height:1.7;color:var(--ink-2)}

.tcg-filtro{margin:0 0 32px}
.tcg-filtro ul{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.tcg-filtro-item{display:inline-flex;padding:8px 16px;border:1px solid var(--line);border-radius:40px;background:var(--white);font-size:14px;font-weight:600;color:var(--ink-2);text-decoration:none;white-space:nowrap;transition:border-color .2s ease}
.tcg-filtro-item:hover{border-color:var(--ink)}
.tcg-filtro-item.is-ativo{background:var(--ink);border-color:var(--ink);color:var(--white)}
.tcg-filtro-item:focus-visible,.tcg-card a:focus-visible,.tcg-paginacao a:focus-visible{outline:2px solid var(--orange-dark);outline-offset:2px}

/* Cards */
.tcg-grade{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.tcg-card{display:flex;flex-direction:column;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);min-width:0}
.tcg-card-midia{display:block;aspect-ratio:16/9;background:#242424;overflow:hidden}
.tcg-card-midia img.tcg-card-img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.tcg-card:hover .tcg-card-midia img.tcg-card-img{transform:scale(1.03)}
.tcg-card-sem-imagem{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:radial-gradient(circle at 70% 30%,#333 0%,#161616 70%)}
.tcg-card-sem-imagem img{width:72px;height:auto;opacity:.9}
.tcg-card-corpo{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:20px 22px 22px;flex:1}
.tcg-card-titulo{margin:0;font-size:19px;font-weight:700;line-height:1.3;letter-spacing:-.2px}
.tcg-card-titulo a{color:var(--ink);text-decoration:none}
.tcg-card-titulo a::after{content:''}
.tcg-card-titulo a:hover{text-decoration:underline;text-decoration-color:var(--orange);text-decoration-thickness:2px;text-underline-offset:4px}
.tcg-card-resumo{margin:0;font-size:15px;line-height:1.65;color:var(--ink-2)}
.tcg-card-meta{margin:auto 0 0;padding-top:6px;font-size:13px;color:var(--muted)}

.tcg-lista-destaque{margin-bottom:24px}
.tcg-card--destaque{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}
.tcg-card--destaque .tcg-card-midia{aspect-ratio:auto;min-height:100%}
.tcg-card--destaque .tcg-card-corpo{justify-content:center;padding:36px 40px;gap:14px}
.tcg-card--destaque .tcg-card-titulo{font-size:clamp(24px,2.6vw,32px);letter-spacing:-.5px}
.tcg-card--destaque .tcg-card-resumo{font-size:17px}
.tcg-card--destaque .tcg-card-meta{margin-top:4px}

/* Paginação */
.tcg-paginacao{margin-top:40px}
.tcg-paginacao ul{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:0;padding:0;list-style:none}
.tcg-paginacao a,.tcg-paginacao span{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px;padding:0 14px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--white);font-size:15px;font-weight:600;color:var(--ink);text-decoration:none}
.tcg-paginacao a:hover{border-color:var(--ink)}
.tcg-paginacao .current{background:var(--ink);border-color:var(--ink);color:var(--white)}
.tcg-paginacao .dots{border:0;background:none;min-width:auto;padding:0 4px}

/* Estado vazio */
.tcg-vazio{max-width:640px;padding:40px;border:1px dashed var(--line);border-radius:var(--radius);background:var(--white)}
.tcg-vazio p{margin:0;font-size:16px;line-height:1.7;color:var(--ink-2)}
.tcg-vazio .tcg-vazio-titulo{margin-bottom:8px;font-size:20px;font-weight:700;color:var(--ink)}
.tcg-vazio a{color:var(--ink);font-weight:600;text-decoration:underline;text-decoration-color:var(--orange);text-decoration-thickness:2px;text-underline-offset:3px}

/* ============ ARTIGO ============ */
.tcg-artigo{padding:28px 0 88px}

.tcg-breadcrumb ol{display:flex;flex-wrap:wrap;align-items:center;gap:4px 0;margin:0 0 28px;padding:0;list-style:none;font-size:13px;color:var(--muted)}
.tcg-breadcrumb li{display:inline-flex;align-items:center;min-width:0}
.tcg-breadcrumb li + li::before{content:'›';margin:0 8px;color:var(--line)}
.tcg-breadcrumb a{color:var(--ink-2);text-decoration:none}
.tcg-breadcrumb a:hover{text-decoration:underline;text-underline-offset:3px}
.tcg-breadcrumb li[aria-current]{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:40ch}

.tcg-artigo-topo{max-width:820px}
.tcg-artigo-topo h1{text-wrap:balance;margin:14px 0 16px;font-size:clamp(30px,4.6vw,46px);font-weight:700;letter-spacing:-.8px;line-height:1.15;color:var(--ink)}
.tcg-artigo-meta{display:flex;flex-wrap:wrap;gap:4px 20px;margin:0;font-size:14px;color:var(--muted)}
.tcg-artigo-meta span{white-space:nowrap}

/* A capa nunca passa do tamanho original da imagem (sem esticar e borrar) e
   fica na largura da coluna de texto. */
.tcg-artigo-capa{width:fit-content;max-width:min(100%,860px);margin:32px 0 0;border-radius:var(--radius);overflow:hidden;background:var(--soft)}
.tcg-artigo-capa img{display:block;width:auto;max-width:100%;height:auto}

.tcg-artigo-grade{display:grid;grid-template-columns:minmax(0,1fr) 260px;grid-template-areas:"corpo indice";gap:0 64px;margin-top:44px;align-items:start}
.tcg-artigo-grade.sem-indice{grid-template-columns:minmax(0,1fr);grid-template-areas:"corpo"}
.tcg-artigo-coluna{grid-area:corpo;min-width:0;max-width:72ch}
.tcg-indice--lateral{grid-area:indice;position:sticky;top:104px;max-height:calc(100vh - 128px);overflow-y:auto;padding-left:20px;border-left:2px solid var(--soft)}
.tcg-indice--celular{display:none}
.tcg-indice-titulo{margin:0 0 12px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:1px;color:var(--muted)}
.tcg-indice-lista{margin:0;padding:0;list-style:none;counter-reset:ind}
.tcg-indice-lista li{counter-increment:ind;margin:0;padding:5px 0;font-size:14px;line-height:1.45}
.tcg-indice-lista a{display:flex;gap:8px;color:var(--ink-2);text-decoration:none}
.tcg-indice-lista a::before{content:counter(ind);flex-shrink:0;min-width:16px;font-weight:600;color:var(--muted)}
.tcg-indice-lista a:hover,.tcg-indice-lista a.is-ativo{color:var(--ink);font-weight:600}
.tcg-indice-lista a.is-ativo::before{color:var(--orange-dark)}

/* Texto do artigo: leitura confortável, sem reset nos blocos */
.tcg-artigo-corpo{font-size:18px;line-height:1.75;color:var(--ink-2);overflow-wrap:break-word}
.tcg-artigo-corpo > *{margin-top:0;margin-bottom:1.15em}
.tcg-artigo-corpo h2{text-wrap:balance;margin:2.2em 0 .7em;font-size:clamp(24px,3vw,30px);font-weight:700;line-height:1.25;letter-spacing:-.4px;color:var(--ink)}
.tcg-artigo-corpo h3{margin:1.8em 0 .5em;font-size:21px;font-weight:700;line-height:1.35;color:var(--ink)}
.tcg-artigo-corpo > h2:first-child,.tcg-artigo-corpo > h3:first-child{margin-top:0}
.tcg-artigo-corpo strong{font-weight:700}
.tcg-artigo-corpo :where(p,li) strong{color:inherit}
.tcg-artigo-corpo a:not(.wp-element-button){color:var(--ink);font-weight:600;text-decoration:underline;text-decoration-color:var(--orange);text-decoration-thickness:2px;text-underline-offset:3px}
.tcg-artigo-corpo a:not(.wp-element-button):hover{color:var(--orange-dark)}
.tcg-artigo-corpo ul,.tcg-artigo-corpo ol{padding-left:1.4em}
.tcg-artigo-corpo li{margin-bottom:.5em;padding-left:.2em}
.tcg-artigo-corpo ul li::marker{color:var(--orange)}
.tcg-artigo-corpo h3 + p{margin-top:0}
/* Tabela: rola na horizontal dentro da figura no celular; a página não rola. */
/* Sombra na borda enquanto ainda há tabela para rolar (as camadas brancas
   "local" acompanham o conteúdo e cobrem a sombra quando se chega à ponta). */
.tcg-artigo-corpo .wp-block-table{margin:1.6em 0;overflow-x:auto;-webkit-overflow-scrolling:touch;background:linear-gradient(to right,#fff 30%,rgba(255,255,255,0)),linear-gradient(to left,#fff 30%,rgba(255,255,255,0)) 100% 0,radial-gradient(farthest-side at 0 50%,rgba(22,22,22,.18),transparent),radial-gradient(farthest-side at 100% 50%,rgba(22,22,22,.18),transparent) 100% 0;background-repeat:no-repeat;background-size:40px 100%,40px 100%,14px 100%,14px 100%;background-attachment:local,local,scroll,scroll}
.tcg-artigo-corpo .wp-block-table table{width:100%;min-width:480px;border-collapse:collapse;font-size:15px;line-height:1.55}
.tcg-artigo-corpo .wp-block-table th{background:var(--soft);text-align:left;font-weight:600;color:var(--ink)}
.tcg-artigo-corpo .wp-block-table th,.tcg-artigo-corpo .wp-block-table td{padding:10px 14px;border:1px solid var(--line);vertical-align:top}
/* Grupos de CTA vindos do conteúdo: só forma e espaço. Cor e padding são os dos blocos. */
.tcg-artigo-corpo .wp-block-group.has-background{margin:2em 0;border-radius:var(--radius)}
.tcg-artigo-corpo .wp-block-group.has-background > :last-child{margin-bottom:0}
.tcg-artigo-corpo .wp-block-group.has-background > :first-child{margin-top:0}
.tcg-artigo-corpo .wp-block-buttons{margin-top:1em}
.tcg-artigo-corpo .wp-block-button__link{border-radius:var(--radius-sm);font-weight:600;font-size:16px;padding:14px 28px;text-decoration:none}

/* Autor, navegação e Leia também */
.tcg-autor{display:flex;gap:16px;align-items:flex-start;margin:48px 0 0;padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:var(--soft)}
.tcg-autor-inicial{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:48px;height:48px;border-radius:50%;background:var(--ink);color:var(--white);font-size:20px;font-weight:700}
.tcg-autor p{margin:0}
.tcg-autor-nome{font-size:16px;font-weight:700;color:var(--ink)}
.tcg-autor-bio{margin-top:6px!important;font-size:15px;line-height:1.65;color:var(--ink-2)}

.tcg-navegacao{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:32px}
.tcg-navegacao-item{display:flex;flex-direction:column;gap:6px;padding:18px 20px;border:1px solid var(--line);border-radius:var(--radius-sm);font-size:16px;font-weight:600;line-height:1.4;color:var(--ink);text-decoration:none}
.tcg-navegacao-item span{font-size:13px;font-weight:600;color:var(--muted)}
.tcg-navegacao-item:hover{border-color:var(--ink)}
.tcg-navegacao-item--proximo{grid-column:2;text-align:right}

.tcg-leia{margin-top:72px;padding-top:48px;border-top:1px solid var(--line)}
.tcg-leia h2{margin:0 0 24px;font-size:26px;font-weight:700;letter-spacing:-.3px;color:var(--ink)}

/* ============ RESPONSIVO ============ */
@media(max-width:1100px){
  .tcg-grade{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tcg-artigo-grade{grid-template-columns:minmax(0,1fr) 220px;gap:0 40px}
}
@media(max-width:900px){
  .tcg-card--destaque{display:flex}
  .tcg-card--destaque .tcg-card-midia{aspect-ratio:16/9;min-height:0}
  .tcg-card--destaque .tcg-card-corpo{padding:22px}
  .tcg-artigo-grade,.tcg-artigo-grade.sem-indice{grid-template-columns:minmax(0,1fr);grid-template-areas:"indice" "corpo";margin-top:28px}
  .tcg-indice--lateral{display:none}
  .tcg-indice--celular{display:block;grid-area:indice;margin-bottom:28px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--white)}
  .tcg-indice--celular summary{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;font-size:15px;font-weight:600;color:var(--ink);cursor:pointer;list-style:none}
  .tcg-indice--celular summary::-webkit-details-marker{display:none}
  .tcg-indice--celular summary::after{content:'+';font-size:20px;line-height:1;color:var(--muted)}
  .tcg-indice--celular[open] summary::after{content:'−'}
  .tcg-indice--celular .tcg-indice-lista{padding:0 16px 14px}
  .tcg-artigo-coluna{max-width:none}
}
@media(max-width:640px){
  .tcg-blog-wrap{padding:0 16px}
  .tcg-filtro{margin-bottom:24px}
  .tcg-filtro-item{padding:7px 14px;font-size:13px}
  .tcg-lista{padding:36px 0 64px}
  .tcg-lista-intro{font-size:16px}
  .tcg-grade{grid-template-columns:minmax(0,1fr);gap:16px}
  .tcg-card-titulo{font-size:18px}
  .tcg-artigo{padding:20px 0 64px}
  /* No celular, a linha de autor/data vira lista curta, sem os pontos separadores. */
  .tcg-artigo-meta{flex-direction:column;gap:2px}
  /* O título já está no H1 logo abaixo; o breadcrumb para na categoria. */
  .tcg-breadcrumb li[aria-current]{display:none}
  /* Links do breadcrumb com 44px de altura para o toque. */
  .tcg-breadcrumb ol{margin:-12px 0 16px}
  .tcg-breadcrumb a{display:inline-block;padding:12px 0}
  .tcg-artigo-capa{margin-top:24px;border-radius:12px}
  .tcg-artigo-corpo{font-size:17px}
  .tcg-artigo-corpo h3{font-size:19px}
  .tcg-autor{padding:18px}
  .tcg-navegacao{grid-template-columns:1fr}
  .tcg-navegacao-item--proximo{grid-column:auto}
  .tcg-vazio{padding:24px}
}
@media(prefers-reduced-motion:reduce){
  .tcg-card-midia img.tcg-card-img,.tcg-filtro-item{transition:none}
  .tcg-card:hover .tcg-card-midia img.tcg-card-img{transform:none}
}
