:root{
      --accent:#5090c0;
      --accent-2:#304050;

      --bg:#efefef;
      --surface:#ffffff;
      --text:#172235;
      --muted:#6b768c;
      --border: rgba(23,34,53,.10);
      --shadow: 0 12px 28px rgba(23,34,53,.08);

      --max: 1280px;
      --reading: 82ch;

      --sans: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji";
      --serif: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;
      --mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;

      --r: 16px;
      --r2: 12px;
    }

    *{box-sizing:border-box}
    html,body{height:100%}
    body{margin:0; font-family:var(--sans); background:var(--bg); color:var(--text); line-height:1.55; overflow-x:hidden}
    a{color:inherit; text-decoration:none}
    a:hover{color:var(--accent)}
    .container{max-width:var(--max); margin:0 auto; padding:0 18px}
    .sr{position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); border:0}
    .hidden{display:none !important}

    /* Header fixo */
    .topbar{
      position: fixed; top:0; left:0; right:0;
      z-index: 60;
      background: rgba(255,255,255,.92);
      border-bottom:1px solid var(--border);
      backdrop-filter: blur(10px);
    }
    .topbar__row{display:flex; align-items:center; gap:10px; padding: 12px 0; flex-wrap:nowrap}
    .brand{display:flex; align-items:center; gap:12px}
    .brand img{height:42px; width:auto}

    .brand a{display:flex; align-items:center; gap:10px}
    .brand-mark{
      width: 34px; height: 34px;
      border-radius: 12px;
      display:inline-grid;
      place-items:center;
      background: rgba(47,125,50,.12);
      border:1px solid var(--border);
      font-size: 18px;
      flex: 0 0 auto;
    }
    .brand-name{
      font-weight: 900;
      letter-spacing: -.25px;
      color: var(--text);
      white-space:nowrap;
    }


    /* Desktop nav */
    .nav{display:none; gap:8px; align-items:center; flex-wrap:nowrap; margin-left: 8px; min-width:0}
    .nav-item{position:relative; display:inline-flex; align-items:center}
    .nav-item::after{
      content:"";
      position:absolute;
      left:0;
      right:0;
      top:100%;
      height:12px;
    }
    .nav a{
      color: var(--muted);
      padding: 8px 10px;
      border-radius: 999px;
      border:1px solid transparent;
      font-size:14px;
      white-space:nowrap;
    }
    .nav a:hover{
      color: var(--text);
      border-color: var(--border);
      background: rgba(80,144,192,.08);
    }
    .nav a.active{
      color:var(--text);
      border-color:rgba(80,144,192,.45);
      background:rgba(80,144,192,.10);
    }
    .nav-dropdown{
      position:absolute;
      top:calc(100% + 10px);
      left:0;
      min-width:300px;
      padding:8px 0;
      background:var(--surface);
      border:1px solid var(--border);
      box-shadow:var(--shadow);
      display:none;
      z-index:70;
    }
    .nav-dropdown a{
      display:block;
      padding:12px 18px;
      border:0;
      border-radius:0;
      color:var(--text);
      font-size:14px;
      font-weight:700;
      background:transparent;
    }
    .nav-dropdown a:hover{background:rgba(80,144,192,.06)}
    .nav-item:hover .nav-dropdown,
    .nav-item:focus-within .nav-dropdown,
    .nav-item.is-open .nav-dropdown{display:block}

    /* Tools: busca + hambÃºrguer (hambÃºrguer sempre por Ãºltimo, bem Ã  direita) */
    .tools{margin-left:auto; display:flex; align-items:center; gap:8px; justify-content:flex-end; min-width: 0; position:relative}

    form.search{
      display:flex; align-items:center; gap:0;
      border:1px solid var(--border);
      background: var(--surface);
      border-radius: 999px;
      padding: 6px;
      flex: 0 0 auto;
      width: 36px;
      min-height: 34px;
      margin: 0;
      justify-content:center;
      cursor:pointer;
      overflow:hidden;
      transition: width .18s ease, padding .18s ease, gap .18s ease;
      position: relative;
      z-index: 65;
    }
    form.search.open{
      width:min(28vw, 320px);
      min-width:170px;
      padding: 6px 9px;
      gap:6px;
      justify-content:flex-start;
      cursor:text;
      box-shadow: var(--shadow);
    }
    form.search input{
      width:100%;
      border:0;
      outline:0;
      background:transparent;
      color:var(--text);
      font-size:16px;
      line-height:1.2;
      display:none;
    }
    form.search.open input{display:block}
    form.search svg{
      width:18px;
      height:18px;
      flex:0 0 18px;
      display:block;
    }
    .search-go{
      border:1px solid var(--border);
      border-radius: 10px;
      background: rgba(255,255,255,.75);
      color: var(--muted);
      font-size: 12px;
      font-weight: 700;
      padding: 3px 8px;
      cursor: pointer;
      line-height: 1.1;
      white-space: nowrap;
      display:none;
    }
    .search-go:hover{border-color: rgba(80,144,192,.45); color:var(--text)}
    .search-clear{
      border:1px solid var(--border);
      border-radius:999px;
      width:24px;
      height:24px;
      display:none;
      place-items:center;
      padding:0;
      background:rgba(255,255,255,.9);
      color:var(--muted);
      cursor:pointer;
      font-size:12px;
      line-height:1;
      flex:0 0 auto;
    }
    .search-clear:hover{
      border-color: rgba(80,144,192,.45);
      color:var(--text);
    }

    .btn{
      border:1px solid var(--border);
      background: var(--surface);
      color: var(--text);
      border-radius: 999px;
      padding: 8px 10px;
      cursor:pointer;
      display:inline-flex;
      gap:8px;
      align-items:center;
    }
    .btn:hover{border-color: rgba(80,144,192,.45)}

    /* Barrinha reduzida (separador) */
    .mini-bar{
      width: 1px;
      height: 26px;
      background: var(--border);
      border-radius: 999px;
      margin: 0 2px;
    }

    
    .icon-btn{
      width: 42px; height: 38px;
      border-radius: 12px;
      display:inline-grid;
      place-items:center;
      padding:0;
      flex: 0 0 auto;
    }
.icon-btn svg{width:18px; height:18px}

.user-chip{
  max-width:220px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  border:1px solid var(--border);
  border-radius:999px;
  padding:7px 10px;
  font-size:13px;
  color:var(--accent-2);
  font-weight:700;
  background:rgba(47,125,50,.10);
}
.user-chip-desktop{display:inline-flex}
.user-chip-mobile{display:none}
.user-chip-link{
  text-decoration:none;
  cursor:pointer;
}
.user-chip-link:hover{
  color:var(--accent-2);
  border-color:rgba(80,144,192,.45);
  background:rgba(47,125,50,.16);
}


    /* HambÃºrguer (sempre visÃ­vel, inclusive no desktop) */
    .hamb{
      width: 42px; height: 38px;
      border-radius: 12px;
      display:inline-grid;
      place-items:center;
      padding:0;
      flex: 0 0 auto;
    }
    .hamb svg{width:20px; height:20px}

    /* Subbar */
    .subbar{
      border-bottom:1px solid var(--border);
      background: linear-gradient(180deg, rgba(80,144,192,.10), transparent);
      margin-top: 62px;
    }
    .subbar__row{
      display:flex; gap:10px; align-items:center;
      padding: 10px 0;
      overflow:auto;
      -webkit-overflow-scrolling: touch;
    }
    .pill{
      white-space:nowrap;
      border:1px solid var(--border);
      background: var(--surface);
      color: var(--muted);
      padding: 8px 10px;
      border-radius: 999px;
      font-size: 13px;
    }
    .pill:hover{color: var(--text); border-color: rgba(80,144,192,.45)}
    .pill.active{
      color: var(--text);
      border-color: rgba(80,144,192,.55);
      background: rgba(80,144,192,.12);
    }
    .sep{color: var(--muted)}

    /* Main */
    .main{padding: 18px 0 30px}
    .grid{display:grid; grid-template-columns: 1fr; gap:18px; align-items:start}

    .sidebar{display:none; position:sticky; top: 120px}
    .sidebar-right{display:none; position:sticky; top: 120px}
    .box{
      background: var(--surface);
      border:1px solid var(--border);
      border-radius: var(--r);
      box-shadow: var(--shadow);
    }
    .box__body{padding: 14px}
    .box h3{margin:0 0 10px; font-size:14px; letter-spacing:.2px}
    .mini-list{display:flex; flex-direction:column; gap:8px}
    .mini-item{
      display:block;
      padding: 10px 12px;
      border:1px solid var(--border);
      border-radius: 14px;
      background: rgba(80,144,192,.05);
      color: var(--muted);
      line-height:1.4;
      overflow-wrap:anywhere;
      word-break:break-word;
    }
    .mini-item:hover{color: var(--text); border-color: rgba(80,144,192,.45)}
    .badge{
      font-family: var(--mono);
      font-size: 11px;
      font-weight: 700;
      color: var(--muted);
      border:1px solid var(--border);
      width: 30px;
      height: 30px;
      padding: 0;
      border-radius: 999px;
      display: inline-grid;
      place-items: center;
      align-self: center;
      flex: 0 0 30px;
      white-space: nowrap;
      background: rgba(255,255,255,.5);
    }

    /* Feed list */
    .feed-head{display:flex; align-items:flex-end; justify-content:space-between; gap:12px; margin-bottom:6px; min-width:0}
    .feed-head h1{margin:0; font-size:18px; letter-spacing:-.2px}
    .hint{color: var(--muted); font-size: 13px}
    .dc-breadcrumb{
      display:flex;
      flex-wrap:wrap;
      align-items:center;
      gap:6px;
      margin:0 0 6px;
      color:var(--muted);
      font-size:13px;
      line-height:1.35;
    }
    .dc-breadcrumb a{
      color:var(--accent-2);
      text-decoration:none;
      font-weight:700;
    }
    .dc-breadcrumb a:hover{text-decoration:underline}
    .dc-breadcrumb .sep{
      color:var(--muted);
      opacity:.8;
      font-weight:700;
    }
    .filters{display:flex; gap:8px; flex-wrap:wrap; justify-content:flex-end; min-width:0}
    .select{
      border:1px solid var(--border);
      background: var(--surface);
      color: var(--text);
      border-radius: 12px;
      padding: 8px 10px;
      font-size: 13px;
      max-width: 100%;
    }

    .list{
      background: transparent;
      border:0;
      border-radius: 0;
      box-shadow: none;
      overflow: visible;
      display:flex;
      flex-direction:column;
      gap:12px;
    }
    .feed-row,
    .row{
      display:grid;
      grid-template-columns: 1fr;
      gap:10px;
      padding: 14px 14px;
      border: 1px solid var(--border);
      border-radius: var(--r);
      box-shadow: var(--shadow);
      background: var(--surface);
      min-width:0;
    }
    .feed-row:last-child,
    .row:last-child{border-bottom: 1px solid var(--border)}
    .feed-row:hover,
    .row:hover{background: rgba(80,144,192,.06)}

    .meta{display:flex; flex-wrap:wrap; gap:10px; color: var(--muted); font-size: 12px; align-items:center; min-width:0}
    .meta > *{min-width:0; overflow-wrap:anywhere; word-break:break-word}
    .label{
      border:1px solid var(--border);
      border-radius: 999px;
      padding: 2px 8px;
      font-size: 12px;
      color: var(--muted);
      background: rgba(80,144,192,.06);
    }
    .label-secondary{
      background: rgba(16,32,22,.04);
    }
    .title{font-size:17px; font-weight:800; line-height:1.2; letter-spacing:-.15px; margin:0}
    .excerpt{margin:0; color:var(--muted); font-size:14px; max-width:95ch; overflow-wrap:anywhere}
    .row-actions{display:flex; gap:10px; flex-wrap:wrap; align-items:center}
    .link{color: var(--accent-2); font-weight:700; font-size:13px}

    /* V11 - imagem no topo do card */
    .feed-row-inner,
    .row-inner{
      display:flex;
      flex-direction:column;
      gap:18px;
      min-width:0;
    }
    .feed-row-content,
    .row-content{
      min-width:0;
      display:flex;
      flex-direction:column;
      justify-content:center;
    }
    .feed-row-media,
    .row-media{
      display:block;
      width:100%;
      flex:0 0 auto;
      border-radius:18px;
      border: 1px solid var(--border);
      background: rgba(80,144,192,.06);
      overflow:hidden;
    }
    

    /* V10 ajustes finos (mobile-first) */
    .feed-row,
    .row{padding: 18px;}
    .thumb{
      width:100%;
      height:auto;
      aspect-ratio: auto;
      border-radius:18px;
    }
    .meta{gap:8px}
    .excerpt{
      display: -webkit-box;
      -webkit-line-clamp: 1;
      -webkit-box-orient: vertical;
      overflow: hidden;
      max-width: 100%;
      line-height:1.6;
    }
    .byline{
      margin-top:0;
      display:flex;
      flex-wrap:wrap;
      align-items:center;
      gap:6px;
      color: var(--muted);
      font-size: 13px;
    }
    .continue{
      color: var(--accent-2);
      font-weight: 700;
      font-size: 14px;
      display:inline-flex;
      align-items:center;
      margin-top: 2px;
    }
    .continue:hover{color: var(--accent)}
    @media (min-width: 960px){
      .feed-row-inner,
      .row-inner{
        display:grid;
        grid-template-columns: minmax(300px, 39%) minmax(0, 1fr);
        align-items:center;
      }
      .feed-row,
      .row{padding: 20px;}
      .thumb{
        height:auto;
        min-height:0;
        max-height:320px;
        aspect-ratio: auto;
      }
    }

    .thumb{
      border: 0;
      background: transparent;
      object-fit: contain;
      display:block;
    }
    .row-actions{display:none} /* no estilo "Continue a ler", ocultar botÃµes de aÃ§Ã£o */

    .dc-search-results{
      display:flex;
      flex-direction:column;
      gap:12px;
    }
    .dc-search-item{
      width:100% !important;
      max-width:none !important;
      display:block !important;
      border:1px solid var(--border);
      border-radius: var(--r);
      box-shadow: var(--shadow);
      background: var(--surface);
    }
    .dc-search-item__body{
      padding:14px;
      width:100%;
    }
    .dc-search-item .title{
      margin:0;
    }
    .dc-search-empty{
      border:1px solid var(--border);
      border-radius: var(--r);
      box-shadow: var(--shadow);
      background: var(--surface);
      padding:14px;
    }

    /* Article */
    .article-wrap{
      display:none;
      background: var(--surface);
      border:1px solid var(--border);
      border-radius: var(--r);
      box-shadow: var(--shadow);
      padding: 18px 16px;
    }
    .article{max-width: var(--reading); margin:0 auto; font-family: var(--serif)}
    .article-hero{
      display:flex;
      flex-direction:column;
      align-items:stretch;
    }
    .article-hero > .google-auto-placed,
    .article-hero > ins.adsbygoogle,
    .article-hero > .adsbygoogle,
    .article-hero > [class*="adsbygoogle"]{
      margin: 10px 0 14px !important;
      min-height: 0 !important;
      max-width: 100%;
      align-self: stretch;
    }
    .article .kicker{font-family: var(--sans); color: var(--muted); font-size: 13px}
    .article h1{
      font-family: var(--sans);
      margin: 6px 0 10px;
      font-size: 30px;
      letter-spacing: -.4px;
      line-height: 1.15;
    }
    .article .lead{
      font-family: var(--sans);
      margin:0 0 14px;
      color: var(--muted);
      font-size: 17px;
    }
    .byline{
      font-family: var(--sans);
      display:flex; flex-wrap:wrap; gap:10px;
      color: var(--muted);
      font-size: 13px;
      margin-bottom: 14px;
    }
    .toc{
      font-family: var(--sans);
      border:1px solid var(--border);
      border-radius: var(--r2);
      padding: 12px;
      background: rgba(80,144,192,.06);
      margin: 14px 0 18px;
    }
    .toc strong{display:block; margin-bottom: 8px}
    .toc a{display:block; padding: 6px 8px; border-radius: 10px; color: var(--muted)}
    .toc a:hover{background: rgba(80,144,192,.10); color: var(--text)}
    .article h2{font-family: var(--sans); margin: 24px 0 10px; font-size: 20px}
    .article p{margin:0 0 12px; font-size: 18px; color: var(--text)}
    .note{
      font-family: var(--sans);
      border-left: 4px solid rgba(80,144,192,.8);
      background: rgba(80,144,192,.06);
      padding: 12px 12px;
      border-radius: 10px;
      margin: 16px 0;
      color: var(--muted);
    }

    /* Drawer Ã  direita */
    .drawer-overlay{
      position: fixed; inset:0;
      background: rgba(0,0,0,.40);
      display:none;
      z-index: 80;
    }
    .drawer{
      position: fixed;
      top:0; right:0;
      height:100%;
      width: min(360px, 86vw);
      background: var(--surface);
      border-left: 1px solid var(--border);
      box-shadow: var(--shadow);
      transform: translateX(102%);
      transition: transform .18s ease;
      z-index: 90;
      display:flex;
      flex-direction:column;
    }
    .drawer.open{transform: translateX(0)}
    .drawer-overlay.open{display:block}
    .drawer-head{
      display:flex; align-items:center; justify-content:space-between; gap:10px;
      padding: 14px 14px;
      border-bottom: 1px solid var(--border);
    }
    .drawer-title{display:flex; align-items:center; gap:10px}
    .drawer-title img{height:38px; width:auto}
    .drawer-close{
      width: 42px; height: 38px;
      border-radius: 12px;
      padding:0;
      display:inline-grid;
      place-items:center;
    }
    .drawer-body{padding: 12px 14px 18px; overflow:auto}
    .drawer-search{
      display:flex; align-items:center; gap:10px;
      border:1px solid var(--border);
      background: rgba(80,144,192,.06);
      border-radius: 14px;
      padding: 10px 12px;
      margin-bottom: 12px;
    }
    .drawer-search input{width:100%; border:0; outline:0; background:transparent; color:var(--text); font-size:14px}
    .drawer-section{margin: 12px 0}
    .drawer-section h4{margin: 0 0 8px; font-size: 13px; color: var(--muted); letter-spacing:.2px}
    .drawer-links{display:flex; flex-direction:column; gap:8px}
    .drawer-links a{
      padding: 10px 12px;
      border-radius: 14px;
      border:1px solid var(--border);
      background: rgba(80,144,192,.05);
      color: var(--text);
      font-size: 14px;
    }
    .drawer-links a:hover{border-color: rgba(80,144,192,.45)}

    /* BotÃ£o voltar ao topo */
    .to-top{
      position: fixed;
      right: 18px;
      bottom: 18px;
      z-index: 70;
      width: 44px;
      height: 44px;
      border-radius: 14px;
      border: 1px solid var(--border);
      background: rgba(255,255,255,.92);
      box-shadow: var(--shadow);
      display:none;
      place-items:center;
      cursor:pointer;
    }
    .to-top:hover{border-color: rgba(80,144,192,.45)}
    .to-top svg{width:20px; height:20px}

    .dc-footer{
      margin-top:24px;
      border-top:1px solid var(--border);
      background: linear-gradient(180deg, rgba(80,144,192,.06), rgba(80,144,192,.02));
      color: var(--muted);
      padding: 18px 0 16px;
      font-size:13px;
    }
    .dc-footer__grid{
      display:grid;
      grid-template-columns: 1.2fr 1fr 1fr;
      gap:16px;
      align-items:start;
    }
    .dc-footer__brand{
      border:1px solid var(--border);
      border-radius:14px;
      background:var(--surface);
      box-shadow:var(--shadow);
      padding:12px;
    }
    .dc-footer__brand a{
      display:inline-flex;
      align-items:center;
      gap:10px;
      color:var(--text);
      font-weight:800;
      margin-bottom:8px;
    }
    .dc-footer__brand a img{
      height:42px;
      width:auto;
    }
    .dc-footer__brand p{
      margin:0;
      line-height:1.45;
    }
    .dc-footer__social{
      margin-top:10px;
      display:flex;
      flex-wrap:wrap;
      gap:8px;
    }
    .dc-footer__social a{
      color:var(--accent-2);
      text-decoration:none;
      font-weight:700;
      border:1px solid var(--border);
      border-radius:999px;
      padding:6px 10px;
      background:rgba(80,144,192,.08);
    }
    .dc-footer__social a:hover{
      color:var(--text);
      border-color:rgba(80,144,192,.45);
      background:rgba(80,144,192,.14);
    }
    .dc-footer__nav{
      border:1px solid var(--border);
      border-radius:14px;
      background:var(--surface);
      box-shadow:var(--shadow);
      padding:12px;
      display:flex;
      flex-direction:column;
      gap:8px;
    }
    .dc-footer__nav h4{
      margin:0 0 2px;
      color:var(--text);
      font-size:13px;
      letter-spacing:.2px;
    }
    .dc-footer__nav a{
      color:var(--muted);
      text-decoration:none;
      padding:6px 8px;
      border-radius:10px;
      border:1px solid transparent;
    }
    .dc-footer__nav a:hover{
      color:var(--text);
      border-color:var(--border);
      background:rgba(80,144,192,.08);
    }
    .dc-footer__bottom{
      margin-top:12px;
      padding-top:10px;
      border-top:1px dashed var(--border);
      display:flex;
      flex-wrap:wrap;
      align-items:center;
      justify-content:space-between;
      gap:10px;
    }
    .dc-footer__bottom a{
      color:var(--accent-2);
      font-weight:700;
      text-decoration:none;
    }
    .dc-footer__bottom a:hover{text-decoration:underline}

    @media (min-width: 960px){
      .nav{display:flex}
      .grid{grid-template-columns: minmax(0, 1fr) 252px}
      .sidebar-right{display:block}
      .feed-row,
      .row{grid-template-columns: 1fr}
      .date-col{font-family: var(--mono); color: var(--muted); font-size: 12px; padding-top: 2px}
    }

    @media (max-width: 959px){
      .dc-footer__grid{grid-template-columns: 1fr 1fr}
      .dc-footer__brand{grid-column: 1 / -1}
    }

@media (max-width: 520px){
      .search-go{display:none}
      .mini-bar{height:22px}

      form.search.open{
        width:min(62vw, 250px);
        min-width:140px;
      }
      .brand img{height: 36px}
      .feed-head{flex-direction:column; align-items:stretch; margin-bottom:4px}
      .filters{width:100%; justify-content:stretch}
      .select{width:100%}
      .dc-footer{padding:14px 0 12px}
      .dc-footer__grid{grid-template-columns:1fr; gap:10px}
      .dc-footer__bottom{margin-top:10px; padding-top:8px}
    }

/* Extras do tema */
.article-wrap{display:block}
.article-content h2[id]{scroll-margin-top:130px}
.article,
.article-content,
.article-content p,
.article-content h2,
.article h1,
.article-content li,
.article-content a,
.mini-toc a{
  overflow-wrap:anywhere;
  word-break:break-word;
  min-width:0;
}
.article table,
.article table td,
.article table th{
  overflow-wrap:normal;
  word-break:normal;
}
/* Tabelas de paginas de resumo: coluna # e coluna Link com largura fixa e sem quebra */
.article table td:first-child,
.article table th:first-child,
.article .wp-block-table table td:first-child,
.article .wp-block-table table th:first-child{
  width:96px;
  min-width:96px;
  max-width:96px;
  white-space:nowrap;
  text-align:center;
  font-variant-numeric:tabular-nums;
}
.article table td:last-child,
.article table th:last-child,
.article .wp-block-table table td:last-child,
.article .wp-block-table table th:last-child{
  width:170px;
  min-width:170px;
  max-width:170px;
  white-space:nowrap;
  text-align:center;
}
.article table td:last-child a,
.article .wp-block-table table td:last-child a{
  white-space:nowrap !important;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  max-width:100%;
}
.article h1{
  font-size:clamp(30px, 6.2vw, 42px);
  line-height:1.12;
  white-space:normal;
  hyphens:auto;
}
.article-content img,
.article-content figure img{
  max-width:100%;
  height:auto;
  display:block;
}
.article-content iframe,
.article-content video,
  .article-content table,
  .article-content .wp-block-table{
    display:block;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
  }
.article-content code{
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}
.article-content .alignwide,
.article-content .alignfull{
  max-width:100% !important;
  margin-left:0 !important;
  margin-right:0 !important;
}
.article-content [style*="width"],
.article-content [width]{
  max-width:100% !important;
  width:auto !important;
  height:auto !important;
}
.article-content [style*="min-width"]{
  min-width:0 !important;
}
.article-content [style*="max-width"]{
  max-width:100% !important;
}
.article-content figure,
.article-content .wp-block-image,
.article-content .wp-block-embed{
  max-width:100% !important;
  width:100% !important;
  margin-left:0 !important;
  margin-right:0 !important;
}
.article-content .wp-caption{
  max-width:100% !important;
  width:fit-content !important;
  margin-left:0 !important;
  margin-right:0 !important;
}
.article-content .wp-caption img{
  display:block;
  margin:0;
}
.article-content .wp-caption .wp-caption-text{
  display:block;
  margin-top:8px;
  line-height:1.45;
  text-align:left;
  color:var(--muted);
  font-size:13px;
  font-family:var(--sans);
}
.article-content .aligncenter{
  margin-left:auto !important;
  margin-right:auto !important;
}
.article-content .aligncenter .wp-caption-text{
  text-align:center;
}
.article-content .alignleft{
  float:left;
  margin:6px 16px 10px 0 !important;
}
.article-content .alignright{
  float:right;
  margin:6px 0 10px 16px !important;
}
.article-content::after{
  content:"";
  display:block;
  clear:both;
}
.article-content *,
.article-content *::before,
.article-content *::after{
  box-sizing:border-box;
}
.article-content :where(
  img,
  video,
  iframe,
  embed,
  object,
  canvas,
  svg,
  table,
  figure,
  .wp-caption,
  .wp-block-image,
  .wp-block-embed,
  .wp-block-table
){
  max-width:100% !important;
}
.article-content :where(img, video, iframe, embed, object, canvas, svg){
  width:auto !important;
  height:auto !important;
  display:block;
  margin-left:auto;
  margin-right:auto;
}
.article-content :where(
  p, li, a, span, strong, em, b, i, small,
  h1, h2, h3, h4, h5, h6
){
  white-space:normal !important;
  overflow-wrap:anywhere;
  word-break:break-word;
}
.mini-toc{
  margin:14px 0 16px;
  padding:12px 14px;
  border:1px solid var(--border);
  border-radius:12px;
  background:#fff;
}
.mini-toc strong{display:block; margin-bottom:8px; font-family:var(--sans)}
.mini-toc a{display:block; margin:4px 0; color:var(--accent-2); text-decoration:none; font-family:var(--sans); font-size:14px}
.mini-toc a:hover{text-decoration:underline}
.mini-toc a{overflow-wrap:anywhere}
.dc-post-tags{
  margin:18px 0 8px;
  padding-top:14px;
  border-top:1px solid var(--border);
  font-family:var(--sans);
}
.dc-post-tags strong{
  display:block;
  margin-bottom:10px;
}
.dc-post-tags__list{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.dc-lock-badge{
  display:inline-flex;
  align-items:center;
  gap:4px;
  border:1px solid var(--border);
  border-radius:999px;
  padding:2px 8px;
  font-size:11px;
  font-weight:700;
  color:var(--accent-2);
  background:rgba(47,125,50,.09);
}
.featured{
  margin:0 0 16px;
  padding:10px;
  border:1px solid var(--border);
  border-radius:14px;
  background:#fff;
  overflow:visible;
}
.dc-featured-top{
  display:flex;
  flex-direction:column;
  align-items:center;
}
.featured-tag{
  display:inline-block;
  margin:0 0 8px;
  padding:4px 10px;
  border-radius:999px;
  border:1px solid var(--border);
  font-family:var(--sans);
  font-size:12px;
  color:var(--muted);
  background:#f8faf8;
}
.featured img,.dc-featured-inline-image{
  width:auto;
  max-width:100%;
  height:auto;
  border-radius:10px;
  border:1px solid var(--border);
  display:block;
  object-fit:contain;
  object-position:center center;
  margin:0 auto;
}
.featured figcaption{
  margin-top:8px;
  color:var(--muted);
  font-size:13px;
  line-height:1.4;
  font-family:var(--sans);
}
.page-numbers{display:flex; flex-wrap:wrap; gap:8px; list-style:none; padding:0; margin:0}
.page-numbers li{list-style:none}
.page-numbers a,.page-numbers span{display:inline-flex; align-items:center; justify-content:center; min-width:34px; height:34px; border-radius:10px; border:1px solid var(--border); padding:0 10px; background:var(--surface)}
.page-numbers .current{background:rgba(80,144,192,.12); border-color:rgba(80,144,192,.55)}
.article-content p{margin:0 0 12px; font-size:18px; color:var(--text)}

.nav-home,
.subbar__row .pill:first-child{
  background:transparent;
}
.nav-home.active,
.subbar__row .pill:first-child.active{
  background:transparent;
  border-color:var(--border);
  color:var(--muted);
}
.nav-home:hover,
.subbar__row .pill:first-child:hover{
  color:var(--text);
  border-color:rgba(80,144,192,.45);
  background:rgba(80,144,192,.08);
}

.soon-hint{
  position:fixed;
  left:0;
  top:0;
  z-index:90;
  background:rgba(16,32,22,.86);
  color:#fff;
  border-radius:999px;
  padding:6px 10px;
  font-size:12px;
  font-family:var(--sans);
  box-shadow: var(--shadow);
  pointer-events:none;
  transform: translate(-50%, -100%);
}

/* Blindagem global para nao quebrar layout em telas pequenas */
@media (max-width: 768px){
  html, body{
    overflow-x:hidden;
  }
  .main,
  .grid,
  .box,
  .box__body,
  .article-wrap,
  .article,
  .article-content{
    min-width:0;
    max-width:100%;
    overflow-x:hidden;
  }
  .featured,
  .featured img,
  .dc-featured-inline-image{
    max-width:100% !important;
    width:auto !important;
    max-width:100% !important;
    height:auto !important;
  }
  .article-content img,
  .article-content figure img,
  .article-content iframe,
  .article-content video,
  .article-content table{
    max-width:100% !important;
  }
  .article-content p,
  .article-content li{
    text-align:left !important;
    word-spacing:normal !important;
    letter-spacing:normal !important;
  }
  .article-content .wp-block-columns{
    display:flex;
    flex-wrap:wrap !important;
    gap:12px;
  }
  .article-content .wp-block-column{
    flex:1 1 100% !important;
    min-width:0 !important;
    width:100% !important;
  }
  .article-content [class*="wp-container"]{
    min-width:0 !important;
    max-width:100% !important;
  }
.article-content table{
  display:block;
  overflow-x:auto;
}

/* Tabelas de listagem (paginas de resumos): primeira coluna numerica mais larga */
.article table td:first-child,
.article table th:first-child,
.article .wp-block-table table td:first-child,
.article .wp-block-table table th:first-child{
  width:96px !important;
  min-width:96px !important;
  max-width:96px !important;
  white-space:nowrap !important;
  overflow-wrap:normal !important;
  word-break:keep-all !important;
  font-variant-numeric: tabular-nums;
  text-align:center;
  padding-left:10px;
  padding-right:10px;
}
.article table td:last-child,
.article table th:last-child,
.article .wp-block-table table td:last-child,
.article .wp-block-table table th:last-child{
  width:170px !important;
  min-width:170px !important;
  max-width:170px !important;
  white-space:nowrap !important;
  overflow-wrap:normal !important;
  word-break:keep-all !important;
  text-align:center;
  padding-left:10px;
  padding-right:10px;
}
.article table td:last-child a,
.article .wp-block-table table td:last-child a{
  white-space:nowrap !important;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  max-width:100%;
}

/* Ajuste estrutural de tabelas no mobile (resumos atuais e futuros) */
.article table,
.article .wp-block-table table{
  width:100% !important;
}
.article table th,
.article table td,
.article .wp-block-table table th,
.article .wp-block-table table td{
  padding:10px 8px !important;
  vertical-align:top;
}
.article table td:first-child,
.article table th:first-child,
.article .wp-block-table table td:first-child,
.article .wp-block-table table th:first-child{
  width:56px !important;
  min-width:56px !important;
  max-width:56px !important;
}
.article table td:last-child,
.article table th:last-child,
.article .wp-block-table table td:last-child,
.article .wp-block-table table th:last-child{
  width:124px !important;
  min-width:124px !important;
  max-width:124px !important;
}
.article table td:nth-child(2),
.article table th:nth-child(2),
.article .wp-block-table table td:nth-child(2),
.article .wp-block-table table th:nth-child(2){
  overflow-wrap:anywhere !important;
  word-break:break-word !important;
}
.article table td:last-child a,
.article .wp-block-table table td:last-child a,
.article table td:last-child .btn,
.article .wp-block-table table td:last-child .btn{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  padding:8px 10px !important;
  font-size:14px !important;
  box-sizing:border-box;
}
}

@media (max-width: 720px){
  .article-content .alignleft,
  .article-content .alignright{
    float:none;
    margin-left:auto !important;
    margin-right:auto !important;
  }
  .topbar__row{gap:6px}
  .brand{flex:1 1 auto; min-width:0}
  .tools{gap:6px; flex:0 0 auto; min-width:auto}
  .brand-mark{
    width:30px;
    height:30px;
    border-radius:10px;
    font-size:16px;
  }
  .brand-name{
    max-width:none;
    overflow:visible;
    text-overflow:clip;
    white-space:nowrap;
  }
  form.search{
    width:36px;
    min-height:34px;
    padding:6px;
    gap:0;
    justify-content:center;
    cursor:pointer;
    overflow:hidden;
    transition: width .18s ease, padding .18s ease;
    background: var(--surface);
    position: relative;
    z-index: 65;
  }
  form.search.open{
    width:min(64vw, 260px);
    min-width:150px;
    padding:6px 8px;
    gap:6px;
    justify-content:flex-start;
    cursor:text;
    box-shadow: var(--shadow);
  }
  form.search input{
    display:none;
  }
  form.search.open input{
    display:block;
  }
  form.search svg{
    width:18px;
    height:18px;
    flex:0 0 18px;
  }
  .search-go{display:none}
  .icon-btn,.hamb{width:36px; height:34px}
  .icon-btn svg{width:16px; height:16px}
  .hamb svg{width:18px; height:18px}
  .subbar__row{gap:8px}
  .article-wrap{padding:14px 12px}
  .article h1{font-size:clamp(24px, 8.2vw, 36px)}
  .article-content p{font-size:16px}
  .dc-footer{
    padding:10px 0 8px;
  }
  .dc-footer__grid{
    grid-template-columns:1fr;
    gap:8px;
  }
  .dc-footer__brand,
  .dc-footer__nav{
    border-radius:12px;
    padding:10px;
  }
  .dc-footer__social{gap:6px}
  .dc-footer__social a{
    padding:5px 9px;
    font-size:12px;
  }
  .dc-footer__nav{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:6px 8px;
  }
  .dc-footer__nav h4{
    grid-column:1 / -1;
    margin:0 0 2px;
  }
  .dc-footer__nav a{
    padding:8px 9px;
    border:1px solid var(--border);
    background:rgba(80,144,192,.06);
    border-radius:10px;
    font-size:13px;
  }
  .dc-footer__bottom{
    margin-top:8px;
    padding-top:8px;
    gap:6px;
    font-size:12px;
  }
}

@media (max-width: 430px){
  .brand-name{max-width:none}
  .container{padding:0 10px}
  .pill{padding:7px 9px; font-size:12px}
}

@media (max-width: 1440px){
  .nav{
    gap:4px;
    margin-left:4px;
    flex-wrap:nowrap;
  }
  .nav a{
    padding:7px 8px;
    font-size:13px;
  }
  .user-chip-desktop{
    max-width:130px;
  }
}

@media (max-width: 1320px){
  form.search.open{
    width:min(42vw, 300px);
    min-width:0;
    padding:6px 8px;
    gap:6px;
    justify-content:flex-start;
    cursor:text;
    box-shadow: var(--shadow);
  }
  .search-go{display:none}
  .mini-bar{height:22px}
  .icon-btn,.hamb{width:36px; height:34px}
  .icon-btn svg{width:16px; height:16px}
  .hamb svg{width:18px; height:18px}
  .user-chip-desktop{
    max-width:120px;
    font-size:12px;
    padding:6px 9px;
  }
}

@media (max-width: 1180px){
  .nav-contact{display:none}
}

@media (max-width: 1060px){
  .nav-summaries{display:none}
}

@media (max-width: 980px){
  .nav-categories{display:none}
}

@media (max-width: 900px){
  .nav{display:none}
  .user-chip-desktop{display:none}
  .user-chip-mobile{
    display:inline-flex;
    max-width:112px;
    font-size:12px;
    padding:6px 9px;
  }
  .mini-bar{display:none}
}

@media (min-width: 901px){
  form.search.open{
    position:absolute;
    top:50%;
    right:96px;
    transform:translateY(-50%);
    width:min(30vw, 340px);
    min-width:180px;
    z-index:80;
  }
}

/* Page: Entrar */
.dc-login-shell .box__body{
  padding:18px;
}
.dc-login-title{
  margin:0 0 8px;
  font-size:clamp(28px, 5.2vw, 38px);
  line-height:1.1;
  letter-spacing:-.4px;
}
.dc-login-lead{
  margin:0 0 16px;
  color:var(--muted);
  font-size:16px;
}
.dc-login-grid{
  display:grid;
  grid-template-columns: 1.15fr .85fr;
  gap:14px;
  align-items:stretch;
}
.dc-login-panel,
.dc-login-benefits{
  border:1px solid var(--border);
  border-radius:14px;
  background:#fff;
  padding:14px;
  height:100%;
}
.dc-login-benefits{
  display:flex;
  flex-direction:column;
}
.dc-login-form{
  display:grid;
  gap:12px;
}
.dc-field{
  display:grid;
  gap:6px;
}
.dc-field label{
  font-size:13px;
  color:var(--text);
  font-weight:700;
}
.dc-field input{
  width:100%;
  border:1px solid var(--border);
  border-radius:10px;
  padding:11px 12px;
  background:#fff;
  color:var(--text);
  font-size:15px;
  outline:0;
}
.dc-field input:focus{
  border-color:rgba(80,144,192,.55);
  box-shadow:0 0 0 3px rgba(80,144,192,.14);
}
.dc-login-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:10px;
}
.dc-login-row a{
  color:var(--accent-2);
  text-decoration:none;
  font-size:13px;
  font-weight:700;
}
.dc-login-row a:hover{
  text-decoration:underline;
}
.dc-remember{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:var(--muted);
  font-size:13px;
}
.dc-login-btn{
  justify-content:center;
  font-weight:800;
  background:linear-gradient(135deg, #2f7d32, #2b9443);
  color:#fff;
  border-color:transparent;
}
.dc-login-btn:hover{
  filter:brightness(1.04);
}
.dc-login-help{
  margin:12px 0 0;
  color:var(--muted);
  font-size:13px;
}
.dc-login-help a{
  color:var(--accent-2);
  font-weight:700;
  text-decoration:none;
}
.dc-login-help a:hover{
  text-decoration:underline;
}
.dc-login-benefits h3{
  margin:0 0 10px;
  font-size:16px;
}
.dc-login-benefits ul{
  margin:0;
  padding-left:18px;
  display:grid;
  gap:6px;
  color:var(--muted);
  font-size:14px;
  line-height:1.4;
  flex:1 1 auto;
}
.dc-login-note{
  margin-top:auto;
  padding-top:8px;
  border-top:1px dashed var(--border);
  color:var(--muted);
  font-size:13px;
  line-height:1.35;
}
.dc-login-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}

@media (max-width: 720px){
  .dc-login-grid{
    grid-template-columns:1fr;
  }
}

/* Page: Cadastro */
.dc-signup-shell .dc-login-btn{
  background:linear-gradient(135deg, #0b3d2e, #2f7d32);
}
.dc-signup-form{
  gap:14px;
}
.dc-login-grid-single{
  grid-template-columns: minmax(0, 760px);
}
.dc-field-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.dc-helper{
  display:block;
  margin-top:6px;
  color:var(--muted);
  font-size:12px;
}
.dc-helper-inline{
  margin-top:-6px;
  margin-bottom:2px;
}
.dc-check-stack{
  display:grid;
  gap:8px;
  margin-top:-2px;
}
.dc-alert{
  margin:0 0 14px;
  border:1px solid var(--border);
  border-radius:12px;
  padding:12px 13px;
  font-size:14px;
}
.dc-alert strong{
  display:block;
  margin-bottom:6px;
}
.dc-alert p{
  margin:0;
  color:var(--text);
}
.dc-alert ul{
  margin:6px 0 0;
  padding-left:18px;
}
.dc-alert-error{
  border-color:rgba(176,40,40,.28);
  background:rgba(176,40,40,.06);
}
.dc-alert-success{
  border-color:rgba(47,125,50,.34);
  background:rgba(47,125,50,.08);
}
.dc-alert-info{
  border-color:rgba(80,144,192,.34);
  background:rgba(80,144,192,.08);
}
.dc-alert .btn{
  margin-top:8px;
}

@media (max-width: 720px){
  .dc-field-grid{
    grid-template-columns:1fr;
  }
}

/* Single: Engajamento */
.dc-engage{
  margin-top:20px;
  border:1px solid var(--border);
  border-radius:14px;
  background:#fff;
  padding:14px;
}
.dc-engage__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
  margin-bottom:12px;
}
.dc-engage__head h3{
  margin:0;
  font-size:20px;
}
.dc-engage__actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  align-items:center;
}
.dc-share-btn,
.dc-like-btn{
  border:1px solid var(--border);
  border-radius:999px;
  padding:8px 12px;
  background:#fff;
  color:var(--text);
  font-size:13px;
  font-weight:700;
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  line-height:1.15;
}
.dc-share-btn .dc-share-ico{
  font-size:14px;
  opacity:.9;
}
.dc-share-btn:hover,
.dc-like-btn:hover{
  border-color:rgba(80,144,192,.55);
  background:rgba(80,144,192,.08);
}
.dc-like-btn.is-liked{
  border-color:rgba(47,125,50,.45);
  background:rgba(47,125,50,.12);
  color:var(--accent-2);
}

.dc-comments{
  margin-top:8px;
  padding-top:12px;
  border-top:1px dashed var(--border);
}
.dc-comments h4{
  margin:0 0 10px;
  font-size:18px;
}
.dc-comment-empty{
  margin:0 0 12px;
  color:var(--muted);
}
.dc-comment-list{
  margin:0 0 10px;
  padding-left:0;
  display:grid;
  gap:8px;
  list-style:none;
}
.dc-comment-list li{
  margin:0;
  padding:0;
  border:0;
}
.dc-comment-title{
  margin:12px 0 8px;
  font-size:16px;
}
.dc-must-log-in{
  margin:0;
  color:var(--text);
  line-height:1.6;
}
.dc-comment-login-link{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-left:4px;
  padding:4px 12px;
  border:1px solid rgba(47,125,50,.28);
  border-radius:999px;
  background:rgba(47,125,50,.12);
  color:var(--accent-2);
  font-family:var(--sans);
  font-size:14px;
  font-weight:800;
  text-decoration:none;
  box-shadow:0 1px 0 rgba(16,32,22,.06);
  transition:background .18s ease, border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}
.dc-comment-login-link:hover,
.dc-comment-login-link:focus{
  background:rgba(47,125,50,.18);
  border-color:rgba(47,125,50,.45);
  text-decoration:none;
  transform:translateY(-1px);
}
.dc-comment-login-link:focus{
  outline:0;
  box-shadow:0 0 0 3px rgba(47,125,50,.16);
}
.dc-logged-in-as{
  margin:0 0 8px;
  color:var(--muted);
  font-size:13px;
  font-family:var(--sans);
}
.dc-logged-in-as a{
  color:var(--accent-2);
  font-weight:700;
  text-decoration:none;
}
.dc-logged-in-as a:hover{
  text-decoration:underline;
}
.dc-author-link{
  color:var(--accent-2);
  text-decoration:none;
}
.dc-author-link:hover{
  text-decoration:underline;
}

.dc-comment-card{
  border:1px solid var(--border);
  border-radius:10px;
  background:#fafdf9;
  padding:10px;
}
.dc-comment-meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-bottom:8px;
}
.dc-comment-author{
  font-family:var(--sans);
  font-size:14px;
}
.dc-comment-date{
  color:var(--muted);
  font-size:12px;
  font-family:var(--sans);
}
.dc-comment-text{
  font-size:15px;
}
.dc-comment-text p:last-child{
  margin-bottom:0;
}
.dc-comment-votes{
  margin-top:10px;
  display:flex;
  gap:8px;
}
.dc-comment-vote-btn{
  border:1px solid var(--border);
  border-radius:999px;
  padding:6px 10px;
  background:#fff;
  color:var(--text);
  font-size:13px;
  font-weight:700;
  cursor:pointer;
}
.dc-comment-vote-btn:hover{
  border-color:rgba(80,144,192,.55);
  background:rgba(80,144,192,.08);
}
.dc-comment-vote-btn.is-voted{
  border-color:rgba(47,125,50,.45);
  background:rgba(47,125,50,.12);
  color:var(--accent-2);
}

.dc-related-head{
  margin-bottom:10px;
  padding:10px 12px;
  border:1px solid var(--border);
  border-radius:12px;
  background:linear-gradient(140deg, rgba(47,125,50,.09), rgba(80,144,192,.08));
}
.dc-related-head h3{
  margin:0;
  font-size:18px;
}
.dc-related-head p{
  margin:4px 0 0;
  color:var(--muted);
  font-size:13px;
  font-family:var(--sans);
}
.dc-related-block{
  margin-top:16px;
}

.dc-category-hero{
  margin:0 0 12px;
  padding:12px 14px;
  border:1px solid var(--border);
  border-radius:12px;
  background:linear-gradient(140deg, rgba(80,144,192,.12), rgba(47,125,50,.08));
}
.dc-category-hero h2{
  margin:0;
  font-size:18px;
  letter-spacing:-.2px;
}
.dc-category-hero p{
  margin:5px 0 0;
  color:var(--muted);
  font-size:14px;
  font-family:var(--sans);
}

.dc-author-hero{
  margin:0 0 12px;
  padding:12px 14px;
  border:1px solid var(--border);
  border-radius:12px;
  background:linear-gradient(140deg, rgba(80,144,192,.12), rgba(47,125,50,.08));
  display:flex;
  align-items:center;
  gap:12px;
}
.dc-author-hero__avatar img{
  width:76px;
  height:76px;
  border-radius:999px;
  border:1px solid var(--border);
  background:var(--surface);
}
.dc-author-hero__content h1{
  margin:0;
  font-size:22px;
  line-height:1.1;
}
.dc-author-hero__content p{
  margin:5px 0 0;
  color:var(--muted);
  font-size:14px;
  font-family:var(--sans);
}
.dc-author-hero__content span{
  display:inline-block;
  margin-top:8px;
  padding:4px 8px;
  border:1px solid var(--border);
  border-radius:999px;
  background:rgba(80,144,192,.10);
  color:var(--text);
  font-size:12px;
  font-family:var(--sans);
}

.dc-sidebar-head{
  margin:0 0 10px;
  padding:10px 12px;
  border:1px solid var(--border);
  border-radius:12px;
  background:linear-gradient(140deg, rgba(47,125,50,.08), rgba(80,144,192,.10));
}
.dc-sidebar-head h3{
  margin:0;
  font-size:18px;
}
.dc-sidebar-head p{
  margin:4px 0 0;
  color:var(--muted);
  font-size:12px;
  font-family:var(--sans);
  line-height:1.4;
}

@media (max-width: 720px){
  .dc-author-hero{
    align-items:flex-start;
  }
  .dc-author-hero__avatar img{
    width:64px;
    height:64px;
  }
  .dc-author-hero__content h1{
    font-size:20px;
  }
}

.comment-form{
  display:grid;
  gap:10px;
}
.comment-form p{
  margin:0;
}
.comment-form input[type="text"],
.comment-form input[type="email"],
.comment-form input[type="url"],
.comment-form textarea{
  width:100%;
  border:1px solid var(--border);
  border-radius:10px;
  padding:10px 12px;
  font-size:14px;
  font-family:var(--sans);
  color:var(--text);
  background:#fff;
}
.comment-form textarea{
  min-height:100px;
  resize:vertical;
}
.comment-form input:focus,
.comment-form textarea:focus{
  outline:0;
  border-color:rgba(80,144,192,.55);
  box-shadow:0 0 0 3px rgba(80,144,192,.14);
}
.dc-comment-submit{
  justify-self:start;
  border-radius:10px;
  border:0;
  background:linear-gradient(135deg, #2f7d32, #2b9443);
  color:#fff;
  font-weight:800;
  padding:10px 14px;
}


.dc-featured-top .dc-featured-inline-image{
  width:auto;
  max-width:100%;
  max-height:min(62vh, 540px);
  height:auto;
}


/* Mobile pass v2 */
.pagination-box{
  margin-top:12px;
}

@media (max-width: 900px){
  .drawer{
    width:min(92vw, 360px);
  }
  .drawer-body{
    padding:12px 14px 24px;
    overscroll-behavior:contain;
  }
  .subbar__row{
    gap:8px;
    padding:8px 0;
    scroll-snap-type:x proximity;
    scrollbar-width:none;
  }
  .subbar__row::-webkit-scrollbar{
    display:none;
  }
  .subbar__row .pill,
  .subbar__row .sep{
    scroll-snap-align:start;
  }
  .filters{
    width:100%;
    justify-content:stretch;
  }
  .select,
  .filters .btn{
    width:100%;
  }
  .featured{
    padding:8px;
  }
  .featured figcaption{
    font-size:12px;
    line-height:1.45;
  }
  .dc-engage__actions{
    width:100%;
  }
  .dc-share-btn,
  .dc-like-btn{
    flex:1 1 calc(50% - 6px);
    min-height:42px;
  }
  .dc-comment-meta{
    flex-direction:column;
    align-items:flex-start;
  }
  .dc-comment-votes{
    flex-wrap:wrap;
  }
  .dc-comment-submit{
    width:100%;
    justify-self:stretch;
    justify-content:center;
  }
}

@media (max-width: 720px){
  .main{
    padding:14px 0 22px;
  }
  .topbar__row{
    padding:10px 0;
    gap:6px;
  }
  .topbar__row.search-open .brand{
    display:none;
  }
  .topbar__row.search-open .tools{
    width:100%;
  }
  .topbar__row.search-open form.search.open{
    width:100%;
    min-width:0;
    flex:1 1 auto;
  }
  .brand img{
    height:34px;
  }
  .tools{
    flex-wrap:nowrap;
  }
  .feed-head h1{
    font-size:20px;
    line-height:1.15;
  }
  .feed-row,
  .row{
    padding:14px;
    gap:12px;
    border-radius:14px;
  }
  .feed-row-inner,
  .row-inner{
    gap:12px;
  }
  .feed-row-media,
  .row-media,
  .thumb{
    border-radius:14px;
  }
  .title{
    font-size:18px;
    line-height:1.25;
  }
  .excerpt{
    -webkit-line-clamp:2;
    line-height:1.55;
  }
  .article-wrap{
    padding:14px 12px;
    border-radius:14px;
  }
  .article h1{
    font-size:clamp(22px, 8vw, 34px);
    line-height:1.12;
  }
  .article h2{
    font-size:clamp(19px, 5.2vw, 24px);
    margin:22px 0 10px;
  }
  .article p,
  .article li{
    font-size:16px;
    line-height:1.68;
  }
  .article ul,
  .article ol{
    padding-left:20px;
  }
  .mini-toc{
    margin:12px 0 14px;
    padding:12px;
  }
  .dc-related-head,
  .dc-category-hero,
  .dc-author-hero,
  .dc-sidebar-head{
    padding:10px 12px;
  }
  .dc-related-head h3,
  .dc-sidebar-head h3{
    font-size:17px;
  }
  .dc-login-shell .box__body{
    padding:14px;
  }
  .dc-login-panel,
  .dc-login-benefits{
    padding:12px;
  }
  .dc-login-actions{
    display:grid;
    grid-template-columns:1fr;
  }
  .dc-login-actions .btn,
  .dc-login-btn{
    width:100%;
    justify-content:center;
  }
  .comment-form .comment-form-author,
  .comment-form .comment-form-email,
  .comment-form .comment-form-url,
  .comment-form .comment-form-cookies-consent{
    width:100%;
  }
}

@media (max-width: 520px){
  .container{
    padding:0 12px;
  }
  .topbar__row.search-open form.search.open{
    width:100%;
  }
  .article-content table,
  .article table,
  .article .wp-block-table table{
    font-size:14px;
    -webkit-overflow-scrolling:touch;
  }
  .article table td:first-child,
  .article table th:first-child,
  .article .wp-block-table table td:first-child,
  .article .wp-block-table table th:first-child{
    width:48px !important;
    min-width:48px !important;
    max-width:48px !important;
  }
  .article table td:last-child,
  .article table th:last-child,
  .article .wp-block-table table td:last-child,
  .article .wp-block-table table th:last-child{
    width:108px !important;
    min-width:108px !important;
    max-width:108px !important;
  }
  .dc-share-btn,
  .dc-like-btn{
    flex:1 1 100%;
  }
  .dc-footer__nav{
    grid-template-columns:1fr;
  }
  .dc-footer__bottom{
    flex-direction:column;
    align-items:flex-start;
  }
}

@media (max-width: 430px){
  .box__body{
    padding:12px;
  }
  .brand img{
    height:32px;
  }
  .pill{
    padding:7px 8px;
    font-size:11px;
  }
  .article-wrap{
    padding:12px 10px;
  }
  .dc-login-title{
    font-size:clamp(24px, 9vw, 32px);
  }
}

/* Mobile polish v3 */
html{
  -webkit-text-size-adjust:100%;
  scroll-padding-top:130px;
}
body{
  -webkit-tap-highlight-color: transparent;
}
.feed-row,
.row,
.article-wrap,
.box,
.featured,
.mini-toc,
.dc-engage{
  overflow:hidden;
}

@media (max-width: 900px){
  .topbar{
    background:rgba(255,255,255,.96);
    backdrop-filter:blur(16px);
  }
  .subbar{
    background:linear-gradient(180deg, rgba(80,144,192,.08), rgba(255,255,255,.82));
  }
  .pill,
  .btn,
  .drawer-links a,
  .mini-item,
  .dc-share-btn,
  .dc-like-btn,
  .dc-comment-vote-btn{
    min-height:42px;
  }
  .feed-row,
  .row,
  .box,
  .article-wrap{
    box-shadow:0 10px 22px rgba(23,34,53,.06);
  }
  .feed-row-media,
  .row-media{
    background:linear-gradient(180deg, rgba(80,144,192,.06), rgba(80,144,192,.02));
  }
  .drawer-links a{
    padding:12px 14px;
  }
}

@media (max-width: 720px){
  :root{
    --r:14px;
    --r2:10px;
  }
  .topbar{
    padding-top:env(safe-area-inset-top);
  }
  .subbar{
    margin-top:58px;
  }
  .subbar__row{
    padding:8px 0 10px;
  }
  .pill{
    min-height:38px;
    display:inline-flex;
    align-items:center;
  }
  .feed-head{
    margin-bottom:8px;
  }
  .feed-head .hint{
    font-size:12px;
    line-height:1.45;
  }
  .meta{
    gap:6px 8px;
  }
  .label,
  .dc-lock-badge{
    min-height:26px;
    display:inline-flex;
    align-items:center;
  }
  .continue{
    margin-top:8px;
    min-height:40px;
  }
  .article{
    max-width:100%;
  }
  .article .lead{
    font-size:15px;
    line-height:1.55;
  }
  .article-hero{
    gap:2px;
  }
  .article p,
  .article li{
    font-size:17px;
    line-height:1.75;
  }
  .article-content > p,
  .article-content > ul,
  .article-content > ol,
  .article-content > blockquote,
  .article-content > .wp-block-group,
  .article-content > .wp-block-image,
  .article-content > .wp-block-table{
    margin-bottom:14px;
  }
  .article blockquote,
  .article .wp-block-quote{
    margin:18px 0;
    padding:14px 14px 14px 16px;
    border-left:4px solid rgba(80,144,192,.6);
    background:rgba(80,144,192,.06);
    border-radius:12px;
  }
  .article blockquote p:last-child,
  .article .wp-block-quote p:last-child{
    margin-bottom:0;
  }
  .featured{
    margin-bottom:14px;
  }
  .mini-toc a{
    padding:6px 0;
    line-height:1.45;
  }
  .dc-post-tags__list{
    gap:6px;
  }
  .dc-post-tags .label{
    min-height:34px;
    padding:6px 10px;
    align-items:center;
  }
  .dc-engage{
    padding:12px;
    border-radius:12px;
  }
  .dc-engage__head h3{
    font-size:18px;
  }
  .dc-comments{
    margin-top:10px;
  }
  .dc-comment-card{
    padding:12px;
  }
  .dc-comment-text{
    font-size:14px;
    line-height:1.6;
  }
  .dc-comment-vote-btn{
    min-height:38px;
  }
  .dc-footer{
    padding:12px 0 calc(10px + env(safe-area-inset-bottom));
  }
  .dc-footer__brand p,
  .dc-footer__bottom{
    font-size:12px;
    line-height:1.5;
  }
}

@media (max-width: 520px){
  .topbar__row{
    min-height:54px;
  }
  form.search.open{
    border-radius:14px;
  }
  .feed-row,
  .row{
    padding:12px;
  }
  .title{
    font-size:17px;
  }
  .excerpt{
    font-size:13px;
  }
  .article h1{
    font-size:clamp(21px, 8.4vw, 30px);
  }
  .article h2{
    font-size:clamp(18px, 5.5vw, 22px);
  }
  .article p,
  .article li{
    font-size:16px;
    line-height:1.72;
  }
  .mini-toc{
    padding:10px 11px;
  }
}

@media (max-width: 380px){
  .user-chip-mobile{
    display:none;
  }
}

@media (max-width: 768px){
  .article-content table[id^="tabela-"]{
    display:table !important;
    width:100% !important;
    max-width:100% !important;
    table-layout:fixed !important;
  }
  .article-content table[id^="tabela-"] th,
  .article-content table[id^="tabela-"] td{
    padding:8px 6px !important;
    font-size:13px !important;
    vertical-align:top !important;
  }
  .article-content table[id^="tabela-"] th:first-child,
  .article-content table[id^="tabela-"] td:first-child{
    width:44px !important;
    min-width:44px !important;
    max-width:44px !important;
    padding-left:6px !important;
    padding-right:6px !important;
  }
  .article-content table[id^="tabela-"] th:last-child,
  .article-content table[id^="tabela-"] td:last-child{
    width:96px !important;
    min-width:96px !important;
    max-width:96px !important;
    padding-left:6px !important;
    padding-right:6px !important;
  }
  .article-content table[id^="tabela-"] th:nth-child(2),
  .article-content table[id^="tabela-"] td:nth-child(2){
    overflow-wrap:anywhere !important;
    word-break:break-word !important;
  }
  .article-content table[id^="tabela-"] a.resumo-btn,
  .article-content table[id^="tabela-"] td:last-child a{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    padding:8px 6px !important;
    font-size:12px !important;
    line-height:1.2 !important;
    white-space:normal !important;
    box-sizing:border-box !important;
  }
}

@media (max-width: 520px){
  .article-content table[id^="tabela-"] th,
  .article-content table[id^="tabela-"] td{
    padding:7px 5px !important;
    font-size:12px !important;
  }
  .article-content table[id^="tabela-"] th:first-child,
  .article-content table[id^="tabela-"] td:first-child{
    width:38px !important;
    min-width:38px !important;
    max-width:38px !important;
  }
  .article-content table[id^="tabela-"] th:last-child,
  .article-content table[id^="tabela-"] td:last-child{
    width:88px !important;
    min-width:88px !important;
    max-width:88px !important;
  }
  .article-content table[id^="tabela-"] a.resumo-btn,
  .article-content table[id^="tabela-"] td:last-child a{
    font-size:11px !important;
    padding:7px 5px !important;
  }
}

/* Ajustes finais para paginas de resumos no mobile */
.article-content table[id^="tabela-"] th,
.article-content table[id^="tabela-"] td{
  vertical-align:middle !important;
}

@media (max-width: 768px){
  .article-content input#filtro,
  .article-content input#filtro-afo{
    display:block;
    width:calc(100% + 28px) !important;
    max-width:none !important;
    margin-left:-14px !important;
    margin-right:-14px !important;
    padding:12px 14px !important;
    font-size:16px !important;
    border-radius:8px !important;
    box-sizing:border-box !important;
  }
}

@media (max-width: 430px){
  .article-content input#filtro,
  .article-content input#filtro-afo{
    width:calc(100% + 24px) !important;
    margin-left:-12px !important;
    margin-right:-12px !important;
  }
}

/* Padrao estrutural para todas as paginas de resumos */
.article-content table[id^="tabela-"],
.article-content table.tabela-resumos{
  width:100% !important;
  max-width:100% !important;
  table-layout:fixed !important;
}
.article-content table[id^="tabela-"] th,
.article-content table[id^="tabela-"] td,
.article-content table.tabela-resumos th,
.article-content table.tabela-resumos td{
  vertical-align:middle !important;
}
.article-content table[id^="tabela-"] th:first-child,
.article-content table[id^="tabela-"] td:first-child,
.article-content table.tabela-resumos th:first-child,
.article-content table.tabela-resumos td:first-child{
  width:68px !important;
  min-width:68px !important;
  max-width:68px !important;
  text-align:center !important;
}
.article-content table[id^="tabela-"] th:last-child,
.article-content table[id^="tabela-"] td:last-child,
.article-content table.tabela-resumos th:last-child,
.article-content table.tabela-resumos td:last-child{
  width:156px !important;
  min-width:156px !important;
  max-width:156px !important;
  text-align:center !important;
  padding-left:10px !important;
  padding-right:10px !important;
}
.article-content table[id^="tabela-"] th:nth-child(2),
.article-content table[id^="tabela-"] td:nth-child(2),
.article-content table.tabela-resumos th:nth-child(2),
.article-content table.tabela-resumos td:nth-child(2){
  overflow-wrap:anywhere !important;
  word-break:break-word !important;
}
.article-content table[id^="tabela-"] a.resumo-btn,
.article-content table[id^="tabela-"] td:last-child a,
.article-content table.tabela-resumos a.resumo-btn,
.article-content table.tabela-resumos td:last-child a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:110px !important;
  max-width:100% !important;
  box-sizing:border-box !important;
}
.article.dc-summary-page .article-content input[id^="filtro"],
.article.dc-summary-page .article-content input#filtroTabela{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  margin:12px 0 20px 0 !important;
  padding:12px 14px !important;
  font-size:15px !important;
  box-sizing:border-box !important;
}
body.page .article:has(.article-content table[id^="tabela-"]) h1,
body.page .article:has(.article-content table.tabela-resumos) h1{
  font-size:clamp(20px, 3.1vw, 34px) !important;
  line-height:1.1 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

@media (max-width: 768px){
  .article-content table[id^="tabela-"],
  .article-content table.tabela-resumos{
    display:table !important;
    width:100% !important;
    max-width:100% !important;
    table-layout:fixed !important;
  }
  .article.dc-summary-page .article-content input[id^="filtro"],
  .article.dc-summary-page .article-content input#filtroTabela{
    width:100% !important;
    max-width:100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
    padding:12px 14px !important;
    font-size:16px !important;
    border-radius:8px !important;
  }
  body.page .article:has(.article-content table[id^="tabela-"]) h1,
  body.page .article:has(.article-content table.tabela-resumos) h1{
    font-size:clamp(14px, 4.4vw, 22px) !important;
  }
}

@media (max-width: 520px){
  .article-content table[id^="tabela-"] th:first-child,
  .article-content table[id^="tabela-"] td:first-child,
  .article-content table.tabela-resumos th:first-child,
  .article-content table.tabela-resumos td:first-child{
    width:38px !important;
    min-width:38px !important;
    max-width:38px !important;
  }
  .article-content table[id^="tabela-"] th:last-child,
  .article-content table[id^="tabela-"] td:last-child,
  .article-content table.tabela-resumos th:last-child,
  .article-content table.tabela-resumos td:last-child{
    width:88px !important;
    min-width:88px !important;
    max-width:88px !important;
  }
  .article-content table[id^="tabela-"] a.resumo-btn,
  .article-content table[id^="tabela-"] td:last-child a,
  .article-content table.tabela-resumos a.resumo-btn,
  .article-content table.tabela-resumos td:last-child a{
    min-width:0 !important;
    width:100% !important;
    font-size:11px !important;
    padding:7px 5px !important;
    white-space:normal !important;
  }
}


body.page .article.dc-summary-page h1{
  font-size:clamp(20px, 3.1vw, 34px) !important;
  line-height:1.1 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

@media (max-width: 768px){
  body.page .article.dc-summary-page h1{
    font-size:clamp(14px, 4.4vw, 22px) !important;
  }
}

/* Campo de busca estrutural das paginas de resumo */
body.page .article .article-content:has(table[id^="tabela-"]) input[id^="filtro"],
body.page .article .article-content:has(table.tabela-resumos) input#filtroTabela{
  display:block !important;
  inline-size:100% !important;
  width:100% !important;
  min-width:100% !important;
  max-width:100% !important;
  margin:12px 0 20px 0 !important;
  padding:12px 14px !important;
  font-size:15px !important;
  box-sizing:border-box !important;
  float:none !important;
  clear:both !important;
}

@media (max-width: 768px){
  body.page .article .article-content:has(table[id^="tabela-"]) input[id^="filtro"],
  body.page .article .article-content:has(table.tabela-resumos) input#filtroTabela{
    inline-size:100% !important;
    width:100% !important;
    min-width:100% !important;
    max-width:100% !important;
    margin:12px 0 20px 0 !important;
    padding:12px 14px !important;
    font-size:16px !important;
    border-radius:8px !important;
  }
}

/* Tabelas estruturais das paginas de resumo */
body.page .article .article-content table[id^="tabela-"],
body.page .article .article-content table.tabela-resumos{
  display:table !important;
  inline-size:100% !important;
  width:100% !important;
  min-width:100% !important;
  max-width:100% !important;
  margin:20px 0 0 0 !important;
  table-layout:fixed !important;
  border-collapse:separate !important;
  border-spacing:0 !important;
  float:none !important;
  clear:both !important;
}

body.page .article .article-content table[id^="tabela-"] thead,
body.page .article .article-content table.tabela-resumos thead{
  display:table-header-group !important;
  width:100% !important;
}

body.page .article .article-content table[id^="tabela-"] tbody,
body.page .article .article-content table.tabela-resumos tbody{
  display:table-row-group !important;
  width:100% !important;
}

body.page .article .article-content table[id^="tabela-"] tr:not(.dc-filter-hidden),
body.page .article .article-content table.tabela-resumos tr:not(.dc-filter-hidden){
  display:table-row !important;
}
body.page .article .article-content table[id^="tabela-"] tr.dc-filter-hidden,
body.page .article .article-content table.tabela-resumos tr.dc-filter-hidden{
  display:none !important;
}

body.page .article .article-content table[id^="tabela-"] th,
body.page .article .article-content table[id^="tabela-"] td,
body.page .article .article-content table.tabela-resumos th,
body.page .article .article-content table.tabela-resumos td{
  box-sizing:border-box !important;
  vertical-align:middle !important;
}

body.page .article .article-content table[id^="tabela-"] th:first-child,
body.page .article .article-content table[id^="tabela-"] td:first-child,
body.page .article .article-content table.tabela-resumos th:first-child,
body.page .article .article-content table.tabela-resumos td:first-child{
  width:68px !important;
  min-width:68px !important;
  max-width:68px !important;
  text-align:center !important;
}

body.page .article .article-content table[id^="tabela-"] th:last-child,
body.page .article .article-content table[id^="tabela-"] td:last-child,
body.page .article .article-content table.tabela-resumos th:last-child,
body.page .article .article-content table.tabela-resumos td:last-child{
  width:156px !important;
  min-width:156px !important;
  max-width:156px !important;
  text-align:center !important;
}

body.page .article .article-content table[id^="tabela-"] th:nth-child(2),
body.page .article .article-content table[id^="tabela-"] td:nth-child(2),
body.page .article .article-content table.tabela-resumos th:nth-child(2),
body.page .article .article-content table.tabela-resumos td:nth-child(2){
  overflow-wrap:anywhere !important;
  word-break:break-word !important;
}

body.page .article .article-content table[id^="tabela-"] a.resumo-btn,
body.page .article .article-content table[id^="tabela-"] td:last-child a,
body.page .article .article-content table.tabela-resumos a.resumo-btn,
body.page .article .article-content table.tabela-resumos td:last-child a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  inline-size:100% !important;
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
  box-sizing:border-box !important;
  white-space:normal !important;
}

@media (max-width: 768px){
  body.page .article .article-content table[id^="tabela-"],
  body.page .article .article-content table.tabela-resumos{
    display:table !important;
    inline-size:100% !important;
    width:100% !important;
    min-width:100% !important;
    max-width:100% !important;
    margin:18px 0 0 0 !important;
    table-layout:fixed !important;
  }

  body.page .article .article-content table[id^="tabela-"] th,
  body.page .article .article-content table[id^="tabela-"] td,
  body.page .article .article-content table.tabela-resumos th,
  body.page .article .article-content table.tabela-resumos td{
    padding:9px 8px !important;
    font-size:13px !important;
  }
}

@media (max-width: 520px){
  body.page .article .article-content table[id^="tabela-"] th:first-child,
  body.page .article .article-content table[id^="tabela-"] td:first-child,
  body.page .article .article-content table.tabela-resumos th:first-child,
  body.page .article .article-content table.tabela-resumos td:first-child{
    width:38px !important;
    min-width:38px !important;
    max-width:38px !important;
  }

  body.page .article .article-content table[id^="tabela-"] th:last-child,
  body.page .article .article-content table[id^="tabela-"] td:last-child,
  body.page .article .article-content table.tabela-resumos th:last-child,
  body.page .article .article-content table.tabela-resumos td:last-child{
    width:88px !important;
    min-width:88px !important;
    max-width:88px !important;
  }

  body.page .article .article-content table[id^="tabela-"] a.resumo-btn,
  body.page .article .article-content table[id^="tabela-"] td:last-child a,
  body.page .article .article-content table.tabela-resumos a.resumo-btn,
  body.page .article .article-content table.tabela-resumos td:last-child a{
    font-size:11px !important;
    padding:7px 5px !important;
  }
}
/* Refino mobile das paginas de resumo sem mudar o layout da tabela */
@media (max-width: 768px){
  body.page .article:has(.article-content table[id^="tabela-"]) h1,
  body.page .article:has(.article-content table.tabela-resumos) h1,
  body.page .article.dc-summary-page h1{
    font-size:clamp(18px, 5.2vw, 24px) !important;
    line-height:1.15 !important;
  }

  body.page .article:has(.article-content table[id^="tabela-"]) h2,
  body.page .article:has(.article-content table.tabela-resumos) h2,
  body.page .article.dc-summary-page h2{
    font-size:clamp(18px, 4.6vw, 22px) !important;
    line-height:1.2 !important;
    margin:22px 0 10px !important;
  }

  body.page .article:has(.article-content table[id^="tabela-"]) .article-content > p,
  body.page .article:has(.article-content table[id^="tabela-"]) .article-content > ul,
  body.page .article:has(.article-content table[id^="tabela-"]) .article-content > ol,
  body.page .article:has(.article-content table.tabela-resumos) .article-content > p,
  body.page .article:has(.article-content table.tabela-resumos) .article-content > ul,
  body.page .article:has(.article-content table.tabela-resumos) .article-content > ol,
  body.page .article.dc-summary-page .article-content > p,
  body.page .article.dc-summary-page .article-content > ul,
  body.page .article.dc-summary-page .article-content > ol{
    font-size:16px !important;
    line-height:1.65 !important;
  }

  body.page .article .article-content table[id^="tabela-"],
  body.page .article .article-content table.tabela-resumos{
    display:table !important;
    inline-size:100% !important;
    width:100% !important;
    min-width:100% !important;
    max-width:100% !important;
    table-layout:fixed !important;
    margin:18px 0 0 0 !important;
  }

  body.page .article .article-content table[id^="tabela-"] th,
  body.page .article .article-content table[id^="tabela-"] td,
  body.page .article .article-content table.tabela-resumos th,
  body.page .article .article-content table.tabela-resumos td{
    padding:10px 8px !important;
    font-size:12.5px !important;
    line-height:1.35 !important;
    vertical-align:middle !important;
  }

  body.page .article .article-content table[id^="tabela-"] th:first-child,
  body.page .article .article-content table[id^="tabela-"] td:first-child,
  body.page .article .article-content table.tabela-resumos th:first-child,
  body.page .article .article-content table.tabela-resumos td:first-child{
    width:40px !important;
    min-width:40px !important;
    max-width:40px !important;
    padding-left:6px !important;
    padding-right:6px !important;
  }

  body.page .article .article-content table[id^="tabela-"] th:last-child,
  body.page .article .article-content table[id^="tabela-"] td:last-child,
  body.page .article .article-content table.tabela-resumos th:last-child,
  body.page .article .article-content table.tabela-resumos td:last-child{
    width:92px !important;
    min-width:92px !important;
    max-width:92px !important;
    padding-left:6px !important;
    padding-right:6px !important;
  }

  body.page .article .article-content table[id^="tabela-"] td:last-child a,
  body.page .article .article-content table.tabela-resumos td:last-child a{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    min-height:38px !important;
    padding:8px 6px !important;
    font-size:12px !important;
    line-height:1.2 !important;
    white-space:normal !important;
    border-radius:8px !important;
  }
}

@media (max-width: 420px){
  body.page .article:has(.article-content table[id^="tabela-"]) h1,
  body.page .article:has(.article-content table.tabela-resumos) h1,
  body.page .article.dc-summary-page h1{
    font-size:clamp(17px, 5.8vw, 21px) !important;
  }

  body.page .article:has(.article-content table[id^="tabela-"]) .article-content > p,
  body.page .article:has(.article-content table[id^="tabela-"]) .article-content > ul,
  body.page .article:has(.article-content table[id^="tabela-"]) .article-content > ol,
  body.page .article:has(.article-content table.tabela-resumos) .article-content > p,
  body.page .article:has(.article-content table.tabela-resumos) .article-content > ul,
  body.page .article:has(.article-content table.tabela-resumos) .article-content > ol,
  body.page .article.dc-summary-page .article-content > p,
  body.page .article.dc-summary-page .article-content > ul,
  body.page .article.dc-summary-page .article-content > ol{
    font-size:15px !important;
  }

  body.page .article .article-content table[id^="tabela-"] th,
  body.page .article .article-content table[id^="tabela-"] td,
  body.page .article .article-content table.tabela-resumos th,
  body.page .article .article-content table.tabela-resumos td{
    padding:8px 6px !important;
    font-size:11.5px !important;
  }

  body.page .article .article-content table[id^="tabela-"] th:first-child,
  body.page .article .article-content table[id^="tabela-"] td:first-child,
  body.page .article .article-content table.tabela-resumos th:first-child,
  body.page .article .article-content table.tabela-resumos td:first-child{
    width:36px !important;
    min-width:36px !important;
    max-width:36px !important;
  }

  body.page .article .article-content table[id^="tabela-"] th:last-child,
  body.page .article .article-content table[id^="tabela-"] td:last-child,
  body.page .article .article-content table.tabela-resumos th:last-child,
  body.page .article .article-content table.tabela-resumos td:last-child{
    width:82px !important;
    min-width:82px !important;
    max-width:82px !important;
  }

  body.page .article .article-content table[id^="tabela-"] td:last-child a,
  body.page .article .article-content table.tabela-resumos td:last-child a{
    min-height:36px !important;
    font-size:11px !important;
    padding:7px 5px !important;
  }
}


@media (max-width: 768px){
  body.page .article:has(.article-content table[id^="tabela-"]) .article-content,
  body.page .article:has(.article-content table.tabela-resumos) .article-content,
  body.page .article.dc-summary-page .article-content{
    font-size:16px !important;
    line-height:1.65 !important;
  }
}

@media (max-width: 420px){
  body.page .article:has(.article-content table[id^="tabela-"]) .article-content,
  body.page .article:has(.article-content table.tabela-resumos) .article-content,
  body.page .article.dc-summary-page .article-content{
    font-size:15px !important;
    line-height:1.6 !important;
  }
}

/* Blindagem final contra overflow horizontal nas paginas de resumo no mobile */
@media (max-width: 768px){
  body.page .article:has(.article-content table[id^="tabela-"]),
  body.page .article:has(.article-content table.tabela-resumos),
  body.page .article.dc-summary-page,
  body.page .article:has(.article-content table[id^="tabela-"]) .article-content,
  body.page .article:has(.article-content table.tabela-resumos) .article-content,
  body.page .article.dc-summary-page .article-content,
  body.page .article:has(.article-content table[id^="tabela-"]) .box__body,
  body.page .article:has(.article-content table.tabela-resumos) .box__body,
  body.page .article.dc-summary-page .box__body{
    inline-size:100% !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    overflow-x:hidden !important;
    box-sizing:border-box !important;
  }

  body.page .article:has(.article-content table[id^="tabela-"]) h1,
  body.page .article:has(.article-content table.tabela-resumos) h1,
  body.page .article.dc-summary-page h1{
    white-space:normal !important;
    overflow:visible !important;
    text-overflow:clip !important;
    overflow-wrap:anywhere !important;
    word-break:break-word !important;
    max-width:100% !important;
  }

  body.page .article:has(.article-content table[id^="tabela-"]) h2,
  body.page .article:has(.article-content table.tabela-resumos) h2,
  body.page .article.dc-summary-page h2,
  body.page .article:has(.article-content table[id^="tabela-"]) .article-content > p,
  body.page .article:has(.article-content table[id^="tabela-"]) .article-content > ul,
  body.page .article:has(.article-content table[id^="tabela-"]) .article-content > ol,
  body.page .article:has(.article-content table.tabela-resumos) .article-content > p,
  body.page .article:has(.article-content table.tabela-resumos) .article-content > ul,
  body.page .article:has(.article-content table.tabela-resumos) .article-content > ol,
  body.page .article.dc-summary-page .article-content > p,
  body.page .article.dc-summary-page .article-content > ul,
  body.page .article.dc-summary-page .article-content > ol{
    max-width:100% !important;
    min-width:0 !important;
    overflow-wrap:anywhere !important;
    word-break:break-word !important;
    box-sizing:border-box !important;
  }

  body.page .article .article-content:has(table[id^="tabela-"]) input[id^="filtro"],
  body.page .article .article-content:has(table.tabela-resumos) input#filtroTabela,
  body.page .article.dc-summary-page .article-content input[id^="filtro"],
  body.page .article.dc-summary-page .article-content input#filtroTabela{
    display:block !important;
    inline-size:100% !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
  }

  body.page .article .article-content table[id^="tabela-"],
  body.page .article .article-content table.tabela-resumos{
    inline-size:100% !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    table-layout:fixed !important;
    box-sizing:border-box !important;
  }

  body.page .article .article-content table[id^="tabela-"] th,
  body.page .article .article-content table[id^="tabela-"] td,
  body.page .article .article-content table.tabela-resumos th,
  body.page .article .article-content table.tabela-resumos td,
  body.page .article .article-content table[id^="tabela-"] td:last-child a,
  body.page .article .article-content table.tabela-resumos td:last-child a{
    max-width:100% !important;
    min-width:0 !important;
    overflow-wrap:anywhere !important;
    word-break:break-word !important;
    box-sizing:border-box !important;
  }
}

/* Ajuste fino do campo de filtro das paginas de resumo no mobile */
@media (max-width: 768px){
  body.page .article .article-content:has(table[id^="tabela-"]) input[id^="filtro"],
  body.page .article .article-content:has(table.tabela-resumos) input#filtroTabela,
  body.page .article.dc-summary-page .article-content input[id^="filtro"],
  body.page .article.dc-summary-page .article-content input#filtroTabela{
    inline-size:calc(100% - 4px) !important;
    width:calc(100% - 4px) !important;
    max-width:calc(100% - 4px) !important;
    min-width:0 !important;
    margin-left:2px !important;
    margin-right:2px !important;
    border:1px solid #cbd5e1 !important;
    border-radius:8px !important;
    box-sizing:border-box !important;
    -webkit-appearance:none !important;
    appearance:none !important;
    background-clip:padding-box !important;
  }
}

/* ── Painel Minha Conta ── */
.dc-account-actions{display:flex;align-items:center;gap:8px;margin-top:8px}

/* Estatísticas */
.dc-stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
@media(max-width:600px){.dc-stats-row{grid-template-columns:repeat(2,1fr)}}
.dc-stat-card{display:flex;flex-direction:column;align-items:center;gap:4px;padding:16px 12px;background:var(--bg2);border-radius:12px;text-align:center}
.dc-stat-icon{font-size:22px;line-height:1}
.dc-stat-value{font-size:22px;font-weight:600;color:var(--p);line-height:1.2}
.dc-stat-label{font-size:12px;color:var(--color-text-secondary);line-height:1.3}

/* Histórico de leitura */
.dc-history-list{display:flex;flex-direction:column;gap:12px;margin-top:8px}
.dc-history-item{display:flex;align-items:center;gap:14px;padding:14px;background:var(--bg2);border-radius:10px;border:1px solid var(--b)}
.dc-history-thumb{flex-shrink:0;width:64px;height:64px;border-radius:8px;overflow:hidden;display:block}
.dc-history-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.dc-history-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px}
.dc-history-title{font-size:14px;font-weight:500;color:var(--color-text-primary);text-decoration:none;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dc-history-title:hover{text-decoration:underline}
.dc-history-date{font-size:12px;color:var(--color-text-secondary)}
.dc-history-meta{display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px;font-size:12px;color:var(--color-text-secondary)}
.dc-history-cta{flex-shrink:0;font-size:12px;padding:6px 14px;white-space:nowrap}
@media(max-width:520px){.dc-history-thumb{display:none}.dc-history-cta{display:none}}

/* Barra de progresso reutilizável */
.dc-progress-wrap{height:6px;background:var(--b);border-radius:99px;overflow:hidden}
.dc-progress-bar{height:100%;background:var(--p);border-radius:99px;transition:width .3s ease}
.dc-progress-wrap.is-half .dc-progress-bar{background:#f59e0b}
.dc-progress-wrap.is-complete .dc-progress-bar{background:#22c55e}
.dc-badge-complete{font-size:11px;font-weight:500;color:#16a34a;background:#dcfce7;border-radius:99px;padding:2px 8px}

/* Progresso por categoria */
.dc-cat-progress-list{display:flex;flex-direction:column;gap:14px;margin-top:8px}
.dc-cat-progress-item{display:flex;flex-direction:column;gap:5px}
.dc-cat-progress-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.dc-cat-progress-name{font-size:14px;font-weight:500;color:var(--color-text-primary);text-decoration:none}
.dc-cat-progress-name:hover{text-decoration:underline}
.dc-cat-progress-count{font-size:12px;color:var(--color-text-secondary);white-space:nowrap}
.dc-cat-progress-foot{display:flex;justify-content:space-between;font-size:11px;color:var(--color-text-secondary)}

/* Estado vazio */
.dc-empty-state{display:flex;flex-direction:column;align-items:center;gap:10px;padding:32px 16px;text-align:center;color:var(--color-text-secondary)}
.dc-empty-state span{font-size:32px;line-height:1}
.dc-empty-state p{font-size:14px;margin:0}

/* ── Admin bar: empurra o header fixo para nao sobrepor a barra do WordPress ── */
body.admin-bar .topbar{
  top: 32px;
}
@media screen and (max-width: 782px){
  body.admin-bar .topbar{
    top: 46px;
  }
}

/* ── Admin bar: ajuste do drawer e overlay ── */
body.admin-bar .drawer,
body.admin-bar .drawer-overlay{
  top: 32px;
}
@media screen and (max-width: 782px){
  body.admin-bar .drawer,
  body.admin-bar .drawer-overlay{
    top: 46px;
  }
}

/* ── Mobile: Minha Conta ── */
@media(max-width:600px){
  .dc-account-actions{flex-wrap:wrap}
  .dc-account-actions .btn{flex:1 1 auto;text-align:center;justify-content:center}
  .dc-stat-value{font-size:18px}
  .dc-cat-progress-head{flex-wrap:wrap;gap:4px}
  .dc-cat-progress-count{width:100%}
  .dc-cat-progress-foot{flex-direction:column;gap:2px}
  .dc-history-item{padding:10px}
  .dc-history-body{gap:4px}
  .dc-history-title{font-size:13px}
}
@media(max-width:380px){
  .dc-stats-row{grid-template-columns:repeat(2,1fr);gap:8px}
  .dc-stat-card{padding:12px 8px}
}

/* ── Favorito: botão salvar nos posts ── */
.dc-save-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:1px solid var(--b);border-radius:8px;background:transparent;color:var(--color-text-secondary);font-size:13px;cursor:pointer;transition:all .15s ease;white-space:nowrap}
.dc-save-btn:hover{border-color:var(--p);color:var(--p)}
.dc-save-btn.is-saved{background:var(--p);border-color:var(--p);color:#fff}
.dc-save-btn.is-loading{opacity:.6;pointer-events:none}
.dc-save-btn .dc-save-ico{font-size:15px;line-height:1}
@media(max-width:520px){
  .dc-save-btn{flex:1 1 calc(50% - 6px);min-height:42px;justify-content:center}
}

/* ── Favoritos: listagem no painel ── */
.dc-saves-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:8px}
@media(max-width:520px){.dc-saves-grid{grid-template-columns:1fr}}
.dc-save-card{display:flex;flex-direction:column;gap:6px;padding:12px;background:var(--bg2);border-radius:10px;border:1px solid var(--b)}
.dc-save-card-thumb{width:100%;aspect-ratio:16/9;border-radius:6px;overflow:hidden}
.dc-save-card-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.dc-save-card-body{display:flex;flex-direction:column;gap:4px;flex:1}
.dc-save-card-title{font-size:13px;font-weight:500;color:var(--color-text-primary);text-decoration:none;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.dc-save-card-title:hover{text-decoration:underline}
.dc-save-card-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding-top:4px}
.dc-save-card-date{font-size:11px;color:var(--color-text-secondary)}
.dc-unsave-btn{font-size:11px;color:var(--color-text-secondary);background:none;border:none;cursor:pointer;padding:2px 4px;border-radius:4px;transition:color .15s}
.dc-unsave-btn:hover{color:#e53e3e}

/* ── Minha Conta: correções mobile ── */
@media(max-width:720px){
  /* Título do histórico: quebra linha em vez de truncar */
  .dc-history-title{
    white-space:normal;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }

  /* Barra de progresso: mais espessa e com margem */
  .dc-progress-wrap{
    height:8px;
    margin:4px 0 2px;
  }

  /* Headings das seções do painel */
  .dc-related-head h2{
    font-size:16px;
    margin-bottom:4px;
  }
  .dc-related-head p{
    font-size:12px;
  }

  /* Item do histórico: empilha verticalmente em telas pequenas */
  .dc-history-item{
    flex-wrap:wrap;
    gap:10px;
  }
  .dc-history-body{
    width:100%;
  }

  /* Progresso por categoria: mais espaço entre itens */
  .dc-cat-progress-item{
    gap:7px;
  }

  /* Estado vazio: compacto */
  .dc-empty-state{
    padding:20px 12px;
  }

  /* Stats: padding menor */
  .dc-stats-row{
    gap:8px;
  }
  .dc-stat-card{
    padding:12px 8px;
  }
}

@media(max-width:420px){
  /* Histórico: remove thumb, mostra tudo no body */
  .dc-history-thumb{
    display:none;
  }
  .dc-history-meta{
    font-size:11px;
  }
  /* Save card: padding menor */
  .dc-save-card{
    padding:10px;
  }
}
