:root{
  --bg:#0B1020;
  --bg2:#070A14;
  --ink:#EAF0FF;
  --muted:rgba(234,240,255,.72);

  --p1:#A855F7;  /* roxo */
  --p2:#6366F1;  /* azul */
  --p3:#22D3EE;  /* ciano de acento */
  --stroke:rgba(255,255,255,.10);
  --glass:rgba(255,255,255,.06);
  --glass2:rgba(255,255,255,.10);
  --shadow: 0 18px 60px rgba(0,0,0,.50);

  --r:18px;
}

*{box-sizing:border-box}

/* ✅ CORREÇÃO DO “CORTE” DO FUNDO */
html,body{min-height:100%}

/* ✅ deixa o FUNDO infinito preso no html (sem faixa no scroll) */
html{
  background: radial-gradient(1200px 800px at 20% 10%, rgba(168,85,247,.18), transparent 55%),
              radial-gradient(1100px 900px at 90% 20%, rgba(99,102,241,.16), transparent 55%),
              radial-gradient(1000px 900px at 55% 90%, rgba(34,211,238,.10), transparent 55%),
              linear-gradient(180deg, var(--bg), var(--bg2));
  background-attachment: scroll;
}

body{
  margin:0;
  font-family: "Manrope", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  /* ✅ remove o background do body pra não “trocar” no meio do scroll */
  background: transparent;
  color: var(--ink);
  overflow-x:hidden;
}

a{color:inherit; text-decoration:none}
.muted{color:var(--muted)}

.bg-effects{position:fixed; inset:0; pointer-events:none; z-index:-1}
.blob{
  position:absolute; filter: blur(40px);
  opacity:.9; border-radius:999px;
  transform: translateZ(0);
  animation: floaty 10s ease-in-out infinite;
}
.blob-a{
  width:520px;height:520px;
  left:-140px; top:-120px;
  background: radial-gradient(circle at 30% 30%, rgba(168,85,247,.85), rgba(99,102,241,.10) 60%, transparent 70%);
}
.blob-b{
  width:620px;height:620px;
  right:-220px; top:40px;
  background: radial-gradient(circle at 40% 40%, rgba(99,102,241,.80), rgba(34,211,238,.12) 60%, transparent 72%);
  animation-delay:-2.6s;
}
.blob-c{
  width:520px;height:520px;
  left:40%; bottom:-260px;
  background: radial-gradient(circle at 40% 40%, rgba(34,211,238,.45), rgba(168,85,247,.12) 55%, transparent 72%);
  animation-delay:-4.2s;
}
@keyframes floaty{
  0%,100%{transform: translate3d(0,0,0) scale(1)}
  50%{transform: translate3d(0,22px,0) scale(1.02)}
}

.grid{
  position:absolute; inset:0;
  background:
    linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px);
  background-size: 56px 56px;
  mask-image: radial-gradient(circle at 50% 30%, black 30%, transparent 70%);
  opacity:.18;
}

.noise{
  position:absolute; inset:-200px;
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='260' height='260'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='260' height='260' filter='url(%23n)' opacity='.22'/%3E%3C/svg%3E");
  opacity:.10;
  mix-blend-mode: overlay;
  transform: rotate(6deg);
}

.topbar{
  position:sticky; top:0; z-index:10;
  display:flex; align-items:center; justify-content:space-between;
  padding:14px 18px;
  backdrop-filter: blur(14px);
  background: linear-gradient(180deg, rgba(10,12,24,.78), rgba(10,12,24,.28));
  border-bottom: 1px solid rgba(255,255,255,.08);
}

.brand{display:flex; align-items:center; gap:10px}
.brand-dot{
  width:12px;height:12px;border-radius:99px;
  background: radial-gradient(circle at 30% 30%, var(--p1), var(--p2));
  box-shadow: 0 0 0 6px rgba(168,85,247,.12);
}
.brand-tag{
  margin-left:8px;
  padding:6px 10px;
  font-size:12px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  color: rgba(234,240,255,.78);
}

.topnav{display:flex; gap:10px; flex-wrap:wrap; justify-content:flex-end}
.navlink{
  padding:10px 12px;
  border-radius:999px;
  border:1px solid transparent;
  color: rgba(234,240,255,.82);
}
.navlink:hover{
  border-color: rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
}
.navlink.active{
  border-color: rgba(168,85,247,.25);
  background: linear-gradient(90deg, rgba(168,85,247,.16), rgba(99,102,241,.12));
}

.container{max-width:1120px; margin:0 auto; padding: 26px 18px 60px}

.hero{
  padding: 34px 0 22px;
  text-align:center;
}
.hero-badge{
  display:inline-flex;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.04);
  color: rgba(234,240,255,.82);
  font-size:13px;
}
.hero-title{
  margin: 16px auto 0;
  font-weight: 800;
  font-size: clamp(34px, 4.2vw, 64px);
  line-height:1.02;
  letter-spacing:-.02em;
  text-shadow: 0 10px 40px rgba(0,0,0,.45);
}
.hero-sub{
  margin: 14px auto 0;
  max-width: 780px;
  color: rgba(234,240,255,.76);
  font-size: 16px;
  line-height:1.6;
}

.search-wrap{margin: 22px auto 0; max-width: 820px; position:relative}
.search-pill{
  display:flex; align-items:center; gap:10px;
  padding: 12px 12px;
  border-radius: 999px;
  border:1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.06);
  box-shadow: var(--shadow);
}
.search-pill:focus-within{
  border-color: rgba(168,85,247,.38);
  box-shadow: 0 18px 70px rgba(0,0,0,.60), 0 0 0 6px rgba(168,85,247,.10);
}
.search-icon{opacity:.85; font-size:18px; padding:0 6px}
.search-input{
  flex:1;
  background:transparent;
  border:0;
  outline:none;
  color: var(--ink);
  font-size:16px;
  padding: 10px 6px;
}
.search-input::placeholder{color: rgba(234,240,255,.56)}
.search-btn{
  border:0;
  padding: 11px 16px;
  border-radius:999px;
  font-weight:800;
  cursor:pointer;
  color: rgba(255,255,255,.92);
  background: linear-gradient(90deg, rgba(168,85,247,.95), rgba(99,102,241,.92));
}
.search-btn:hover{filter: brightness(1.05)}

.search-hints{
  margin-top:10px;
  display:flex;
  gap:10px;
  justify-content:center;
  flex-wrap:wrap;
  color: rgba(234,240,255,.60);
  font-size:12px;
}
.kbd{
  padding:4px 8px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.04);
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}

.suggestions{
  position:absolute;
  left:0; right:0;
  top: 64px;
  border-radius: 18px;
  border:1px solid rgba(255,255,255,.14);
  background: rgba(10,12,24,.86);
  backdrop-filter: blur(16px);
  overflow:hidden;
  box-shadow: var(--shadow);
}
.sug-item{
  display:flex; justify-content:space-between; align-items:center;
  padding: 12px 14px;
  cursor:pointer;
  color: rgba(234,240,255,.86);
}
.sug-item:hover, .sug-item.active{
  background: linear-gradient(90deg, rgba(168,85,247,.18), rgba(99,102,241,.10));
}
.sug-kind{
  font-size:12px;
  color: rgba(234,240,255,.58);
}

.section{margin-top: 26px}
.section-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:12px;
  flex-wrap:wrap;
}
.section-head h2{margin:0; font-size:20px}
.section-actions{display:flex; gap:10px; flex-wrap:wrap}

.chip{
  border:1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.04);
  color: rgba(234,240,255,.82);
  border-radius:999px;
  padding:10px 12px;
  cursor:pointer;
  font-weight:700;
}
.chip:hover{background: rgba(255,255,255,.06)}
.chip-on{
  border-color: rgba(168,85,247,.28);
  background: linear-gradient(90deg, rgba(168,85,247,.16), rgba(99,102,241,.10));
}

.results-meta{margin-top:10px; color: rgba(234,240,255,.62); font-size:13px}

.cards{
  margin-top: 14px;
  display:grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 14px;
}
.card{
  grid-column: span 6;
  border-radius: var(--r);
  border:1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.05);
  overflow:hidden;
  box-shadow: 0 14px 50px rgba(0,0,0,.35);
  transition: transform .15s ease, border-color .15s ease, background .15s ease;
  position:relative;
}
.card:hover{
  transform: translateY(-2px);
  border-color: rgba(168,85,247,.22);
  background: rgba(255,255,255,.06);
}
.card::before{
  content:"";
  position:absolute; inset:-2px;
  background: radial-gradient(600px 220px at 20% 0%, rgba(168,85,247,.16), transparent 60%);
  pointer-events:none;
}
.card-inner{position:relative; padding:16px}
.card-title{margin:0; font-weight:800; letter-spacing:-.01em; font-size:18px}
.card-excerpt{margin:10px 0 0; color: rgba(234,240,255,.72); line-height:1.55}
.card-meta{display:flex; gap:8px; flex-wrap:wrap; margin-top: 12px}
.pill{
  display:inline-flex;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.04);
  color: rgba(234,240,255,.72);
  font-size:12px;
}
.pill.ghost{background: transparent}

.tag-cloud{display:flex; flex-wrap:wrap; gap:10px; margin-top: 12px}
.tag{
  padding:10px 12px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.04);
  cursor:pointer;
  color: rgba(234,240,255,.82);
  font-weight:700;
}
.tag:hover{
  border-color: rgba(34,211,238,.22);
  background: linear-gradient(90deg, rgba(34,211,238,.10), rgba(168,85,247,.10));
}

.footer{margin-top: 42px}
.footer-inner{
  display:flex; justify-content:space-between; align-items:center;
  padding: 16px 0;
  border-top: 1px solid rgba(255,255,255,.10);
}
.footer-title{font-weight:800}

.post{
  margin-top: 18px;
  border-radius: 22px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.05);
  overflow:hidden;
  box-shadow: var(--shadow);
}
.post-cover{
  height: 260px;
  background-size: cover;
  background-position: center;
  position:relative;
}
.post-cover::after{
  content:"";
  position:absolute; inset:0;
  background: linear-gradient(180deg, transparent, rgba(7,10,20,.82));
}
.post-head{padding: 18px 18px 10px}
.post-title{
  margin: 10px 0 0;
  font-size: clamp(28px, 3.2vw, 46px);
  line-height:1.06;
  letter-spacing:-.02em;
  font-weight:800;
}
.post-excerpt{margin: 12px 0 0; color: rgba(234,240,255,.76); line-height:1.65}
.post-meta{display:flex; gap:10px; flex-wrap:wrap}
.post-tags{display:flex; gap:10px; flex-wrap:wrap; margin-top: 14px}

.post-body{
  padding: 10px 18px 20px;
  color: rgba(234,240,255,.88);
  line-height:1.75;
}
.post-body h2, .post-body h3{margin-top: 24px}
.post-body a{
  color: rgba(34,211,238,.95);
  text-decoration: underline;
  text-decoration-color: rgba(34,211,238,.35);
}
.post-body blockquote{
  margin: 18px 0;
  padding: 12px 14px;
  border-left: 3px solid rgba(168,85,247,.55);
  background: rgba(168,85,247,.08);
  border-radius: 14px;
}
.post-end{padding: 16px 18px; border-top: 1px solid rgba(255,255,255,.10)}

.btn-ghost{
  display:inline-flex; justify-content:center; align-items:center;
  gap:10px;
  padding: 12px 14px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.04);
  font-weight:800;
}
.btn-ghost:hover{background: rgba(255,255,255,.06)}

@media (max-width: 860px){
  .card{grid-column: span 12}
  .brand-tag{display:none}
}

/* ===== CAPA DO CARD (imagem do post na home) ===== */
.card-cover{
  aspect-ratio: 1200 / 630;
  width: 100%;
  background: rgba(255,255,255,.04);
  border-bottom: 1px solid rgba(255,255,255,.10);
  overflow: hidden;
  position: relative;
}

.card-cover img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform .25s ease, filter .25s ease;
  filter: saturate(1.05) contrast(1.05);
}

.card:hover .card-cover img{
  transform: scale(1.06);
}

/* placeholder quando não tem imagem */
.card-cover--placeholder{
  background:
    radial-gradient(420px 180px at 20% 20%, rgba(168,85,247,.35), transparent 60%),
    radial-gradient(420px 180px at 80% 30%, rgba(99,102,241,.30), transparent 60%),
    linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.02));
}
.card-cover--placeholder::after{
  content:"";
  position:absolute; inset:0;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.10), transparent);
  transform: translateX(-100%);
  animation: shimmer 1.8s ease-in-out infinite;
  opacity:.35;
}
@keyframes shimmer{
  0%{transform: translateX(-100%)}
  100%{transform: translateX(100%)}
}

/* ===== VÍDEO/PLAYER NO POST ===== */
.post-media{
  padding: 0 18px 14px;
}

.video-wrap{
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 18px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.04);
  box-shadow: 0 18px 60px rgba(0,0,0,.35);
}

.video-wrap video,
.video-wrap iframe{
  width: 100%;
  height: 100%;
  display: block;
  border: 0;
}

/* ===== HOME do blog: background desktop/mobile (sem quebrar o resto) ===== */

/* DESKTOP */
.blog-home .bg-effects::before{
  content:"";
  position:absolute;
  inset:0;
  background: url("../img/bg-home-desktop.jpg") center right / cover no-repeat;
  opacity: .95;
  transform: translateZ(0);
}

/* mobile troca a imagem */
@media (max-width: 767px){
  .blog-home .bg-effects::before{
    background-image: url("../img/bg-home-mobile.jpg");
    background-size: contain;
    background-position: center top;
    background-color: #0B1020;
  }
}

.brand{
  display:flex;
  align-items:center;
  gap:12px;
}

.brand-logo{
  height: 28px;
  width: auto;
  display:block;
  filter: drop-shadow(0 10px 30px rgba(0,0,0,.35));
}

@media (max-width: 860px){
  .brand-logo{ height: 24px; }
}

/* se você ainda tiver o dot no HTML em algum lugar, mata ele sem dó */
.brand-dot{ display:none; }

/* ===== HEADER 100% CENTRALIZADO (logo + links) ===== */
.topbar{
  display: flex !important;
  align-items: center;
  justify-content: center !important;
  gap: 14px;
  flex-wrap: wrap;
  text-align: center;
}

/* garante que logo e menu também centralizem */
.topbar .brand{
  display:flex;
  align-items:center;
  justify-content:center;
}

.topbar .topnav{
  display:flex;
  justify-content:center !important;
  align-items:center;
  flex-wrap: wrap;
  gap: 10px;
}

/* aumenta só um pouco a logo */
.topbar .brand img.brand-logo{
  height: 30px;
  width: auto !important;
  max-width: 220px;
  display:block;
  object-fit: contain;
}

/* mobile: empilha logo em cima e menu embaixo, tudo central */
@media (max-width: 860px){
  .topbar{
    flex-direction: column;
    gap: 10px;
    padding: 12px 16px;
  }
  .topbar .brand img.brand-logo{
    height: 26px;
    max-width: 200px;
  }
}

/* (se quiser o fundo “liso” sem grade) */
.grid{ display:none !important; }

/* ===== HOME CARDS: vidro mais fosco (blur maior) ===== */
.cards .card{
  background: rgba(255,255,255,.045);          /* vidro mais “leitoso” */
  border: 1px solid rgba(255,255,255,.14);
  backdrop-filter: blur(22px) saturate(1.15);  /* ✅ mais fosco */
  -webkit-backdrop-filter: blur(22px) saturate(1.15);
}

/* brilho interno mais suave e espalhado */
.cards .card::before{
  background: radial-gradient(800px 320px at 18% 0%,
    rgba(168,85,247,.14),
    rgba(99,102,241,.08) 45%,
    transparent 70%);
  opacity: .95;
}

/* reforça “frost” sem virar neblina */
.cards .card-inner{
  background: linear-gradient(180deg,
    rgba(255,255,255,.03),
    rgba(255,255,255,.015));
}

/* hover continua bonito, só mais “glass” */
.cards .card:hover{
  background: rgba(255,255,255,.06);
  border-color: rgba(168,85,247,.26);
  backdrop-filter: blur(26px) saturate(1.2);
  -webkit-backdrop-filter: blur(26px) saturate(1.2);
}

/* ===== Rodapé social: Liquid Glass ===== */
.social-footer{
  margin-top: 46px;
  padding: 18px 0 34px;
}

.social-footer-inner{
  max-width: 1120px;
  margin: 0 auto;
  padding: 0 18px;
  display: grid;
  gap: 14px;
}

.social-actions{
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  justify-content: center;
}

.glass-social{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  border-radius: 999px;
  color: #fff;
  font-weight: 900;
  letter-spacing: .2px;
  border: 1px solid rgba(255,255,255,.18);
  background:
    radial-gradient(120% 160% at 20% 15%, rgba(255,255,255,.22), transparent 55%),
    radial-gradient(120% 160% at 80% 25%, rgba(255,255,255,.10), transparent 60%),
    linear-gradient(135deg, rgba(168,85,247,.28), rgba(99,102,241,.20));
  box-shadow:
    0 16px 44px rgba(0,0,0,.35),
    0 0 0 1px rgba(0,0,0,.18) inset,
    0 0 0 1px rgba(255,255,255,.08) inset,
    0 10px 40px rgba(168,85,247,.35);
  backdrop-filter: blur(12px) saturate(1.15);
  -webkit-backdrop-filter: blur(12px) saturate(1.15);
  position: relative;
  overflow: hidden;
}

.glass-social::before{
  content:"";
  position:absolute;
  inset:-2px;
  background:
    linear-gradient(110deg,
      transparent 0%,
      rgba(255,255,255,.22) 35%,
      rgba(255,255,255,.10) 50%,
      transparent 70%);
  transform: translateX(-120%);
  transition: transform .55s ease;
  pointer-events:none;
  mix-blend-mode: screen;
}

.glass-social::after{
  content:"";
  position:absolute;
  inset: 1px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.14);
  pointer-events:none;
}

.glass-social:hover{
  transform: translateY(-2px);
  border-color: rgba(255,255,255,.28);
  box-shadow:
    0 18px 56px rgba(0,0,0,.40),
    0 0 0 1px rgba(0,0,0,.18) inset,
    0 0 0 1px rgba(255,255,255,.10) inset,
    0 12px 60px rgba(168,85,247,.55);
}

.glass-social:hover::before{ transform: translateX(120%); }

.glass-social:active{
  transform: translateY(0) scale(.99);
}

.glass-social:focus-visible{
  outline: 2px solid rgba(168,85,247,.95);
  outline-offset: 3px;
}

.glass-social .ico{
  width: 28px;
  height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.06);
  font-size: 12px;
  font-weight: 900;
}

.social-links{
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  text-align: center;
  color: rgba(234,240,255,.72);
}

.privacy-link{
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: .18em;
  padding: 4px 8px;
  border-radius: 10px;
  border: 1px solid transparent;
}

.privacy-link:hover{
  border-color: rgba(255,255,255,.14);
  background: rgba(255,255,255,.04);
}

.social-links .dot{ opacity: .55; }

.glass-social .ico{
  width: 34px;
  height: 34px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}

.glass-social .ico svg{
  width: 18px;
  height: 18px;
  display:block;
  color: #fff; /* garante branco */
}

/* Alinha a lupinha na barra de pesquisa */
.search-icon{
  display: inline-flex;
  align-items: center;
  justify-content: center;

  width: 22px;
  height: 22px;

  padding: 0;          /* mata a gambiarra antiga */
  line-height: 1;      /* evita “subir/descer” */
  font-size: 18px;

  opacity: .85;
  flex: 0 0 auto;
}

/* Se ainda ficar 1px fora (depende do Windows/font), ajusta (opcional) */
.search-icon{ transform: translateY(1px); }

/* ============================
   POST PAGES: tema claro (leitura)
   ============================ */
body.post-page{
  color: #0B1020;
  background:
    radial-gradient(1200px 800px at 20% 10%, rgba(168,85,247,.10), transparent 55%),
    radial-gradient(1100px 900px at 90% 20%, rgba(99,102,241,.08), transparent 55%),
    radial-gradient(1000px 900px at 55% 90%, rgba(34,211,238,.06), transparent 55%),
    linear-gradient(180deg, #F7F8FF, #FFFFFF);
}

body.post-page .muted{ color: rgba(11,16,32,.62); }

/* deixa blobs/noise mais suaves no fundo claro */
body.post-page .blob{ opacity:.30; filter: blur(60px); }
body.post-page .noise{ opacity:.06; mix-blend-mode: multiply; }

/* header claro */
body.post-page .topbar{
  background: linear-gradient(180deg, rgba(255,255,255,.82), rgba(255,255,255,.55));
  border-bottom: 1px solid rgba(11,16,32,.10);
}

/* sua logo é branca. No fundo claro ela some.
   solução: inverter só nos posts */
body.post-page .brand-logo{
  filter: invert(1) drop-shadow(0 10px 30px rgba(0,0,0,.12));
}

/* menu/links do header */
body.post-page .navlink{
  color: rgba(11,16,32,.82);
}
body.post-page .navlink:hover{
  border-color: rgba(11,16,32,.12);
  background: rgba(11,16,32,.04);
}
body.post-page .navlink.active{
  border-color: rgba(168,85,247,.22);
  background: linear-gradient(90deg, rgba(168,85,247,.10), rgba(99,102,241,.08));
}

/* cards e blocos em “vidro fosco claro” */
body.post-page .post,
body.post-page .ux-card,
body.post-page .ux-toc,
body.post-page #postBody.ge-post details{
  background: rgba(255,255,255,.72);
  border: 1px solid rgba(11,16,32,.10);
  box-shadow: 0 18px 60px rgba(0,0,0,.10);
  backdrop-filter: blur(14px) saturate(1.1);
  -webkit-backdrop-filter: blur(14px) saturate(1.1);
}

/* texto do post */
body.post-page .post-body{
  color: rgba(11,16,32,.92);
}

/* pílulas */
body.post-page .pill{
  border: 1px solid rgba(11,16,32,.10);
  background: rgba(11,16,32,.03);
  color: rgba(11,16,32,.72);
}
body.post-page .pill.ghost{ background: transparent; }

/* botão voltar e afins */
body.post-page .btn-ghost{
  border: 1px solid rgba(11,16,32,.12);
  background: rgba(255,255,255,.70);
  color: rgba(11,16,32,.92);
}
body.post-page .btn-ghost:hover{
  background: rgba(255,255,255,.85);
}

/* links no conteúdo: escuro com destaque bonito */
body.post-page #postBody.ge-post a{
  color: rgba(88,28,135,.95); /* roxo escuro */
  text-decoration-color: rgba(88,28,135,.30);
}
body.post-page #postBody.ge-post a:hover{
  background: rgba(88,28,135,.06);
  border-color: rgba(11,16,32,.12);
}

/* capa do post: overlay claro (pra combinar com fundo branco) */
body.post-page .post-cover::after{
  background: linear-gradient(180deg, transparent, rgba(255,255,255,.92));
}

/* barra de progresso no topo (combina com claro) */
body.post-page .ux-progress{
  background: rgba(11,16,32,.08);
}




/* ===== UX ROUND 3: HOME MAIS LIMPA ===== */
.home-section-head{align-items:flex-start}
.section-kicker{margin:0 0 8px;text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:800;color:rgba(234,240,255,.62)}
.home-section-copy{max-width:760px;margin:10px 0 0;line-height:1.65}
.cards-home{margin-top:18px}
.cards-home .card{grid-column:span 4;min-height:100%;display:flex;flex-direction:column}
.cards-home .card-inner{display:flex;flex-direction:column;height:100%;gap:10px}
.cards-home .card-title{font-size:21px;line-height:1.18;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.cards-home .card-excerpt{margin-top:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;min-height:4.65em}
.card-meta-top{margin-top:0}
.card-meta-bottom{margin-top:auto;justify-content:space-between;align-items:center}
.card-arrow{font-weight:800;color:rgba(234,240,255,.88)}
.pill-highlight{border-color:rgba(34,211,238,.18);background:linear-gradient(90deg, rgba(34,211,238,.10), rgba(168,85,247,.10))}
.tag-pill{max-width:70%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.home-actions{display:flex;justify-content:center;margin-top:18px}
.home-actions-inline{justify-content:flex-start}
.home-more-link{min-width:220px}
.tag-cloud-home{margin-top:18px}
.tag-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:18px}
.tag-action-btn{min-width:150px}
.tag-count-badge{min-width:26px;height:26px;padding:0 8px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:rgba(255,255,255,.08);color:rgba(234,240,255,.78);font-size:12px;font-weight:800}
.card-empty-state{grid-column:1 / -1 !important}
.card-empty-state .card-inner{min-height:auto}
.card-empty-state .card-title{display:block}
@media (max-width:1080px){.cards-home .card{grid-column:span 6}}
@media (max-width:680px){.cards-home .card{grid-column:span 12}.hero-title br{display:none}}

/* ===== UX ROUND 3: PÁGINAS DE POST MAIS LEVES ===== */
html.page-post-html{background:#eef2f7}
body.page-post{background:#eef2f7;color:#101827}
body.page-post .bg-effects,body.page-post .grid,body.page-post .noise,body.page-post .blob{display:none !important}
.post-progress{position:fixed;top:0;left:0;width:100%;height:4px;z-index:80;background:rgba(16,24,39,.06)}
.post-progress-bar{width:0;height:100%;background:linear-gradient(90deg, #7c3aed, #6366f1)}
.post-topbar{position:sticky;top:0;z-index:70;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:14px 18px;background:rgba(255,255,255,.88);border-bottom:1px solid rgba(16,24,39,.08);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.post-topbar a{color:#101827}
.post-topbar-group{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.post-topbar-link{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;background:#fff;border:1px solid rgba(16,24,39,.10);font-weight:800;box-shadow:0 14px 36px rgba(15,23,42,.06)}
.post-shell{max-width:1120px;margin:0 auto;padding:26px 18px 60px}
.article-shell{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:30px;box-shadow:0 24px 80px rgba(15,23,42,.10);padding:clamp(22px, 4vw, 42px)}
.article-breadcrumbs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px;color:rgba(16,24,39,.56);font-size:14px}
.article-breadcrumbs a{color:rgba(16,24,39,.72);font-weight:700}
.article-head{max-width:820px;margin:0 auto 28px}
.article-kicker{margin:0 0 10px;text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:800;color:#6d28d9}
.article-title{margin:0;font-size:clamp(32px, 5vw, 56px);line-height:1.03;letter-spacing:-.03em;color:#0f172a}
.article-excerpt{margin:16px 0 0;font-size:18px;line-height:1.7;color:rgba(15,23,42,.76)}
.article-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.article-meta-pill{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;border:1px solid rgba(15,23,42,.10);background:#f7f8fc;color:rgba(15,23,42,.70);font-size:13px;font-weight:700}
.article-tags{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.article-tag{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:999px;border:1px solid rgba(124,58,237,.14);background:rgba(124,58,237,.07);color:#5b21b6;font-weight:800;font-size:13px}
.article-cover{margin:28px auto 0;max-width:900px}
.article-cover img{width:100%;height:auto;display:block;border-radius:24px;border:1px solid rgba(15,23,42,.08);box-shadow:0 24px 70px rgba(15,23,42,.10)}
.entry-body{max-width:760px;margin:0 auto;color:#1f2937;font-size:18px;line-height:1.78}
.entry-body h2,.entry-body h3{color:#0f172a;line-height:1.15;letter-spacing:-.02em}
.entry-body h2{margin-top:36px;margin-bottom:14px;font-size:clamp(26px, 3.3vw, 34px)}
.entry-body h3{margin-top:24px;margin-bottom:10px;font-size:clamp(21px, 2.8vw, 25px)}
.entry-body p,.entry-body li{color:rgba(31,41,55,.92)}
.entry-body article > header > h1{display:none}
.entry-body article > header{margin-bottom:24px}
.entry-body article > header p:first-of-type{display:inline-flex;flex-wrap:wrap;gap:10px;align-items:center;margin:0 0 20px;padding:10px 14px;border-radius:999px;border:1px solid rgba(15,23,42,.10);background:#f7f8fc;color:rgba(15,23,42,.68);font-size:13px;font-weight:700}
.entry-body nav[aria-label="Sumário"]{margin:26px 0;padding:22px;border-radius:22px;border:1px solid rgba(15,23,42,.08);background:#f8fafc}
.entry-body nav[aria-label="Sumário"] h2{margin-top:0;font-size:20px}
.entry-body nav[aria-label="Sumário"] ol,.entry-body nav[aria-label="Sumário"] ul{margin:10px 0 0;padding-left:20px}
.entry-body nav[aria-label="Sumário"] li + li{margin-top:8px}
.entry-body a{color:#5b21b6;text-decoration-thickness:2px;text-underline-offset:.15em}
.entry-body blockquote{margin:24px 0;padding:18px 20px;border-radius:20px;border-left:4px solid #7c3aed;background:#f7f1ff;color:#312e81}
.entry-body details{margin:18px 0;padding:16px 18px;border-radius:20px;border:1px solid rgba(15,23,42,.08);background:#fafbff}
.entry-body summary{cursor:pointer;font-weight:800;color:#111827}
.entry-body pre{white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere;background:#0f172a;color:#eef2ff;padding:18px;border-radius:18px;font-size:14px;line-height:1.65}
.entry-body .copy-block{margin:20px 0;border-radius:22px;overflow:hidden;border:1px solid rgba(15,23,42,.10);background:#0f172a;box-shadow:0 20px 40px rgba(15,23,42,.12)}
.entry-body .copy-btn{appearance:none;border:0;background:linear-gradient(90deg, #7c3aed, #6366f1);color:#fff;font-weight:800;padding:12px 16px;cursor:pointer}
.entry-body .copy-btn.is-copied{background:linear-gradient(90deg, #0f766e, #14b8a6)}
.entry-body .copy-block pre{margin:0;border-radius:0}
.entry-body ul,.entry-body ol{padding-left:22px}
.entry-body li + li{margin-top:8px}
.entry-body img{max-width:100%;height:auto;border-radius:18px}
.entry-body input[type="checkbox"]{width:18px;height:18px;margin-right:8px;accent-color:#7c3aed}
.related-section{margin-top:28px;border-top:1px solid rgba(15,23,42,.08);padding-top:28px}
.related-section-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-end;flex-wrap:wrap;margin-bottom:16px}
.related-section-head h2{margin:0;font-size:24px;color:#0f172a}
.related-section-head p{margin:0;color:rgba(15,23,42,.62)}
.related-grid{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:16px}
.related-card{border:1px solid rgba(15,23,42,.08);background:#fff;border-radius:22px;padding:18px;box-shadow:0 16px 40px rgba(15,23,42,.06)}
.related-card h3{margin:10px 0 0;font-size:18px;line-height:1.25;color:#111827}
.related-card p{margin:12px 0 0;color:rgba(15,23,42,.70);font-size:15px;line-height:1.6}
.post-bottom{margin:18px auto 0;max-width:1120px;padding:0 18px 30px;display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;color:rgba(15,23,42,.68)}
.post-bottom a{color:#5b21b6;font-weight:800}
@media (max-width:900px){.related-grid{grid-template-columns:1fr}}
@media (max-width:720px){.post-topbar{justify-content:center}.article-meta{flex-direction:column;align-items:flex-start}.article-shell{padding:20px;border-radius:24px}.entry-body{font-size:17px}}


/* ===== Conteúdo do post | rodada clean + interativa ===== */
.post-progress{height:3px;background:rgba(91,33,182,.08)}
.post-progress-bar{background:linear-gradient(90deg, #6d28d9, #7c3aed, #8b5cf6)}
.post-topbar{padding:14px 18px;background:rgba(255,255,255,.92);border-bottom:1px solid rgba(88,28,135,.08);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.post-topbar-inner{max-width:1180px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.post-brand,.post-footer-brand{display:inline-flex;align-items:center}
.post-brand img,.post-footer-brand img{display:block;width:auto;height:40px}
.post-topbar-nav{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.post-topbar-link{background:#fff;border:1px solid rgba(91,33,182,.11);box-shadow:none;color:#1f1147}
.post-topbar-link:hover{border-color:rgba(91,33,182,.20);transform:translateY(-1px)}
.post-topbar-link-accent{background:rgba(124,58,237,.08);color:#5b21b6}
.post-shell{padding:34px 18px 24px;background:linear-gradient(180deg, #faf7ff 0%, #ffffff 26%, #ffffff 100%)}
.post-layout{max-width:1180px;margin:0 auto}
.article-shell{border:1px solid rgba(91,33,182,.08);box-shadow:0 24px 80px rgba(76,29,149,.08)}
.article-breadcrumbs{margin-bottom:20px}
.article-head{max-width:100%;margin-bottom:26px}
.article-kicker{color:#6d28d9}
.article-title{max-width:900px;font-size:clamp(34px, 5vw, 58px)}
.article-excerpt{max-width:820px;font-size:19px;line-height:1.72}
.article-meta-pill{background:#fbf9ff;border-color:rgba(91,33,182,.11);color:rgba(49,18,102,.80)}
.article-tag{background:rgba(124,58,237,.08);border-color:rgba(124,58,237,.12);color:#5b21b6}
.article-utility-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:18px}
.article-utility-btn,.article-utility-link,.rail-action-btn,.rail-action-link,.mobile-summary-close{appearance:none;border:1px solid rgba(91,33,182,.12);background:#fff;color:#4c1d95;font-weight:800;border-radius:999px;padding:11px 16px;line-height:1;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;cursor:pointer;transition:transform .2s ease,border-color .2s ease,background .2s ease}
.article-utility-btn:hover,.article-utility-link:hover,.rail-action-btn:hover,.rail-action-link:hover,.mobile-summary-close:hover{transform:translateY(-1px);border-color:rgba(91,33,182,.24);background:#faf7ff}
.article-utility-btn.is-hidden{display:none}
.article-content-grid{display:grid;grid-template-columns:minmax(0, 1fr) 280px;gap:28px;align-items:start}
.article-main{min-width:0}
.article-rail{position:relative}
.article-rail-card{position:sticky;top:92px;border:1px solid rgba(91,33,182,.10);background:#fff;border-radius:24px;padding:18px 18px 20px;box-shadow:0 16px 45px rgba(76,29,149,.07)}
.article-rail-card + .article-rail-card{margin-top:16px;top:365px}
.article-rail-card.is-hidden{display:none}
.article-rail-title{margin:0 0 8px;font-size:14px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#6d28d9}
.article-rail-text{margin:0 0 14px;color:rgba(49,18,102,.72);font-size:14px;line-height:1.65}
.article-rail-card nav[aria-label="Sumário"]{margin:0;padding:0;border:0;background:transparent}
.article-rail-card nav[aria-label="Sumário"] h2{margin:0 0 12px;font-size:14px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#6d28d9}
.article-rail-card nav[aria-label="Sumário"] ol,.article-rail-card nav[aria-label="Sumário"] ul{padding-left:18px}
.article-rail-card nav[aria-label="Sumário"] li + li{margin-top:9px}
.article-rail-card nav[aria-label="Sumário"] a{color:#312e81;text-decoration:none}
.article-rail-card nav[aria-label="Sumário"] a:hover{text-decoration:underline}
.summary-enhanced .entry-body nav[aria-label="Sumário"]{display:none}
.entry-body{max-width:780px;font-size:18px;line-height:1.82}
.entry-body p{margin:0 0 1.1em}
.entry-body h2{margin-top:44px;font-size:clamp(28px,3vw,36px)}
.entry-body h3{margin-top:28px;font-size:clamp(22px,2.4vw,27px)}
.entry-body table{width:100%;border-collapse:collapse;margin:24px 0;background:#fff;border-radius:18px;overflow:hidden;border:1px solid rgba(15,23,42,.08)}
.entry-body th,.entry-body td{padding:12px 14px;border-bottom:1px solid rgba(15,23,42,.08);text-align:left}
.entry-body hr{border:0;border-top:1px solid rgba(15,23,42,.08);margin:30px 0}
.entry-body > *:first-child{margin-top:0}
.related-section{margin-top:34px;padding-top:30px}
.related-card{border-color:rgba(91,33,182,.08)}
.post-bottom{margin-top:26px;padding:0 18px 34px}
.post-bottom-inner{max-width:1180px;margin:0 auto;border:1px solid rgba(91,33,182,.09);background:#fff;border-radius:28px;padding:22px 24px;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;box-shadow:0 16px 50px rgba(76,29,149,.06)}
.post-bottom-copy{flex:1 1 320px;color:rgba(49,18,102,.78)}
.post-bottom-copy p{margin:0;line-height:1.65}
.post-bottom-copy a,.post-bottom-nav a{color:#5b21b6;font-weight:800}
.post-bottom-nav{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.mobile-summary-sheet[hidden]{display:none}
.mobile-summary-open{overflow:hidden}
@media (max-width:1024px){
  .article-content-grid{grid-template-columns:1fr}
  .article-rail{display:none}
  .summary-enhanced .entry-body nav[aria-label="Sumário"]{display:block}
}
@media (max-width:720px){
  .post-topbar{padding:12px 14px}
  .post-topbar-inner{justify-content:center}
  .post-brand img,.post-footer-brand img{height:34px}
  .post-topbar-nav{justify-content:center}
  .article-shell{padding:20px}
  .article-title{font-size:clamp(30px,10vw,42px);line-height:1.05}
  .article-excerpt{font-size:17px}
  .article-utility-row{margin-top:16px}
  .article-utility-btn,.article-utility-link,.rail-action-btn,.rail-action-link,.mobile-summary-close{padding:10px 14px;font-size:14px}
  .mobile-summary-sheet{position:fixed;inset:0;z-index:120}
  .mobile-summary-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.52)}
  .mobile-summary-panel{position:absolute;left:0;right:0;bottom:0;background:#fff;border-radius:26px 26px 0 0;padding:18px 18px calc(22px + env(safe-area-inset-bottom));max-height:min(74vh,680px);overflow:auto;box-shadow:0 -24px 70px rgba(15,23,42,.18)}
  .mobile-summary-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
  .mobile-summary-head h2{margin:0;font-size:18px;color:#111827}
  #mobileSummarySlot nav[aria-label="Sumário"]{margin:0;padding:0;border:0;background:transparent}
  #mobileSummarySlot nav[aria-label="Sumário"] h2{display:none}
  #mobileSummarySlot nav[aria-label="Sumário"] ol,#mobileSummarySlot nav[aria-label="Sumário"] ul{padding-left:18px}
  #mobileSummarySlot nav[aria-label="Sumário"] li + li{margin-top:10px}
  #mobileSummarySlot nav[aria-label="Sumário"] a{color:#312e81;text-decoration:none}
  #mobileSummarySlot nav[aria-label="Sumário"] a:hover{text-decoration:underline}
  .post-bottom{padding:0 14px 28px}
  .post-bottom-inner{padding:18px 18px 20px;justify-content:center;text-align:center}
  .post-bottom-nav{justify-content:center}
}


/* ===== PÁGINAS DE CONTEÚDO | CLEAN FINAL ===== */
html.page-post-html,
body.page-post{background:#ffffff !important;color:#111827}
body.page-post .bg-effects,
body.page-post .grid,
body.page-post .noise,
body.page-post .blob,
.article-rail,
.mobile-summary-sheet,
.article-utility-row{display:none !important}
.post-progress{height:3px;background:rgba(109,40,217,.08)}
.post-progress-bar{background:linear-gradient(90deg,#6d28d9,#8b5cf6)}
.post-topbar{position:sticky;top:0;z-index:50;padding:16px 20px;background:rgba(255,255,255,.94);border-bottom:1px solid rgba(17,24,39,.08);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.post-topbar-inner{max-width:1120px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.post-brand img,.post-footer-brand img{height:42px;width:auto;display:block}
.post-topbar-nav{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.post-topbar-link{padding:0 !important;background:transparent !important;border:0 !important;box-shadow:none !important;color:#4b5563 !important;font-weight:700 !important;text-decoration:none}
.post-topbar-link:hover{color:#111827 !important;transform:none !important}
.post-topbar-link-accent{padding:12px 18px !important;border-radius:999px !important;background:#6d28d9 !important;color:#ffffff !important;font-weight:800 !important}
.post-topbar-link-accent:hover{background:#5b21b6 !important;color:#ffffff !important}
.post-shell{max-width:960px;margin:0 auto;padding:32px 20px 20px;background:#ffffff !important}
.article-shell{padding:0 !important;background:#ffffff !important;border:0 !important;border-radius:0 !important;box-shadow:none !important}
.article-breadcrumbs{margin:0 0 18px;color:#6b7280;font-size:14px}
.article-breadcrumbs a{color:#4b5563;font-weight:700;text-decoration:none}
.article-head{max-width:100%;margin:0 0 28px}
.article-kicker{margin:0 0 10px;font-size:13px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#6d28d9}
.article-title{margin:0;max-width:840px;font-size:clamp(38px,6vw,64px);line-height:1.02;letter-spacing:-.04em;color:#0f172a}
.article-excerpt{max-width:780px;margin:18px 0 0;font-size:22px;line-height:1.65;color:#4b5563}
.article-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.article-meta-pill{padding:10px 14px;border-radius:999px;background:#f5f3ff;border:0;color:#5b21b6;font-size:13px;font-weight:800}
.article-tags{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.article-tag{display:inline-flex;align-items:center;justify-content:center;padding:9px 14px;border-radius:999px;background:#f5f3ff;border:0;color:#5b21b6;font-size:13px;font-weight:800;text-decoration:none}
.article-cover{margin:28px 0 0}
.article-cover img{display:block;width:100%;height:auto;border-radius:24px;border:0;box-shadow:none}
.article-main{min-width:0}
.entry-body{max-width:760px;margin:0 auto;font-size:19px;line-height:1.88;color:#111827}
.entry-body article > header{display:none !important}
.entry-body article > script{display:none !important}
.entry-body p{margin:0 0 1.18em;color:#1f2937}
.entry-body h2,.entry-body h3{color:#0f172a;line-height:1.12;letter-spacing:-.03em}
.entry-body h2{margin:46px 0 16px;font-size:clamp(29px,3vw,38px)}
.entry-body h3{margin:30px 0 12px;font-size:clamp(23px,2.4vw,28px)}
.entry-body a{color:#5b21b6;text-decoration-thickness:2px;text-underline-offset:.16em}
.entry-body nav[aria-label="Sumário"]{margin:26px 0 34px;padding:22px 24px;border-radius:22px;background:#faf7ff;border:0}
.entry-body nav[aria-label="Sumário"] h2{margin:0 0 12px;font-size:20px}
.entry-body nav[aria-label="Sumário"] ol,
.entry-body nav[aria-label="Sumário"] ul{padding-left:20px;margin:0}
.entry-body nav[aria-label="Sumário"] li + li{margin-top:10px}
.entry-body blockquote{margin:28px 0;padding:18px 22px;border-left:4px solid #6d28d9;background:#faf7ff;border-radius:0 18px 18px 0;color:#312e81}
.entry-body details{margin:18px 0;padding:18px 20px;border-radius:18px;background:#faf7ff;border:0}
.entry-body summary{cursor:pointer;font-weight:800;color:#111827}
.entry-body pre{white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere}
.entry-body .copy-block{display:flex;flex-direction:column;gap:12px;margin:24px 0;padding:18px;border-radius:20px;background:#ffffff;border:1px solid rgba(17,24,39,.08);box-shadow:none}
.entry-body .copy-block > pre{order:1;margin:0;padding:0;background:#ffffff !important;color:#111827 !important;border:0;border-radius:0;font-size:15px;line-height:1.72}
.entry-body .copy-block > button,
.entry-body .copy-btn{order:2;align-self:flex-start;appearance:none;border:0;border-radius:14px;background:#111827 !important;color:#ffffff !important;font-weight:800;padding:12px 16px;cursor:pointer;box-shadow:none}
.entry-body .copy-btn.is-copied,
.entry-body .copy-block > button.is-copied{background:#5b21b6 !important;color:#ffffff !important}
.entry-body ul,.entry-body ol{padding-left:22px}
.entry-body li + li{margin-top:10px}
.entry-body input[type="checkbox"]{width:18px;height:18px;margin-right:8px;accent-color:#6d28d9}
.entry-body table{width:100%;border-collapse:collapse;margin:24px 0;background:#ffffff;border-radius:18px;overflow:hidden;border:1px solid rgba(17,24,39,.08)}
.entry-body th,.entry-body td{padding:12px 14px;border-bottom:1px solid rgba(17,24,39,.08);text-align:left}
.entry-body hr{border:0;border-top:1px solid rgba(17,24,39,.10);margin:34px 0}
.checklist-whatsapp-btn{display:inline-flex;align-items:center;justify-content:center;margin-top:16px;padding:12px 18px;border-radius:999px;background:#25d366;color:#083b1f !important;font-weight:900;text-decoration:none;border:0}
.author-box{max-width:760px;margin:38px auto 0;padding:28px;border-radius:24px;background:#faf7ff}
.author-box-kicker{margin:0 0 8px;font-size:13px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#6d28d9}
.author-box h2{margin:0 0 10px;font-size:28px;color:#0f172a}
.author-box p{margin:0;color:#374151;font-size:17px;line-height:1.75}
.service-banner{max-width:760px;margin:24px auto 0;padding:28px;border-radius:28px;background:linear-gradient(135deg,#5b21b6 0%,#7c3aed 55%,#a855f7 100%);color:#ffffff;display:flex;align-items:center;justify-content:space-between;gap:22px;flex-wrap:wrap}
.service-banner-kicker{margin:0 0 8px;font-size:13px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.82)}
.service-banner h2{margin:0 0 10px;font-size:clamp(28px,4vw,36px);line-height:1.08;color:#ffffff}
.service-banner p{margin:0;color:rgba(255,255,255,.90);line-height:1.7}
.service-banner-btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 20px;border-radius:999px;background:#ffffff;color:#5b21b6 !important;font-weight:900;text-decoration:none;white-space:nowrap}
.related-section{max-width:760px;margin:34px auto 0;padding-top:30px;border-top:1px solid rgba(17,24,39,.08)}
.related-section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:18px}
.related-section-head h2{margin:0;font-size:28px;color:#0f172a}
.related-section-head p{margin:0;color:#6b7280}
.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.related-card{padding:18px;border-radius:20px;background:#ffffff;border:1px solid rgba(17,24,39,.08);text-decoration:none;box-shadow:none}
.related-card h3{margin:10px 0 0;font-size:18px;line-height:1.3;color:#111827}
.related-card p{margin:12px 0 0;color:#4b5563;font-size:15px;line-height:1.65}
.post-bottom{max-width:960px;margin:26px auto 0;padding:0 20px 36px}
.post-bottom-inner{border-top:1px solid rgba(17,24,39,.10);border-radius:0 !important;background:#ffffff !important;border-left:0 !important;border-right:0 !important;border-bottom:0 !important;box-shadow:none !important;padding:24px 0 0;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.post-bottom-copy{flex:1 1 320px;color:#4b5563}
.post-bottom-copy p{margin:0;line-height:1.7}
.post-bottom-copy a,.post-bottom-nav a{color:#5b21b6;font-weight:800;text-decoration:none}
.post-bottom-nav{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
@media (max-width:900px){
  .related-grid{grid-template-columns:1fr}
}
@media (max-width:720px){
  .post-topbar{padding:14px 16px}
  .post-topbar-inner{justify-content:center}
  .post-brand img,.post-footer-brand img{height:36px}
  .post-topbar-nav{justify-content:center;gap:14px}
  .post-topbar-link{font-size:14px}
  .post-topbar-link-accent{padding:10px 16px !important}
  .post-shell{padding:24px 16px 14px}
  .article-title{font-size:clamp(32px,12vw,44px)}
  .article-excerpt{font-size:18px}
  .entry-body{font-size:17px;line-height:1.8}
  .entry-body nav[aria-label="Sumário"]{padding:18px 18px 20px}
  .author-box,.service-banner,.related-section{max-width:100%}
  .author-box{padding:22px}
  .service-banner{padding:22px}
  .service-banner-btn{width:100%}
  .post-bottom{padding:0 16px 28px}
  .post-bottom-inner{padding-top:20px;justify-content:center;text-align:center}
  .post-bottom-nav{justify-content:center}
}


/* Ajuste clean final: conteúdo solto no fundo branco */
.entry-body nav[aria-label="Sumário"]{margin:22px 0 30px !important;padding:0 !important;background:transparent !important;border:0 !important;border-radius:0 !important;box-shadow:none !important}
.entry-body nav[aria-label="Sumário"] h2{margin:0 0 14px !important;font-size:22px !important}
.entry-body nav[aria-label="Sumário"] ol,
.entry-body nav[aria-label="Sumário"] ul{margin:0 !important;padding-left:22px !important}
.author-box{max-width:760px;margin:42px auto 0 !important;padding:0 !important;background:transparent !important;border:0 !important;border-radius:0 !important;box-shadow:none !important}
.author-box h2{font-size:30px !important}
.related-section{max-width:760px;margin:38px auto 0 !important;padding-top:26px !important;border-top:1px solid rgba(17,24,39,.10) !important;background:transparent !important;border-radius:0 !important;box-shadow:none !important}
.related-grid{gap:16px !important}
.related-card{padding:0 !important;background:transparent !important;border:0 !important;border-radius:0 !important;box-shadow:none !important}
.related-card h3{margin-top:10px !important}
@media (max-width:768px){
  .entry-body nav[aria-label="Sumário"]{margin:18px 0 26px !important}
  .author-box{margin-top:34px !important}
}


/* Ajuste v4: remover caixa do conteúdo principal */
.entry-body .post,
.entry-body .post-content{
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  overflow:visible !important;
}
.entry-body > article:first-child{margin-top:0 !important}

/* ===========================================================
   Consent banner (LGPD / Consent Mode v2)
   =========================================================== */
.ge-consent {
  position: fixed;
  inset: auto 16px 16px 16px;
  z-index: 9999;
  pointer-events: none;
}
.ge-consent[hidden] { display: none; }
.ge-consent-card {
  pointer-events: auto;
  max-width: 720px;
  margin: 0 auto;
  background: rgba(11, 16, 32, 0.96);
  color: rgba(234, 240, 255, 0.92);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 16px;
  padding: 18px 20px;
  box-shadow: 0 18px 60px rgba(0, 0, 0, 0.4);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}
.ge-consent-title {
  margin: 0 0 4px;
  font-weight: 800;
  font-size: 1.05em;
}
.ge-consent-text {
  margin: 0 0 12px;
  font-size: 0.95em;
  opacity: 0.85;
  line-height: 1.45;
}
.ge-consent-options {
  display: grid;
  gap: 10px;
  margin: 8px 0 14px;
  padding: 10px 12px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.03);
}
.ge-consent-options[hidden] { display: none; }
.ge-consent-row {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  font-size: 0.92em;
  line-height: 1.4;
  opacity: 0.92;
}
.ge-consent-row input[type="checkbox"] {
  margin-top: 3px;
  accent-color: #a855f7;
}
.ge-consent-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 6px;
}
.ge-consent-btn {
  border: 1px solid rgba(255, 255, 255, 0.16);
  background: rgba(255, 255, 255, 0.06);
  color: inherit;
  padding: 9px 14px;
  border-radius: 999px;
  font: inherit;
  font-weight: 700;
  letter-spacing: 0.2px;
  cursor: pointer;
  transition: background-color .12s ease, border-color .12s ease, transform .12s ease;
}
.ge-consent-btn:hover {
  background: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.24);
}
.ge-consent-btn:active { transform: translateY(1px); }
.ge-consent-btn--accept {
  background: linear-gradient(90deg, rgba(168, 85, 247, 0.95), rgba(99, 102, 241, 0.92));
  border-color: transparent;
  color: #fff;
}
.ge-consent-btn--accept:hover {
  background: linear-gradient(90deg, rgba(168, 85, 247, 1), rgba(99, 102, 241, 0.98));
  border-color: transparent;
}
.ge-consent-btn--save {
  background: rgba(124, 58, 237, 0.85);
  border-color: transparent;
  color: #fff;
}
.ge-consent-btn--save:hover {
  background: rgba(124, 58, 237, 0.95);
  border-color: transparent;
}
.ge-consent-btn.is-hidden { display: none; }
.ge-consent-link {
  display: inline-block;
  margin-top: 12px;
  font-size: 0.85em;
  opacity: 0.62;
  color: inherit;
  text-decoration: underline;
}
.ge-consent-link:hover { opacity: 1; }

/* Botão "Cookies" no footer (mesmo estilo do privacy-link) */
.cookies-link {
  background: none;
  border: 0;
  padding: 0;
  font: inherit;
  color: inherit;
  cursor: pointer;
  text-decoration: underline;
  opacity: 0.78;
}
.cookies-link:hover { opacity: 1; }

/* No tema claro (post page) o banner mantém aparência escura para contraste */
body.page-post .ge-consent-card,
body.post-page .ge-consent-card {
  background: rgba(11, 16, 32, 0.96);
  color: rgba(234, 240, 255, 0.92);
  border-color: rgba(255, 255, 255, 0.12);
}

@media (max-width: 600px) {
  .ge-consent { inset: auto 8px 8px 8px; }
  .ge-consent-card { padding: 14px 16px; }
  .ge-consent-actions { gap: 6px; }
  .ge-consent-btn { padding: 8px 12px; font-size: 0.92em; }
}

/* ===========================================================
   Engagement card — Camada 1 (Encerre este post)
   =========================================================== */
.post-engage {
  margin: 36px 0 8px;
  padding: 24px 26px 22px;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.78);
  border: 1px solid rgba(11, 16, 32, 0.1);
  box-shadow: 0 12px 36px rgba(0, 0, 0, 0.06);
  backdrop-filter: blur(10px) saturate(1.05);
  -webkit-backdrop-filter: blur(10px) saturate(1.05);
}
.post-engage-kicker {
  margin: 0 0 6px;
  font-size: 0.78em;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(11, 16, 32, 0.55);
  font-weight: 800;
}
.post-engage-title {
  margin: 0 0 6px;
  font-size: 1.5em;
  line-height: 1.2;
  color: rgba(11, 16, 32, 0.92);
}
.post-engage-text {
  margin: 0 0 16px;
  color: rgba(11, 16, 32, 0.7);
  line-height: 1.5;
}
.post-engage-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.post-engage-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  border-radius: 999px;
  border: 1px solid rgba(11, 16, 32, 0.14);
  background: rgba(255, 255, 255, 0.86);
  color: rgba(11, 16, 32, 0.92);
  font: inherit;
  font-weight: 700;
  cursor: pointer;
  transition: background-color .15s ease, border-color .15s ease, transform .15s ease, color .15s ease;
}
.post-engage-btn:hover {
  background: rgba(255, 255, 255, 1);
  border-color: rgba(11, 16, 32, 0.22);
  transform: translateY(-1px);
}
.post-engage-btn:active { transform: translateY(0); }
.post-engage-btn:focus-visible {
  outline: 2px solid rgba(124, 58, 237, 0.85);
  outline-offset: 2px;
}
.post-engage-btn-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1em;
  line-height: 1;
}
.post-engage-btn.is-active {
  background: linear-gradient(90deg, rgba(168, 85, 247, 0.16), rgba(99, 102, 241, 0.14));
  border-color: rgba(168, 85, 247, 0.42);
  color: rgba(11, 16, 32, 0.92);
}
.post-engage-btn.is-active .post-engage-btn-icon {
  color: rgba(124, 58, 237, 1);
}
.post-engage-btn--accent {
  background: linear-gradient(90deg, rgba(168, 85, 247, 0.95), rgba(99, 102, 241, 0.92));
  border-color: transparent;
  color: #fff;
}
.post-engage-btn--accent:hover {
  background: linear-gradient(90deg, rgba(168, 85, 247, 1), rgba(99, 102, 241, 0.98));
  border-color: transparent;
  color: #fff;
}
.post-engage-hint {
  margin: 12px 0 0;
  font-size: 0.92em;
  color: rgba(11, 16, 32, 0.62);
}
.post-engage-hint[hidden] { display: none; }

@media (max-width: 600px) {
  .post-engage { padding: 18px 18px 20px; }
  .post-engage-title { font-size: 1.3em; }
  .post-engage-actions { gap: 8px; }
  .post-engage-btn { padding: 9px 14px; }
  .post-engage-btn-label { font-size: 0.94em; }
}

/* ===========================================================
   "Continue depois" — Camada 1.5 (home)
   =========================================================== */
.saved-section .saved-kicker {
  margin: 0 0 4px;
  font-size: 0.78em;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(168, 85, 247, 0.95);
  font-weight: 800;
}
.saved-section .saved-subtitle {
  margin: 4px 0 0;
  opacity: 0.7;
  font-size: 0.95em;
}
.saved-section .saved-clear-btn {
  white-space: nowrap;
}
.card-wrap {
  position: relative;
  display: block;
}
.card-wrap-saved .card {
  /* destaca discretamente cards salvos */
  box-shadow: 0 0 0 1px rgba(168, 85, 247, 0.32) inset, 0 16px 40px rgba(0, 0, 0, 0.18);
}
.card-saved-remove {
  position: absolute;
  top: 10px;
  right: 10px;
  width: 32px;
  height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.2);
  background: rgba(11, 16, 32, 0.72);
  color: #fff;
  font-size: 18px;
  line-height: 1;
  cursor: pointer;
  z-index: 2;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  transition: background-color .15s ease, transform .15s ease, border-color .15s ease;
}
.card-saved-remove:hover {
  background: rgba(168, 85, 247, 0.92);
  border-color: rgba(255, 255, 255, 0.3);
  transform: scale(1.06);
}
.card-saved-remove:focus-visible {
  outline: 2px solid rgba(168, 85, 247, 1);
  outline-offset: 2px;
}

/* ===========================================================
   Camada 2 — Take-away (atalho pronto pra usar)
   =========================================================== */
.post-takeaway {
  position: relative;
  margin: 22px 0 28px;
  padding: 22px 26px;
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(168, 85, 247, 0.06), rgba(99, 102, 241, 0.05));
  border: 1px solid rgba(168, 85, 247, 0.28);
  box-shadow: 0 12px 36px rgba(168, 85, 247, 0.08);
}
.post-takeaway-kicker {
  margin: 0 0 4px;
  font-size: 0.78em;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(124, 58, 237, 0.95);
  font-weight: 800;
}
.post-takeaway-title {
  margin: 0 0 14px;
  font-size: 1.4em;
  line-height: 1.2;
  color: rgba(11, 16, 32, 0.92);
}
.post-takeaway-content {
  color: rgba(11, 16, 32, 0.88);
  line-height: 1.6;
  font-size: 1.02em;
}
.post-takeaway-content > :first-child { margin-top: 0; }
.post-takeaway-content > :last-child { margin-bottom: 0; }
.post-takeaway-content blockquote {
  margin: 12px 0;
  padding: 12px 16px;
  background: rgba(255, 255, 255, 0.6);
  border-left: 3px solid rgba(168, 85, 247, 0.6);
  border-radius: 8px;
  font-style: normal;
}
.post-takeaway-content code {
  background: rgba(11, 16, 32, 0.06);
  padding: 2px 6px;
  border-radius: 4px;
  font-size: 0.92em;
}
.post-takeaway-copy {
  position: absolute;
  top: 16px;
  right: 16px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 7px 12px;
  border-radius: 999px;
  border: 1px solid rgba(168, 85, 247, 0.4);
  background: rgba(255, 255, 255, 0.85);
  color: rgba(11, 16, 32, 0.92);
  font: inherit;
  font-size: 0.88em;
  font-weight: 700;
  cursor: pointer;
  transition: background-color .15s ease, transform .15s ease;
}
.post-takeaway-copy:hover {
  background: rgba(168, 85, 247, 0.15);
  transform: translateY(-1px);
}
.post-takeaway-copy.is-copied {
  background: rgba(34, 197, 94, 0.16);
  border-color: rgba(34, 197, 94, 0.5);
}
.post-takeaway-copy-icon { line-height: 1; }

/* ===========================================================
   Camada 2 — Atividade (checklist salvável)
   =========================================================== */
.post-activity {
  margin: 28px 0 12px;
  padding: 24px 26px 22px;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.82);
  border: 1px solid rgba(11, 16, 32, 0.1);
  box-shadow: 0 12px 36px rgba(0, 0, 0, 0.06);
}
.post-activity-kicker {
  margin: 0 0 4px;
  font-size: 0.78em;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(124, 58, 237, 0.95);
  font-weight: 800;
}
.post-activity-title {
  margin: 0 0 6px;
  font-size: 1.5em;
  line-height: 1.2;
  color: rgba(11, 16, 32, 0.92);
}
.post-activity-text {
  margin: 0 0 16px;
  color: rgba(11, 16, 32, 0.7);
  line-height: 1.5;
}
.post-activity-steps {
  list-style: none;
  margin: 0 0 18px;
  padding: 0;
  display: grid;
  gap: 8px;
}
.post-activity-step label {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  padding: 10px 14px;
  border-radius: 12px;
  border: 1px solid rgba(11, 16, 32, 0.08);
  background: rgba(255, 255, 255, 0.5);
  cursor: pointer;
  transition: background-color .12s ease, border-color .12s ease;
}
.post-activity-step label:hover {
  background: rgba(255, 255, 255, 0.85);
  border-color: rgba(11, 16, 32, 0.16);
}
.post-activity-step input[type="checkbox"] {
  margin-top: 3px;
  accent-color: rgba(124, 58, 237, 1);
  width: 18px;
  height: 18px;
  flex-shrink: 0;
}
.post-activity-step-text {
  color: rgba(11, 16, 32, 0.92);
  line-height: 1.5;
}
.post-activity-step input[type="checkbox"]:checked ~ .post-activity-step-text {
  text-decoration: line-through;
  text-decoration-color: rgba(124, 58, 237, 0.6);
  text-decoration-thickness: 2px;
  opacity: 0.7;
}
.post-activity-footer {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  align-items: center;
  justify-content: space-between;
}
.post-activity-progress {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 200px;
  flex: 1;
}
.post-activity-progress-bar {
  display: block;
  width: 100%;
  height: 8px;
  border-radius: 999px;
  background: rgba(11, 16, 32, 0.08);
  overflow: hidden;
}
.post-activity-progress-fill {
  display: block;
  height: 100%;
  background: linear-gradient(90deg, rgba(168, 85, 247, 0.95), rgba(99, 102, 241, 0.92));
  transition: width .25s ease;
  border-radius: 999px;
}
.post-activity-progress-label {
  font-size: 0.85em;
  color: rgba(11, 16, 32, 0.6);
  font-weight: 700;
}
.post-activity-whatsapp {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  border-radius: 999px;
  border: 0;
  background: linear-gradient(90deg, rgba(168, 85, 247, 0.95), rgba(99, 102, 241, 0.92));
  color: #fff;
  font: inherit;
  font-weight: 700;
  cursor: pointer;
  transition: transform .15s ease, box-shadow .15s ease;
}
.post-activity-whatsapp:hover {
  transform: translateY(-1px);
  box-shadow: 0 8px 24px rgba(168, 85, 247, 0.3);
}
.post-activity-whatsapp:focus-visible {
  outline: 2px solid rgba(124, 58, 237, 1);
  outline-offset: 2px;
}

@media (max-width: 600px) {
  .post-takeaway { padding: 18px 18px 18px; }
  .post-takeaway-copy { position: static; margin-top: 12px; }
  .post-takeaway-title { font-size: 1.2em; padding-right: 0; }
  .post-activity { padding: 18px 18px 20px; }
  .post-activity-title { font-size: 1.3em; }
  .post-activity-step label { padding: 9px 12px; }
  .post-activity-footer { flex-direction: column; align-items: stretch; }
  .post-activity-whatsapp { width: 100%; justify-content: center; }
}
