/* Capa do post quando há imagem (ocupa o course-thumb) */
    .course-thumb > img.post-cover-img{
      position:absolute; inset:0; width:100%; height:100%;
      object-fit:cover; z-index:1;
    }
    .blog-read{ width:100%; justify-content:center; }

    /* Estado vazio */
    .blog-empty{
      grid-column:1 / -1; text-align:center; color:var(--gray-600);
      max-width:520px; margin:0 auto; padding:60px 20px;
    }
    .blog-empty i{ font-size:3rem; color:var(--gray-300); margin-bottom:18px; display:block; }
    .blog-empty h3{ color:var(--gray-900); margin-bottom:8px; }

    /* Leitor (overlay) — tokens do site */
    .reader{
      position:fixed; inset:0; background:rgba(15,17,23,.6); backdrop-filter:blur(4px);
      z-index:1000; display:none; align-items:flex-start; justify-content:center;
      overflow-y:auto; padding:5vh 16px;
    }
    .reader.open{ display:flex; }
    .reader-box{
      background:var(--white); max-width:760px; width:100%;
      border-radius:var(--radius-lg); overflow:hidden;
      box-shadow:var(--shadow-xl); margin-bottom:5vh;
    }
    .reader-cover{
      height:280px; background:var(--gradient-primary);
      display:flex; align-items:center; justify-content:center;
      color:rgba(255,255,255,.85); font-size:3.4rem; overflow:hidden; position:relative;
    }
    .reader-cover img{ width:100%; height:100%; object-fit:cover; }
    .reader-close{
      position:fixed; top:18px; right:22px; background:var(--white); border:none;
      width:44px; height:44px; border-radius:50%; font-size:1.2rem; cursor:pointer;
      box-shadow:var(--shadow-lg); color:var(--gray-900); z-index:1001;
    }
    .reader-content{ padding:34px 38px 44px; }
    .reader-content .reader-cat{
      display:inline-block; background:var(--gradient-subtle); color:var(--primary);
      font-size:.68rem; font-weight:700; letter-spacing:.4px; text-transform:uppercase;
      padding:5px 12px; border-radius:50px; margin-bottom:14px;
    }
    .reader-content h1{ font-size:1.7rem; color:var(--gray-900); line-height:1.25; margin-bottom:10px; }
    .reader-content .rmeta{ color:var(--gray-400); font-size:.84rem; margin-bottom:24px; }
    .reader-content p{ color:var(--gray-800); line-height:1.85; font-size:1.02rem; margin-bottom:16px; }
    @media(max-width:540px){
      .reader-content{ padding:26px 22px 36px; }
      .reader-cover{ height:200px; }
    }
