/*
 * Decisão Hoje V134 — Mobile UX limpo
 * Base: V133 aprovada no desktop.
 * Escopo: apenas mobile/tablet pequeno. Sem barra inferior experimental.
 * Objetivo: evitar sobreposição, imagens cortadas e desktop espremido.
 */

/* Estado padrão: atalhos mobile e barras experimentais nunca aparecem no desktop. */
.dh-mobile-home-shortcuts,
.dh-bottom-nav,
.dh-mobile-bottom-nav,
.mobile-bottom-nav {
  display: none !important;
}

@media (max-width: 860px) {
  :root {
    --dh-mobile-pad: 16px;
    --dh-mobile-gap: 16px;
    --dh-mobile-radius: 22px;
    --dh-mobile-card: #0b1514;
    --dh-mobile-border: rgba(255,255,255,.10);
    --dh-mobile-text: #f4f7f6;
    --dh-mobile-muted: #aeb8b5;
  }

  html {
    -webkit-text-size-adjust: 100%;
    overflow-x: hidden;
  }

  body {
    overflow-x: hidden;
    padding-bottom: 0 !important;
    font-size: 16px;
    line-height: 1.68;
    background: #06100d;
  }

  *, *::before, *::after { box-sizing: border-box; }
  img, svg, video, canvas { max-width: 100%; height: auto; }

  .dh-bottom-nav,
  .dh-mobile-bottom-nav,
  .mobile-bottom-nav {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
    position: static !important;
    width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
  }

  .container,
  .nav-inner,
  .dh-home .container,
  .dh-blog-page .container,
  .dh-topic-hub .container,
  .dh-rankings-hub .container,
  .dh-calculator-page .container,
  .dh-about-page .container,
  .dh-post-page .container,
  .dh-post-shell,
  .dh-post-layout {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: var(--dh-mobile-pad) !important;
    padding-right: var(--dh-mobile-pad) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  main,
  section,
  .dh-home,
  .dh-blog-page,
  .dh-topic-hub,
  .dh-rankings-hub,
  .dh-calculator-page,
  .dh-post-page {
    max-width: 100vw !important;
    overflow-x: hidden !important;
  }

  /* Header mobile */
  .site-nav {
    position: sticky !important;
    top: 0 !important;
    z-index: 1000 !important;
    width: 100% !important;
    background: rgba(6,16,13,.98) !important;
    border-bottom: 1px solid rgba(255,255,255,.08) !important;
  }

  .site-nav .nav-inner,
  .nav-inner {
    min-height: 58px !important;
    padding: 8px var(--dh-mobile-pad) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    text-align: left !important;
  }

  .nav-logo {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    min-width: 0 !important;
    max-width: calc(100vw - 92px) !important;
    margin: 0 !important;
    text-align: left !important;
  }

  .nav-logo-img {
    width: 26px !important;
    height: 26px !important;
    flex: 0 0 26px !important;
    object-fit: contain !important;
  }

  .nav-logo span {
    display: block !important;
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  .nav-links { display: none !important; }

  .nav-mobile {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 4px !important;
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
    margin-left: auto !important;
    border: 1px solid rgba(255,255,255,.10) !important;
    border-radius: 14px !important;
    background: rgba(255,255,255,.04) !important;
  }

  .nav-mobile span {
    width: 22px !important;
    height: 2px !important;
    border-radius: 999px !important;
    background: #aeb8b5 !important;
  }

  .mobile-menu[aria-hidden="false"],
  .dh-menu-open .mobile-menu,
  .mobile-menu.is-open {
    display: grid !important;
    gap: 10px !important;
    position: fixed !important;
    left: var(--dh-mobile-pad) !important;
    right: var(--dh-mobile-pad) !important;
    top: 66px !important;
    padding: 12px !important;
    border: 1px solid rgba(255,255,255,.10) !important;
    border-radius: 22px !important;
    background: rgba(6,16,13,.985) !important;
    box-shadow: 0 22px 70px rgba(0,0,0,.52) !important;
  }

  .mobile-nav-menu,
  .mobile-nav-extra {
    display: grid !important;
    gap: 8px !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .mobile-nav-menu a,
  .mobile-nav-extra a,
  .mobile-menu > a {
    min-height: 50px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 13px 14px !important;
    border-radius: 16px !important;
    border: 1px solid rgba(255,255,255,.08) !important;
    background: rgba(255,255,255,.045) !important;
    color: var(--dh-mobile-text) !important;
    text-align: left !important;
  }

  .mobile-menu .nav-cta {
    background: #00e887 !important;
    color: #03130d !important;
    font-weight: 900 !important;
    justify-content: center !important;
  }

  /* Tipografia e alinhamento */
  h1, h2, h3, h4,
  .dh-section-head,
  .dh-section-head h2,
  .dh-section-head p {
    text-align: left !important;
  }

  h1, h2, h3, h4 {
    color: var(--dh-mobile-text) !important;
    letter-spacing: -.04em;
  }

  p, li, small {
    text-align: left !important;
  }

  .dh-badge,
  .hero-badge,
  .post-cat,
  .dh-tag,
  .dh-post-category {
    width: fit-content !important;
    max-width: 100% !important;
    font-size: .68rem !important;
    line-height: 1 !important;
    padding: .45rem .7rem !important;
    letter-spacing: .08em !important;
    white-space: normal !important;
  }

  .dh-section,
  .dh-section-tight,
  .dh-blog-list-section {
    padding: 34px 0 !important;
    margin: 0 !important;
  }

  .dh-section-head {
    display: grid !important;
    gap: 12px !important;
    margin-bottom: 18px !important;
    align-items: start !important;
  }

  .dh-section-head .btn-secondary,
  .dh-section-head a[class*="btn"] {
    width: 100% !important;
    justify-content: center !important;
  }

  /* Home */
  .dh-home .dh-hero,
  .dh-hero,
  .hero,
  .dh-topic-hero,
  .dh-rankings-hero,
  .dh-crypto-hero,
  .dh-stock-hero,
  .dh-page-hero {
    padding: 34px 0 24px !important;
    text-align: left !important;
  }

  .dh-home .dh-hero-grid,
  .dh-hero-grid,
  .hero-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 20px !important;
    align-items: start !important;
  }

  .dh-home .dh-hero-copy h1,
  .dh-hero h1,
  .hero h1,
  .dh-page-hero h1,
  .dh-topic-hero h1,
  .dh-rankings-hero h1,
  .dh-crypto-hero h1,
  .dh-stock-hero h1 {
    font-size: clamp(2.35rem, 11vw, 3.35rem) !important;
    line-height: 1.03 !important;
    letter-spacing: -.065em !important;
    text-align: left !important;
  }

  .dh-home .dh-hero-copy p,
  .dh-hero p,
  .hero p,
  .dh-page-hero p,
  .dh-topic-hero p,
  .dh-rankings-hero p,
  .dh-crypto-hero p,
  .dh-stock-hero p {
    font-size: 1.05rem !important;
    line-height: 1.66 !important;
    text-align: left !important;
  }

  .dh-hero-actions,
  .hero-actions,
  .dh-topic-actions,
  .dh-crypto-actions,
  .dh-stock-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    margin-top: 16px !important;
  }

  .btn-primary,
  .btn-secondary,
  .wp-block-button__link {
    width: 100% !important;
    min-height: 52px !important;
    justify-content: center !important;
    border-radius: 16px !important;
    font-size: 1rem !important;
  }

  .dh-market-card,
  .dh-home .dh-market-card {
    width: 100% !important;
    border-radius: 24px !important;
    padding: 18px !important;
  }

  .dh-market-grid,
  .dh-home .dh-market-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0,1fr)) !important;
    gap: 10px !important;
  }

  .dh-market-item {
    min-height: 104px !important;
    padding: 14px !important;
    border-radius: 18px !important;
  }

  .dh-market-item b { font-size: 1.45rem !important; }

  .dh-trust-items {
    display: flex !important;
    gap: 8px !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
  }
  .dh-trust-items::-webkit-scrollbar { display: none; }
  .dh-trust-items span {
    flex: 0 0 auto !important;
    font-size: .8rem !important;
    padding: 8px 10px !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,.035) !important;
    border: 1px solid rgba(255,255,255,.08) !important;
  }

  .dh-mobile-home-shortcuts {
    display: block !important;
    padding: 18px 0 4px !important;
  }
  .dh-mobile-home-shortcuts .container {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }
  .dh-mobile-home-shortcuts a {
    min-height: 78px !important;
    display: grid !important;
    grid-template-columns: 42px minmax(0, 1fr) !important;
    grid-template-areas: "icon title" "icon desc" !important;
    column-gap: 12px !important;
    row-gap: 3px !important;
    align-items: center !important;
    padding: 15px !important;
    border-radius: 22px !important;
    border: 1px solid rgba(0,232,138,.18) !important;
    background: linear-gradient(135deg, rgba(0,232,138,.09), rgba(13,17,23,.98)) !important;
    color: var(--dh-mobile-text) !important;
    text-align: left !important;
  }
  .dh-mobile-home-shortcuts a > span {
    grid-area: icon !important;
    width: 42px !important;
    height: 42px !important;
    display: grid !important;
    place-items: center !important;
    border-radius: 14px !important;
    background: rgba(0,232,138,.12) !important;
  }
  .dh-mobile-home-shortcuts strong {
    grid-area: title !important;
    display: block !important;
    font-size: 1rem !important;
    line-height: 1.18 !important;
    color: var(--dh-mobile-text) !important;
  }
  .dh-mobile-home-shortcuts small {
    grid-area: desc !important;
    display: block !important;
    font-size: .88rem !important;
    line-height: 1.35 !important;
    color: var(--dh-mobile-muted) !important;
  }

  /* Grids viram coluna no mobile */
  .dh-posts-grid,
  .posts-grid,
  .dh-topic-grid,
  .dh-topic-support-grid,
  .dh-topic-step-grid,
  .dh-topic-pillars,
  .dh-rankings-card-grid,
  .dh-ranking-hub-grid,
  .dh-tools-grid,
  .dh-calculator-grid,
  .calculator-layout,
  .calc-layout,
  .calc-grid,
  .dh-two-column,
  .dh-content-sidebar,
  .footer-grid,
  .site-footer .container {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  .dh-topic-main-card,
  .dh-topic-side-card,
  .post-card,
  .dh-post-card,
  .dh-tool-card,
  .dh-ranking-hub-card,
  .dh-about-card,
  .calc-inputs,
  .calc-result-card,
  .dh-newsletter-box,
  .dh-search-box {
    width: 100% !important;
    border-radius: 24px !important;
    padding: 18px !important;
  }

  .dh-topic-side-card a {
    min-height: 54px !important;
    border-radius: 16px !important;
    font-size: 1rem !important;
  }

  /* Imagens de cards: cover + 16:9 = altura consistente entre cards. */
  .post-img,
  .post-card .post-img,
  .dh-post-cover,
  .dh-topic-post-card .post-img,
  .dh-related-post-card .post-img,
  .dh-post-related-card .post-img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: 16/9 !important;
    overflow: hidden !important;
    border-radius: 20px !important;
  }

  .post-img img,
  .post-card .post-img img,
  .dh-post-cover img,
  .dh-topic-post-card .post-img img,
  .dh-related-post-card .post-img img,
  .dh-post-related-card .post-img img,
  .wp-post-image {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    object-fit: cover !important;
    object-position: center center !important;
    border-radius: inherit !important;
  }

  /* Featured post: contain mostra a arte inteira sem cortar texto. */
  .dh-featured-post-media {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: 280px !important;
    aspect-ratio: auto !important;
    overflow: hidden !important;
    border-radius: 20px !important;
  }
  .dh-featured-post-media img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-height: 280px !important;
    object-fit: cover !important;
    object-position: top center !important;
    border-radius: inherit !important;
  }

  .post-card .post-body,
  .dh-post-card .post-body {
    padding: 16px 0 0 !important;
  }

  .post-card .post-title,
  .dh-topic-card h3,
  .dh-post-related-card h3,
  .dh-post-card h3 {
    font-size: 1.18rem !important;
    line-height: 1.28 !important;
  }

  .post-excerpt,
  .dh-topic-card p,
  .dh-post-related-card p,
  .dh-post-card p,
  .dh-tool-card p,
  .dh-ranking-hub-card p {
    font-size: .98rem !important;
    line-height: 1.62 !important;
  }

  /* Carrosséis */
  .dh-card-carousel,
  .dh-post-related.has-carousel {
    width: 100% !important;
    overflow: hidden !important;
  }

  .dh-card-carousel-controls,
  .dh-post-related-controls {
    display: flex !important;
    justify-content: flex-end !important;
    gap: 8px !important;
    margin: 0 0 10px !important;
  }

  .dh-card-carousel-arrow,
  .dh-related-arrow {
    width: 42px !important;
    height: 42px !important;
    border-radius: 14px !important;
  }

  .dh-card-carousel-viewport,
  .dh-post-related-viewport {
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    scroll-snap-type: x proximity !important;
    scrollbar-width: none !important;
    margin-left: calc(var(--dh-mobile-pad) * -1) !important;
    margin-right: calc(var(--dh-mobile-pad) * -1) !important;
    padding: 0 var(--dh-mobile-pad) 4px !important;
    border-radius: 0 !important;
    cursor: grab !important;
  }
  .dh-card-carousel-viewport::-webkit-scrollbar,
  .dh-post-related-viewport::-webkit-scrollbar { display: none !important; }
  .dh-card-carousel-viewport.is-dragging,
  .dh-post-related-viewport.is-dragging { cursor: grabbing !important; scroll-behavior: auto !important; }

  .dh-card-carousel-track,
  .dh-topic-card-grid.dh-card-carousel-track,
  .dh-post-related-grid.dh-card-carousel-track {
    display: flex !important;
    flex-wrap: nowrap !important;
    grid-template-columns: none !important;
    gap: 14px !important;
    min-width: max-content !important;
    width: max-content !important;
    align-items: stretch !important;
  }

  .dh-card-carousel-track > .post-card,
  .dh-card-carousel-track > .dh-topic-card,
  .dh-card-carousel-track > .dh-post-related-card,
  .dh-post-related-grid.dh-card-carousel-track > .post-card,
  .dh-post-related-grid.dh-card-carousel-track > .dh-post-related-card {
    flex: 0 0 calc(100vw - 48px) !important;
    width: calc(100vw - 48px) !important;
    max-width: 420px !important;
    min-width: 272px !important;
    scroll-snap-align: start !important;
  }

  /* Posts */
  .dh-post-shell,
  .dh-post-layout,
  .dh-post-content {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
  }

  .dh-post-hero {
    padding: 22px 0 16px !important;
    text-align: left !important;
  }

  .dh-post-hero h1 {
    font-size: clamp(2.05rem, 9.5vw, 3rem) !important;
    line-height: 1.08 !important;
    letter-spacing: -.055em !important;
    text-align: left !important;
  }

  .dh-post-meta {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    gap: 6px 10px !important;
    font-size: .86rem !important;
  }

  .dh-mobile-post-brief {
    display: block !important;
    margin: 0 0 18px !important;
    padding: 18px !important;
    border-radius: 24px !important;
    border: 1px solid rgba(0,232,138,.18) !important;
    background: linear-gradient(135deg, rgba(0,232,138,.09), rgba(13,17,23,.98)) !important;
  }

  .dh-post-content p,
  .entry-content p {
    font-size: 18px !important;
    line-height: 1.82 !important;
    margin-bottom: 1.25rem !important;
  }

  .dh-post-content li,
  .entry-content li {
    font-size: 17px !important;
    line-height: 1.72 !important;
  }

  .dh-post-content h2,
  .entry-content h2 {
    font-size: clamp(1.55rem, 7vw, 2.1rem) !important;
    line-height: 1.16 !important;
    margin: 2rem 0 1rem !important;
  }

  .dh-post-content h3,
  .entry-content h3 {
    font-size: 1.28rem !important;
    line-height: 1.25 !important;
    margin: 1.5rem 0 .75rem !important;
  }

  audio,
  .dh-post-content audio {
    width: 100% !important;
    min-height: 48px !important;
    margin: 8px 0 20px !important;
  }

  /* Blog e busca */
  .dh-search-box {
    margin: 0 0 18px !important;
  }

  .dh-search-input-wrap {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  .dh-search-input-wrap input[type="search"],
  .dh-search-input-wrap button,
  input,
  select,
  textarea {
    width: 100% !important;
    min-height: 50px !important;
    border-radius: 16px !important;
    font-size: 16px !important;
  }

  .dh-search-chips,
  .dh-crypto-tabs,
  .dh-stock-tabs,
  .dh-tv-controls {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
  }
  .dh-search-chips::-webkit-scrollbar,
  .dh-crypto-tabs::-webkit-scrollbar,
  .dh-stock-tabs::-webkit-scrollbar,
  .dh-tv-controls::-webkit-scrollbar { display: none !important; }

  .dh-search-chips a,
  .dh-crypto-tab,
  .dh-stock-tab,
  .dh-tv-btn,
  .dh-stock-tv-btn {
    flex: 0 0 auto !important;
    min-height: 42px !important;
  }

  /* Calculadora */
  .dh-calculator-page h1 {
    font-size: clamp(2rem, 9vw, 3rem) !important;
    text-align: left !important;
  }
  .calc-result-card {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }
  .calc-result-val {
    font-size: 2rem !important;
    line-height: 1.08 !important;
    white-space: normal !important;
  }

  /* Rankings: evitar tabelas espremidas. */
  .dh-crypto-ranking-header,
  .dh-stock-ranking-header { display: none !important; }

  #dh-crypto-ranking-body,
  #dh-stock-ranking-body,
  #dh-fii-ranking-body {
    display: grid !important;
    gap: 12px !important;
  }

  .dh-crypto-row,
  .dh-stock-row {
    display: grid !important;
    grid-template-columns: 42px 1fr auto !important;
    gap: 10px !important;
    align-items: center !important;
    padding: 14px !important;
    border-radius: 22px !important;
    border: 1px solid rgba(255,255,255,.08) !important;
    background: linear-gradient(180deg, rgba(255,255,255,.035), rgba(13,17,23,.98)) !important;
  }

  .dh-crypto-price,
  .dh-crypto-cap,
  .dh-crypto-vol,
  .dh-stock-price,
  .dh-stock-cap,
  .dh-stock-vol {
    display: block !important;
    padding: 10px !important;
    border-radius: 14px !important;
    border: 1px solid rgba(255,255,255,.06) !important;
    font-size: .9rem !important;
  }

  .dh-tv-widget-wrap,
  .dh-stock-tv-wrap,
  #tradingview_crypto_chart,
  #tradingview_stock_chart,
  #tradingview_fii_chart {
    min-height: 420px !important;
    height: 420px !important;
  }

  table,
  .ranking-table,
  .dh-table,
  .wp-block-table {
    font-size: 15px !important;
  }
  .table-wrap,
  .dh-table-wrap,
  .ranking-table-wrap,
  .wp-block-table {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .site-footer,
  footer { padding-bottom: 28px !important; }
}

@media (max-width: 420px) {
  :root { --dh-mobile-pad: 14px; }

  .dh-home .dh-market-grid {
    grid-template-columns: 1fr !important;
  }

  .dh-card-carousel-track > .post-card,
  .dh-card-carousel-track > .dh-topic-card,
  .dh-card-carousel-track > .dh-post-related-card,
  .dh-post-related-grid.dh-card-carousel-track > .post-card,
  .dh-post-related-grid.dh-card-carousel-track > .dh-post-related-card {
    flex-basis: calc(100vw - 40px) !important;
    width: calc(100vw - 40px) !important;
  }
}

/* V135 — Acesso rápido mobile limpo
   Escopo: somente home no celular. Não altera desktop, rankings, posts, blog ou calculadora. */
.dh-mobile-quick-access {
  display: none !important;
}

@media (max-width: 860px) {
  .dh-mobile-quick-access {
    display: block !important;
    padding: 16px 0 8px !important;
    margin: 0 !important;
  }

  .dh-mobile-quick-access > .container {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    width: 100% !important;
    max-width: 100% !important;
    padding-left: var(--dh-mobile-pad, 16px) !important;
    padding-right: var(--dh-mobile-pad, 16px) !important;
  }

  .dh-mobile-quick-head {
    display: grid !important;
    gap: 8px !important;
    margin: 0 0 2px !important;
    text-align: left !important;
  }

  .dh-mobile-quick-head .dh-badge {
    justify-self: start !important;
    width: auto !important;
  }

  .dh-mobile-quick-head h2 {
    margin: 0 !important;
    font-size: clamp(1.35rem, 6vw, 1.75rem) !important;
    line-height: 1.12 !important;
    letter-spacing: -.04em !important;
    text-align: left !important;
  }

  .dh-mobile-quick-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  .dh-mobile-quick-card {
    width: 100% !important;
    min-height: 82px !important;
    display: grid !important;
    grid-template-columns: 46px minmax(0, 1fr) !important;
    gap: 13px !important;
    align-items: center !important;
    padding: 14px !important;
    border: 1px solid rgba(0, 232, 135, .18) !important;
    border-radius: 22px !important;
    background: linear-gradient(135deg, rgba(0,232,138,.10), rgba(11,21,20,.96)) !important;
    color: #f4f7f6 !important;
    text-align: left !important;
    text-decoration: none !important;
    box-shadow: 0 16px 38px rgba(0,0,0,.20) !important;
    -webkit-tap-highlight-color: transparent !important;
  }

  .dh-mobile-quick-card:active {
    transform: translateY(1px) !important;
  }

  .dh-mobile-quick-card:focus-visible {
    outline: 3px solid rgba(0,232,138,.42) !important;
    outline-offset: 3px !important;
  }

  .dh-mobile-quick-icon {
    width: 46px !important;
    height: 46px !important;
    display: grid !important;
    place-items: center !important;
    border-radius: 16px !important;
    background: rgba(0,232,138,.13) !important;
    border: 1px solid rgba(0,232,138,.16) !important;
    font-size: 1.25rem !important;
    line-height: 1 !important;
  }

  .dh-mobile-quick-copy {
    min-width: 0 !important;
    display: grid !important;
    gap: 4px !important;
  }

  .dh-mobile-quick-copy strong {
    display: block !important;
    margin: 0 !important;
    color: #f4f7f6 !important;
    font-size: 1.04rem !important;
    line-height: 1.18 !important;
    font-weight: 850 !important;
    letter-spacing: -.015em !important;
  }

  .dh-mobile-quick-copy small {
    display: block !important;
    margin: 0 !important;
    color: #aeb8b5 !important;
    font-size: .9rem !important;
    line-height: 1.35 !important;
  }
}

@media (min-width: 861px) {
  .dh-mobile-quick-access {
    display: none !important;
  }
}

/* V136 - popup de saída legível no mobile, sem afetar desktop */
@media (max-width: 720px) {
  .popup-overlay {
    padding: 12px !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .popup-box {
    width: calc(100vw - 24px) !important;
    max-width: 430px !important;
    max-height: calc(100dvh - 24px) !important;
    overflow-y: auto !important;
    padding: 1.25rem !important;
    border-radius: 22px !important;
    box-sizing: border-box !important;
  }

  .popup-close {
    top: .75rem !important;
    right: .75rem !important;
    width: 40px !important;
    height: 40px !important;
    font-size: 1.1rem !important;
    background: rgba(255,255,255,.06) !important;
  }

  .popup-icon {
    font-size: 1.8rem !important;
    margin: .15rem 0 .65rem !important;
  }

  .popup-title {
    font-size: 1.28rem !important;
    line-height: 1.2 !important;
    margin: 0 2.2rem .55rem !important;
  }

  .popup-sub {
    font-size: .95rem !important;
    line-height: 1.55 !important;
    margin-bottom: 1rem !important;
  }

  .popup-box .dh-capture-form {
    margin-top: .8rem !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
  }

  .popup-box .dh-capture-label {
    font-size: .9rem !important;
    margin-bottom: .4rem !important;
  }

  .popup-box .dh-capture-input,
  .popup-input {
    min-height: 48px !important;
    font-size: 1rem !important;
    padding: .85rem 1rem !important;
    border-radius: 12px !important;
  }

  .popup-box .dh-capture-submit,
  .popup-btn {
    min-height: 50px !important;
    font-size: 1rem !important;
    border-radius: 12px !important;
  }

  .popup-box .dh-capture-note {
    font-size: .76rem !important;
    line-height: 1.45 !important;
    margin-top: .7rem !important;
  }

  .popup-skip {
    display: inline-flex !important;
    min-height: 40px !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    font-size: .9rem !important;
    margin-top: .45rem !important;
  }
}

/* V137 - Ajuste mobile para o box discreto de tema dentro do post */
@media (max-width: 768px) {
  .dh-post-context-note {
    margin: 0 0 1.25rem !important;
    padding: .85rem .9rem !important;
    border-radius: 14px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: .35rem !important;
    text-align: left !important;
  }
}


/* V140 - UX/UI mobile final: menu, toque, tipografia e anti-scroll horizontal */
@media (max-width: 768px) {
  :root {
    --dh-tap-target: 48px;
    --dh-mobile-edge: 16px;
  }

  html,
  body {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: clip !important;
    -webkit-text-size-adjust: 100% !important;
  }

  @supports not (overflow-x: clip) {
    html,
    body { overflow-x: hidden !important; }
  }

  body.dh-menu-open {
    overflow: hidden !important;
    touch-action: none !important;
  }

  body,
  input,
  button,
  textarea,
  select {
    font-size: 16px !important;
  }

  img,
  svg,
  video,
  canvas,
  iframe,
  embed,
  object {
    max-width: 100% !important;
  }

  iframe,
  embed,
  object {
    display: block !important;
    width: 100% !important;
  }

  pre,
  code,
  .wp-block-code,
  .wp-block-preformatted,
  .wp-block-table,
  .dh-table-wrap,
  .dh-ranking-table-wrap,
  .dh-crypto-ranking-list,
  .dh-stock-ranking-list,
  .dh-fii-ranking-list,
  .dh-calculator-results,
  .dh-card-carousel-viewport,
  .dh-post-related-viewport {
    max-width: 100% !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .container,
  .dh-container,
  .nav-inner,
  .dh-post-shell,
  .dh-post-layout,
  .dh-post-content,
  .dh-post-main,
  .dh-post-sidebar,
  .dh-home .container,
  .dh-topic-hub .container,
  .dh-rankings-hub .container,
  .dh-calculator-page .container,
  .dh-blog-page .container {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding-left: var(--dh-mobile-edge) !important;
    padding-right: var(--dh-mobile-edge) !important;
  }

  .dh-hero-grid,
  .dh-topic-grid,
  .dh-topic-card-grid,
  .dh-rankings-grid,
  .dh-rankings-card-grid,
  .dh-posts-grid,
  .posts-grid,
  .dh-newsletter-box,
  .dh-stock-market-grid,
  .dh-stock-how-grid,
  .dh-stock-education-grid,
  .dh-stock-risk-list,
  .dh-fii-market-grid,
  .dh-fii-education-grid,
  .dh-crypto-market-grid,
  .dh-crypto-education-grid,
  .dh-calculator-grid,
  .dh-tools-grid {
    grid-template-columns: 1fr !important;
    min-width: 0 !important;
  }

  .dh-hero-grid > *,
  .dh-topic-grid > *,
  .dh-rankings-grid > *,
  .dh-posts-grid > *,
  .posts-grid > *,
  .dh-newsletter-box > *,
  .dh-calculator-grid > * {
    min-width: 0 !important;
    max-width: 100% !important;
  }

  h1,
  .dh-post-hero h1,
  .dh-hero-copy h1,
  .hero h1,
  .dh-topic-hero h1,
  .dh-rankings-hero h1,
  .dh-crypto-hero h1,
  .dh-stock-hero h1,
  .dh-about-hero h1 {
    font-size: clamp(2.05rem, 10.5vw, 3rem) !important;
    line-height: 1.05 !important;
    letter-spacing: -.055em !important;
    overflow-wrap: anywhere !important;
  }

  h2,
  .dh-section-head h2,
  .dh-post-content h2 {
    font-size: clamp(1.55rem, 7vw, 2.1rem) !important;
    line-height: 1.15 !important;
    letter-spacing: -.04em !important;
    overflow-wrap: anywhere !important;
  }

  h3,
  .dh-post-content h3,
  .post-card h3,
  .dh-topic-card h3 {
    font-size: clamp(1.18rem, 5.3vw, 1.55rem) !important;
    line-height: 1.22 !important;
    letter-spacing: -.025em !important;
    overflow-wrap: anywhere !important;
  }

  p,
  li,
  .dh-post-content p,
  .dh-post-content li {
    overflow-wrap: anywhere !important;
  }

  .site-nav {
    position: sticky !important;
    top: 0 !important;
    width: 100% !important;
    max-width: 100vw !important;
    z-index: 9990 !important;
  }

  .site-nav .nav-inner,
  .nav-inner {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 60px !important;
    padding: 8px var(--dh-mobile-edge) !important;
  }

  .site-nav .nav-links,
  .nav-links {
    display: none !important;
  }

  .nav-logo {
    min-width: 0 !important;
    max-width: calc(100vw - 92px) !important;
  }

  .nav-logo span {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  .nav-mobile {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-direction: column !important;
    gap: 5px !important;
    width: var(--dh-tap-target) !important;
    height: var(--dh-tap-target) !important;
    min-width: var(--dh-tap-target) !important;
    min-height: var(--dh-tap-target) !important;
    padding: 0 !important;
    margin-left: auto !important;
    border: 1px solid rgba(255,255,255,.12) !important;
    border-radius: 15px !important;
    background: rgba(255,255,255,.055) !important;
    color: #f4f7f6 !important;
    -webkit-tap-highlight-color: transparent !important;
    touch-action: manipulation !important;
  }

  .nav-mobile span {
    width: 22px !important;
    height: 2px !important;
    border-radius: 999px !important;
    background: #f4f7f6 !important;
    transition: transform .18s ease, opacity .18s ease !important;
  }

  .mobile-menu[hidden] {
    display: none !important;
  }

  .mobile-menu[aria-hidden="false"],
  .mobile-menu.is-open,
  .dh-menu-open .mobile-menu {
    display: grid !important;
    position: fixed !important;
    left: max(12px, env(safe-area-inset-left)) !important;
    right: max(12px, env(safe-area-inset-right)) !important;
    top: calc(66px + env(safe-area-inset-top)) !important;
    max-height: calc(100dvh - 86px - env(safe-area-inset-bottom)) !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
    gap: 10px !important;
    padding: 12px !important;
    border: 1px solid rgba(255,255,255,.12) !important;
    border-radius: 22px !important;
    background: rgba(6,16,13,.985) !important;
    box-shadow: 0 24px 80px rgba(0,0,0,.58) !important;
    z-index: 9999 !important;
  }

  .mobile-nav-menu,
  .mobile-nav-extra {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    width: 100% !important;
  }

  .mobile-nav-menu li,
  .mobile-nav-extra li {
    width: 100% !important;
  }

  .mobile-nav-menu a,
  .mobile-nav-extra a,
  .mobile-menu > a {
    min-height: var(--dh-tap-target) !important;
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 13px 14px !important;
    border: 1px solid rgba(255,255,255,.09) !important;
    border-radius: 16px !important;
    background: rgba(255,255,255,.045) !important;
    color: #f4f7f6 !important;
    font-size: 1rem !important;
    line-height: 1.2 !important;
    text-decoration: none !important;
  }

  .mobile-menu .nav-cta {
    min-height: 52px !important;
    justify-content: center !important;
    background: #00e887 !important;
    color: #03130d !important;
    font-weight: 900 !important;
  }

  .btn-primary,
  .btn-secondary,
  .btn-outline,
  .nav-cta,
  .wp-block-button__link,
  .dh-capture-submit,
  .popup-btn,
  .calc-button,
  button[type="submit"] {
    min-height: var(--dh-tap-target) !important;
    padding: .82rem 1rem !important;
    border-radius: 15px !important;
    line-height: 1.2 !important;
    touch-action: manipulation !important;
  }

  .hero-actions,
  .dh-hero-actions,
  .dh-topic-actions,
  .dh-crypto-actions,
  .dh-stock-actions,
  .dh-rankings-actions,
  .dh-post-cta-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .75rem !important;
  }

  .hero-actions > a,
  .dh-hero-actions > a,
  .dh-topic-actions > a,
  .dh-crypto-actions > a,
  .dh-stock-actions > a,
  .dh-rankings-actions > a,
  .dh-post-cta-actions > a,
  .wp-block-buttons .wp-block-button,
  .wp-block-buttons .wp-block-button__link {
    width: 100% !important;
    justify-content: center !important;
    text-align: center !important;
  }

  .post-card,
  .dh-topic-card,
  .dh-post-related-card,
  .dh-rankings-card,
  .dh-market-card,
  .dh-capture-card,
  .dh-card,
  .dh-panel {
    max-width: 100% !important;
    min-width: 0 !important;
  }

  .dh-post-content {
    font-size: 1.02rem !important;
    line-height: 1.75 !important;
  }

  .dh-post-content > * {
    max-width: 100% !important;
  }
}

@media (max-width: 380px) {
  .container,
  .dh-container,
  .nav-inner,
  .dh-post-shell,
  .dh-post-layout,
  .dh-post-content,
  .dh-post-main,
  .dh-post-sidebar {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  h1,
  .dh-post-hero h1,
  .dh-hero-copy h1,
  .hero h1,
  .dh-topic-hero h1,
  .dh-rankings-hero h1,
  .dh-crypto-hero h1,
  .dh-stock-hero h1,
  .dh-about-hero h1 {
    font-size: clamp(1.9rem, 12vw, 2.55rem) !important;
  }
}

/* ════════════════════════════════════════
   V141 - Ajustes finos UX/UI mobile
════════════════════════════════════════ */
@media (max-width: 768px) {
  body.dh-popup-open { overflow:hidden !important; touch-action:none; }

  /* Home: prioriza ação e resumo antes dos atalhos adicionais. */
  .dh-home .dh-hero { padding-bottom:1.25rem !important; }
  .dh-home .dh-hero-actions { gap:.7rem !important; }
  .dh-home .dh-trust-strip { margin-top:0 !important; }
  .dh-mobile-home-shortcuts { padding-top:.5rem !important; }
  .dh-mobile-quick-head h2 { font-size:1.35rem !important; line-height:1.18 !important; }

  /* Popup como bottom sheet, menos agressivo no celular. */
  .popup-overlay.show { display:flex !important; align-items:flex-end !important; justify-content:center !important; padding:0 !important; background:rgba(0,0,0,.56) !important; }
  .popup-box { width:100% !important; max-width:100% !important; max-height:min(72vh,620px) !important; overflow:auto !important; border-radius:26px 26px 0 0 !important; padding:24px 18px calc(22px + env(safe-area-inset-bottom)) !important; transform:translateY(0) !important; box-shadow:0 -24px 70px rgba(0,0,0,.38) !important; }
  .popup-close { width:48px !important; height:48px !important; right:12px !important; top:10px !important; border-radius:999px !important; font-size:1rem !important; }
  .popup-icon { font-size:1.65rem !important; margin-bottom:.45rem !important; }
  .popup-title { font-size:1.35rem !important; padding-right:44px !important; }
  .popup-sub { font-size:.94rem !important; line-height:1.55 !important; }
  .popup-skip { min-height:44px !important; display:flex !important; align-items:center !important; justify-content:center !important; }

  /* Rankings: cards legíveis, com rótulos nos dados no mobile. */
  .dh-crypto-row,
  .dh-stock-row {
    grid-template-columns:42px minmax(0,1fr) auto !important;
    align-items:start !important;
  }
  .dh-crypto-rank,.dh-stock-rank{order:1}.dh-crypto-coin,.dh-stock-asset{order:2}.dh-crypto-change,.dh-stock-change{order:3;grid-column:3;grid-row:1}.dh-crypto-price,.dh-stock-price{order:4}.dh-crypto-cap,.dh-stock-cap{order:5}.dh-crypto-vol,.dh-stock-vol{order:6}
  .dh-crypto-price,.dh-crypto-cap,.dh-crypto-vol,
  .dh-stock-price,.dh-stock-cap,.dh-stock-vol {
    grid-column:1 / -1 !important;
    display:flex !important;
    justify-content:space-between !important;
    align-items:center !important;
    gap:1rem !important;
    min-height:44px !important;
    width:100% !important;
  }
  .dh-crypto-price::before,.dh-crypto-cap::before,.dh-crypto-vol::before,
  .dh-stock-price::before,.dh-stock-cap::before,.dh-stock-vol::before {
    color:var(--muted2);font-family:'Space Grotesk',sans-serif;font-size:.72rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase;
  }
  .dh-crypto-price::before,.dh-stock-price::before{content:'Preço'}
  .dh-crypto-cap::before{content:'Valor de mercado'}
  .dh-crypto-vol::before{content:'Volume 24h'}
  .dh-stock-cap::before{content:'Valor de mercado'}
  .dh-stock-vol::before{content:'Volume'}
  .dh-fii-rank-page .dh-stock-cap::before{content:'Liquidez'}
  .dh-fii-rank-page .dh-stock-vol::before{content:'Tipo'}
  .dh-ranking-skeleton-note{font-size:.92rem;margin-bottom:.1rem}.dh-ranking-skeleton-card{grid-template-columns:42px 1fr 64px;padding:1rem!important}

  /* Calculadora: chips horizontais reduzem digitação no celular. */
  .calc-quick-actions{flex-wrap:nowrap!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch;scrollbar-width:none!important;margin-left:-2px;margin-right:-2px;padding:0 2px .1rem}.calc-quick-actions::-webkit-scrollbar{display:none}.calc-chip{flex:0 0 auto!important;min-height:44px!important;padding:.65rem .82rem!important;font-size:.88rem!important;border-radius:999px!important}

  /* Quiz: entrada clara antes de exibir a primeira pergunta. */
  .quiz-start{padding:1.1rem!important;border-radius:24px!important}.quiz-start h2{font-size:1.55rem!important}.quiz-start p{font-size:.96rem!important}.quiz-start-btn{width:100%!important;min-height:52px!important}.quiz-progress[hidden],#quiz-content[hidden]{display:none!important}
}

/* V143 — Menu mobile premium, rankings em cards arrastáveis e posts compactos nos rankings */
@media (max-width: 860px) {
  html.dh-menu-open,
  body.dh-menu-open {
    overflow: hidden !important;
  }

  .site-nav .nav-mobile {
    width: 44px !important;
    height: 44px !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid rgba(255,255,255,.10) !important;
    border-radius: 15px !important;
    background: rgba(255,255,255,.035) !important;
  }

  .site-nav .nav-mobile span {
    width: 20px !important;
    background: var(--text) !important;
  }

  .mobile-menu.dh-mobile-app-menu {
    position: fixed !important;
    left: 10px !important;
    right: 10px !important;
    top: calc(64px + env(safe-area-inset-top)) !important;
    max-height: calc(100dvh - 78px - env(safe-area-inset-top)) !important;
    overflow: auto !important;
    display: none !important;
    padding: 10px !important;
    border: 1px solid rgba(255,255,255,.10) !important;
    border-radius: 26px !important;
    background: linear-gradient(180deg, rgba(11,21,20,.98), rgba(6,16,13,.98)) !important;
    box-shadow: 0 28px 80px rgba(0,0,0,.46), inset 0 1px 0 rgba(255,255,255,.04) !important;
    backdrop-filter: blur(18px) saturate(1.2) !important;
    z-index: 999 !important;
  }

  .dh-menu-open .mobile-menu.dh-mobile-app-menu,
  .mobile-menu.dh-mobile-app-menu.is-open {
    display: block !important;
  }

  .dh-mobile-menu-panel {
    display: grid !important;
    gap: 12px !important;
  }

  .dh-mobile-menu-group {
    display: grid !important;
    gap: 8px !important;
    padding: 12px !important;
    border: 1px solid rgba(255,255,255,.075) !important;
    border-radius: 22px !important;
    background: rgba(255,255,255,.025) !important;
  }

  .dh-mobile-menu-label {
    color: var(--muted2) !important;
    font-size: .68rem !important;
    font-weight: 900 !important;
    letter-spacing: .09em !important;
    text-transform: uppercase !important;
    padding: 0 2px 2px !important;
  }

  .dh-mobile-menu-item {
    display: grid !important;
    grid-template-columns: 40px 1fr !important;
    align-items: center !important;
    gap: 10px !important;
    min-height: 50px !important;
    padding: 7px 8px !important;
    border: 0 !important;
    border-radius: 16px !important;
    color: var(--text) !important;
    background: rgba(255,255,255,.026) !important;
  }

  .dh-mobile-menu-item span {
    width: 40px !important;
    height: 40px !important;
    display: grid !important;
    place-items: center !important;
    border-radius: 14px !important;
    border: 1px solid rgba(0,232,138,.20) !important;
    background: rgba(0,232,138,.08) !important;
    color: var(--g) !important;
    font-size: 1.02rem !important;
    font-weight: 900 !important;
  }

  .dh-mobile-menu-item strong {
    font-size: .98rem !important;
    font-weight: 850 !important;
    letter-spacing: -.01em !important;
  }

  .dh-mobile-menu-cta {
    display: grid !important;
    gap: 2px !important;
    padding: 14px 16px !important;
    border: 1px solid rgba(0,232,138,.38) !important;
    border-radius: 22px !important;
    background: linear-gradient(135deg, rgba(0,232,138,.95), rgba(22,199,132,.82)) !important;
    color: #06100D !important;
    box-shadow: 0 18px 45px rgba(0,232,138,.12) !important;
  }

  .dh-mobile-menu-cta span {
    color: #06100D !important;
    font-size: 1.02rem !important;
    line-height: 1.12 !important;
    font-weight: 950 !important;
  }

  .dh-mobile-menu-cta small {
    color: rgba(6,16,13,.78) !important;
    font-size: .76rem !important;
    font-weight: 800 !important;
  }

  /* Ranking: transformar a lista em carrossel horizontal de ativos. */
  .dh-crypto-ranking-card,
  .dh-stock-ranking-card {
    overflow: visible !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  #dh-crypto-ranking-body,
  #dh-stock-ranking-body,
  #dh-fii-ranking-body {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 12px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    margin-left: -14px !important;
    margin-right: -14px !important;
    padding: 2px 14px 8px !important;
  }

  #dh-crypto-ranking-body::-webkit-scrollbar,
  #dh-stock-ranking-body::-webkit-scrollbar,
  #dh-fii-ranking-body::-webkit-scrollbar {
    display: none !important;
  }

  .dh-crypto-row,
  .dh-stock-row {
    flex: 0 0 84% !important;
    width: 84% !important;
    max-width: 360px !important;
    min-width: 270px !important;
    scroll-snap-align: start !important;
    grid-template-columns: 38px minmax(0,1fr) auto !important;
    align-items: start !important;
    row-gap: 10px !important;
    min-height: 192px !important;
    padding: 14px !important;
    border-radius: 24px !important;
    background: linear-gradient(180deg, rgba(255,255,255,.045), rgba(11,21,20,.98)) !important;
    box-shadow: 0 18px 45px rgba(0,0,0,.22) !important;
  }

  .dh-crypto-rank,
  .dh-stock-rank {
    width: 34px !important;
    height: 34px !important;
    border-radius: 13px !important;
    font-size: .86rem !important;
  }

  .dh-crypto-coin,
  .dh-stock-asset {
    min-width: 0 !important;
    gap: 9px !important;
  }

  .dh-crypto-logo,
  .dh-stock-logo {
    width: 38px !important;
    height: 38px !important;
  }

  .dh-crypto-name strong,
  .dh-stock-name strong {
    font-size: 1.06rem !important;
    line-height: 1.1 !important;
  }

  .dh-crypto-name span,
  .dh-stock-name span {
    font-size: .74rem !important;
    line-height: 1.25 !important;
  }

  .dh-crypto-change,
  .dh-stock-change {
    align-self: start !important;
    justify-self: end !important;
    padding: .38rem .56rem !important;
    border: 1px solid rgba(255,255,255,.08) !important;
    background: rgba(255,255,255,.035) !important;
    border-radius: 999px !important;
    font-size: .86rem !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }

  .dh-crypto-change.positive,
  .dh-stock-change.positive {
    background: rgba(0,232,138,.10) !important;
    border-color: rgba(0,232,138,.18) !important;
  }

  .dh-crypto-change.negative,
  .dh-stock-change.negative {
    background: rgba(239,68,68,.10) !important;
    border-color: rgba(239,68,68,.20) !important;
  }

  .dh-crypto-price,
  .dh-crypto-cap,
  .dh-crypto-vol,
  .dh-stock-price,
  .dh-stock-cap,
  .dh-stock-vol {
    grid-column: 1 / -1 !important;
    min-height: 38px !important;
    padding: 8px 10px !important;
    border-radius: 14px !important;
    font-size: .82rem !important;
    line-height: 1.2 !important;
    background: rgba(255,255,255,.026) !important;
  }

  #ranking-acoes .dh-section-head p,
  .dh-fii-rank-page #ranking-fiis .dh-section-head p,
  .dh-crypto-rank-page #ranking-cripto .dh-section-head p,
  .dh-crypto-rank-page #ranking-criptomoedas .dh-section-head p {
    margin-bottom: .25rem !important;
  }

  .dh-stock-ranking-card::after,
  .dh-crypto-ranking-card::after {
    content: 'arraste para o lado para ver mais ativos' !important;
    display: block !important;
    margin: 7px 2px 0 !important;
    color: var(--muted2) !important;
    font-size: .76rem !important;
    font-weight: 800 !important;
    letter-spacing: .01em !important;
  }

  /* Posts relacionados menores somente nas páginas de rankings. */
  .dh-stock-rank-page .dh-post-related,
  .dh-crypto-rank-page .dh-post-related,
  .dh-fii-rank-page .dh-post-related {
    margin: 1.6rem 0 1rem !important;
  }

  .dh-stock-rank-page .dh-post-related-head h2,
  .dh-crypto-rank-page .dh-post-related-head h2,
  .dh-fii-rank-page .dh-post-related-head h2 {
    font-size: 1.28rem !important;
    line-height: 1.2 !important;
  }

  .dh-stock-rank-page .dh-post-related-head p,
  .dh-crypto-rank-page .dh-post-related-head p,
  .dh-fii-rank-page .dh-post-related-head p {
    font-size: .88rem !important;
    line-height: 1.45 !important;
  }

  .dh-stock-rank-page .dh-post-related-grid .post-card,
  .dh-crypto-rank-page .dh-post-related-grid .post-card,
  .dh-fii-rank-page .dh-post-related-grid .post-card,
  .dh-stock-rank-page .dh-post-related-grid .dh-post-related-card,
  .dh-crypto-rank-page .dh-post-related-grid .dh-post-related-card,
  .dh-fii-rank-page .dh-post-related-grid .dh-post-related-card {
    flex-basis: 68% !important;
    width: 68% !important;
    max-width: 68% !important;
    min-width: 210px !important;
    border-radius: 18px !important;
  }

  .dh-stock-rank-page .dh-post-related-grid .post-card .post-img,
  .dh-crypto-rank-page .dh-post-related-grid .post-card .post-img,
  .dh-fii-rank-page .dh-post-related-grid .post-card .post-img,
  .dh-stock-rank-page .dh-related-post-card .post-img,
  .dh-crypto-rank-page .dh-related-post-card .post-img,
  .dh-fii-rank-page .dh-related-post-card .post-img {
    aspect-ratio: 16 / 8 !important;
    max-height: 112px !important;
  }

  .dh-stock-rank-page .dh-post-related-grid .post-card .post-body,
  .dh-crypto-rank-page .dh-post-related-grid .post-card .post-body,
  .dh-fii-rank-page .dh-post-related-grid .post-card .post-body {
    padding: .85rem !important;
  }

  .dh-stock-rank-page .dh-post-related-grid .post-title,
  .dh-crypto-rank-page .dh-post-related-grid .post-title,
  .dh-fii-rank-page .dh-post-related-grid .post-title,
  .dh-stock-rank-page .dh-post-related-card h3,
  .dh-crypto-rank-page .dh-post-related-card h3,
  .dh-fii-rank-page .dh-post-related-card h3 {
    font-size: .98rem !important;
    line-height: 1.22 !important;
    -webkit-line-clamp: 2 !important;
  }

  .dh-stock-rank-page .dh-post-related-grid .post-excerpt,
  .dh-crypto-rank-page .dh-post-related-grid .post-excerpt,
  .dh-fii-rank-page .dh-post-related-grid .post-excerpt,
  .dh-stock-rank-page .dh-post-related-card p,
  .dh-crypto-rank-page .dh-post-related-card p,
  .dh-fii-rank-page .dh-post-related-card p {
    font-size: .82rem !important;
    line-height: 1.38 !important;
    -webkit-line-clamp: 2 !important;
  }
}

@media (max-width: 420px) {
  .dh-crypto-row,
  .dh-stock-row {
    flex-basis: 88% !important;
    width: 88% !important;
    min-width: 258px !important;
  }

  .dh-stock-rank-page .dh-post-related-grid .post-card,
  .dh-crypto-rank-page .dh-post-related-grid .post-card,
  .dh-fii-rank-page .dh-post-related-grid .post-card,
  .dh-stock-rank-page .dh-post-related-grid .dh-post-related-card,
  .dh-crypto-rank-page .dh-post-related-grid .dh-post-related-card,
  .dh-fii-rank-page .dh-post-related-grid .dh-post-related-card {
    flex-basis: 74% !important;
    width: 74% !important;
    max-width: 74% !important;
  }
}



/* ════════════════════════════════════════
   V152 — Consolidação final mobile/performance
   Substitui as camadas V146-V151 por uma regra única, limpa e estável.
════════════════════════════════════════ */

/* Base do wrapper de métricas mobile criado na V148. */
.dh-ranking-mobile-metrics{display:none;}

/* CTA rápido pós-ranking criado na V151. */
.dh-ranking-quick-cta{
  margin-top:1.2rem;
  padding:1.25rem;
  border-radius:24px;
  border:1px solid rgba(0,232,138,.16);
  background:
    radial-gradient(circle at 100% 0%,rgba(0,232,138,.12),transparent 34%),
    linear-gradient(180deg,rgba(255,255,255,.045),rgba(6,16,13,.84));
  box-shadow:0 18px 44px rgba(0,0,0,.22);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
}
.dh-ranking-quick-cta h3{
  margin:.35rem 0 .35rem;
  font-size:1.2rem;
  line-height:1.18;
  letter-spacing:-.03em;
}
.dh-ranking-quick-cta p{
  margin:0;
  color:var(--muted,#9ca3af);
  line-height:1.55;
  max-width:720px;
}
.dh-ranking-quick-cta .btn-primary{
  flex:0 0 auto;
  white-space:nowrap;
}

/* Ativa a experiência mobile também em dispositivos touch com viewport ampliado. */
@media (max-width:1200px), (hover:none) and (pointer:coarse){
  body .dh-stock-rank-page,
  body .dh-fii-rank-page,
  body .dh-crypto-rank-page{
    display:flex!important;
    flex-direction:column!important;
  }

  body .dh-stock-rank-page > .dh-stock-hero,
  body .dh-fii-rank-page > .dh-stock-hero,
  body .dh-crypto-rank-page > .dh-crypto-hero{order:1!important;}

  body .dh-stock-rank-page > #ranking-acoes,
  body .dh-fii-rank-page > #ranking-fiis,
  body .dh-crypto-rank-page > #ranking-cripto{order:2!important;}

  body .dh-stock-rank-page > .dh-stock-market-section,
  body .dh-fii-rank-page > .dh-stock-market-section,
  body .dh-crypto-rank-page > .dh-crypto-market-section{order:3!important;}

  body .dh-stock-rank-page > #grafico-acoes,
  body .dh-fii-rank-page > #grafico-fiis,
  body .dh-crypto-rank-page > #grafico-cripto{order:4!important;}

  body .dh-stock-rank-page > .dh-stock-how-section,
  body .dh-fii-rank-page > .dh-stock-how-section,
  body .dh-crypto-rank-page > .dh-crypto-how-section{order:6!important;}

  /* Hero mobile curto */
  body .dh-stock-hero,
  body .dh-crypto-hero{
    padding-top:1.35rem!important;
    padding-bottom:1.05rem!important;
  }
  body .dh-stock-hero .container,
  body .dh-crypto-hero .container,
  body .dh-stock-hero .dh-stock-hero-single,
  body .dh-crypto-hero .dh-crypto-hero-single{
    gap:.75rem!important;
  }
  body .dh-stock-hero h1,
  body .dh-crypto-hero h1{
    font-size:clamp(1.75rem,7.2vw,2.35rem)!important;
    line-height:1.05!important;
    letter-spacing:-.055em!important;
    margin-bottom:.45rem!important;
  }
  body .dh-stock-hero p,
  body .dh-crypto-hero p{
    font-size:.96rem!important;
    line-height:1.55!important;
    max-width:720px!important;
    margin-bottom:.65rem!important;
  }
  body .dh-stock-actions,
  body .dh-crypto-actions{
    gap:.6rem!important;
    margin-top:.35rem!important;
  }
  body .dh-stock-actions .btn-primary,
  body .dh-stock-actions .btn-secondary,
  body .dh-crypto-actions .btn-primary,
  body .dh-crypto-actions .btn-secondary{
    min-height:44px!important;
    padding:.72rem .95rem!important;
    font-size:.88rem!important;
    border-radius:14px!important;
  }

  /* Ranking como carrossel de cards */
  body .dh-stock-rank-page > #ranking-acoes,
  body .dh-fii-rank-page > #ranking-fiis,
  body .dh-crypto-rank-page > #ranking-cripto{
    padding-top:1.05rem!important;
  }
  body .dh-stock-rank-page > #ranking-acoes .dh-section-head,
  body .dh-fii-rank-page > #ranking-fiis .dh-section-head,
  body .dh-crypto-rank-page > #ranking-cripto .dh-section-head{
    margin-bottom:.8rem!important;
  }
  body .dh-stock-rank-page > #ranking-acoes .dh-section-head p,
  body .dh-fii-rank-page > #ranking-fiis .dh-section-head p,
  body .dh-crypto-rank-page > #ranking-cripto .dh-section-head p{
    font-size:.94rem!important;
    line-height:1.52!important;
  }

  body .dh-stock-rank-page .dh-stock-ranking-card,
  body .dh-fii-rank-page .dh-stock-ranking-card,
  body .dh-crypto-rank-page .dh-crypto-ranking-card{
    border-radius:26px!important;
    border:1px solid rgba(255,255,255,.075)!important;
    background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(6,16,13,.56))!important;
    box-shadow:0 18px 52px rgba(0,0,0,.30)!important;
    overflow:hidden!important;
  }
  body .dh-stock-rank-page #dh-stock-ranking-body,
  body .dh-fii-rank-page #dh-fii-ranking-body,
  body .dh-crypto-rank-page #dh-crypto-ranking-body{
    display:flex!important;
    flex-wrap:nowrap!important;
    gap:.95rem!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    margin-left:-.95rem!important;
    margin-right:-.95rem!important;
    padding:.95rem .95rem 1rem!important;
    scroll-padding-left:.95rem!important;
    scroll-snap-type:x proximity!important;
    -webkit-overflow-scrolling:touch!important;
    scrollbar-width:none!important;
  }
  body .dh-stock-rank-page #dh-stock-ranking-body::-webkit-scrollbar,
  body .dh-fii-rank-page #dh-fii-ranking-body::-webkit-scrollbar,
  body .dh-crypto-rank-page #dh-crypto-ranking-body::-webkit-scrollbar{display:none!important;}

  body .dh-stock-rank-page #dh-stock-ranking-body>.dh-stock-row,
  body .dh-fii-rank-page #dh-fii-ranking-body>.dh-stock-row,
  body .dh-crypto-rank-page #dh-crypto-ranking-body>.dh-crypto-row{
    flex:0 0 min(86vw,520px)!important;
    width:min(86vw,520px)!important;
    max-width:min(86vw,520px)!important;
    min-width:280px!important;
    min-height:176px!important;
    display:grid!important;
    grid-template-columns:42px minmax(0,1fr) auto!important;
    grid-template-areas:"rank asset change" "mobilemetrics mobilemetrics mobilemetrics"!important;
    gap:.85rem!important;
    align-items:center!important;
    align-content:start!important;
    padding:1rem!important;
    border-radius:24px!important;
    border:1px solid rgba(255,255,255,.075)!important;
    background:
      radial-gradient(circle at 100% 0%,rgba(0,232,138,.10),transparent 30%),
      linear-gradient(180deg,rgba(255,255,255,.04),rgba(13,17,23,.98))!important;
    box-shadow:0 14px 38px rgba(0,0,0,.26)!important;
    scroll-snap-align:start!important;
    overflow:hidden!important;
  }

  /* Desktop metrics ficam ocultas no mobile; wrapper novo assume. */
  body .dh-stock-rank-page .dh-stock-row>.dh-stock-price,
  body .dh-stock-rank-page .dh-stock-row>.dh-stock-cap,
  body .dh-stock-rank-page .dh-stock-row>.dh-stock-vol,
  body .dh-fii-rank-page .dh-stock-row>.dh-stock-price,
  body .dh-fii-rank-page .dh-stock-row>.dh-stock-cap,
  body .dh-fii-rank-page .dh-stock-row>.dh-stock-vol,
  body .dh-crypto-rank-page .dh-crypto-row>.dh-crypto-price,
  body .dh-crypto-rank-page .dh-crypto-row>.dh-crypto-cap,
  body .dh-crypto-rank-page .dh-crypto-row>.dh-crypto-vol{display:none!important;}

  body .dh-stock-rank-page .dh-stock-row .dh-stock-rank,
  body .dh-fii-rank-page .dh-stock-row .dh-stock-rank,
  body .dh-crypto-rank-page .dh-crypto-row .dh-crypto-rank{
    grid-area:rank!important;
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    border-radius:14px!important;
    justify-self:start!important;
    align-self:center!important;
    background:rgba(0,232,138,.105)!important;
    border:1px solid rgba(0,232,138,.20)!important;
    color:var(--g,#00e887)!important;
    font-size:.88rem!important;
    font-weight:900!important;
  }
  body .dh-stock-rank-page .dh-stock-row .dh-stock-asset,
  body .dh-fii-rank-page .dh-stock-row .dh-stock-asset,
  body .dh-crypto-rank-page .dh-crypto-row .dh-crypto-coin{
    grid-area:asset!important;
    min-width:0!important;
    overflow:hidden!important;
    align-self:center!important;
    gap:.7rem!important;
  }
  body .dh-stock-rank-page .dh-stock-logo,
  body .dh-fii-rank-page .dh-stock-logo,
  body .dh-crypto-rank-page .dh-crypto-logo{
    width:42px!important;
    height:42px!important;
    border-radius:15px!important;
    box-shadow:0 10px 24px rgba(0,0,0,.25)!important;
  }
  body .dh-stock-rank-page .dh-stock-name,
  body .dh-fii-rank-page .dh-stock-name,
  body .dh-crypto-rank-page .dh-crypto-name{
    min-width:0!important;
    max-width:100%!important;
    overflow:hidden!important;
  }
  body .dh-stock-rank-page .dh-stock-name strong,
  body .dh-fii-rank-page .dh-stock-name strong,
  body .dh-crypto-rank-page .dh-crypto-name strong{
    display:block!important;
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font-size:1.02rem!important;
    line-height:1.12!important;
    letter-spacing:-.02em!important;
    color:var(--text,#f4f7f6)!important;
  }
  body .dh-stock-rank-page .dh-stock-name span,
  body .dh-fii-rank-page .dh-stock-name span,
  body .dh-crypto-rank-page .dh-crypto-name span{
    display:block!important;
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    margin-top:.18rem!important;
    font-size:.76rem!important;
    line-height:1.25!important;
    color:var(--muted,#9ca3af)!important;
  }
  body .dh-stock-rank-page .dh-stock-row .dh-stock-change,
  body .dh-fii-rank-page .dh-stock-row .dh-stock-change,
  body .dh-crypto-rank-page .dh-crypto-row .dh-crypto-change{
    grid-area:change!important;
    justify-self:end!important;
    align-self:center!important;
    min-width:max-content!important;
    max-width:100%!important;
    white-space:nowrap!important;
    padding:.4rem .62rem!important;
    border-radius:999px!important;
    font-size:.82rem!important;
    line-height:1!important;
    font-weight:900!important;
    background:rgba(255,255,255,.045)!important;
    border:1px solid rgba(255,255,255,.08)!important;
  }
  body .dh-stock-rank-page .dh-stock-change.positive,
  body .dh-fii-rank-page .dh-stock-change.positive,
  body .dh-crypto-rank-page .dh-crypto-change.positive{
    color:#00e887!important;
    background:rgba(0,232,138,.09)!important;
    border-color:rgba(0,232,138,.22)!important;
  }
  body .dh-stock-rank-page .dh-stock-change.negative,
  body .dh-fii-rank-page .dh-stock-change.negative,
  body .dh-crypto-rank-page .dh-crypto-change.negative{
    color:#ff6b6b!important;
    background:rgba(239,68,68,.09)!important;
    border-color:rgba(239,68,68,.20)!important;
  }

  body .dh-ranking-mobile-metrics{
    grid-area:mobilemetrics!important;
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:.64rem!important;
    width:100%!important;
    min-width:0!important;
    margin-top:.1rem!important;
  }
  body .dh-ranking-mobile-metric{
    min-width:0!important;
    width:100%!important;
    max-width:100%!important;
    min-height:70px!important;
    padding:.72rem .68rem!important;
    border-radius:17px!important;
    background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.025))!important;
    border:1px solid rgba(255,255,255,.075)!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    justify-content:center!important;
    gap:.22rem!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
  }
  body .dh-ranking-mobile-metric small{
    display:block!important;
    max-width:100%!important;
    color:#8f9aa8!important;
    font-size:.58rem!important;
    font-weight:900!important;
    letter-spacing:.07em!important;
    line-height:1.1!important;
    text-transform:uppercase!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  body .dh-ranking-mobile-metric strong{
    display:block!important;
    max-width:100%!important;
    color:#f4f7f6!important;
    font-family:'JetBrains Mono','Space Grotesk',monospace!important;
    font-size:clamp(.72rem,2.65vw,.88rem)!important;
    line-height:1.18!important;
    font-weight:800!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
  }

  body .dh-ranking-mobile-hint{
    display:inline-flex!important;
    align-items:center!important;
    gap:.45rem!important;
    width:auto!important;
    margin:.25rem 0 .85rem!important;
    padding:.5rem .7rem!important;
    border:1px solid rgba(0,232,138,.18)!important;
    border-radius:999px!important;
    background:rgba(0,232,138,.055)!important;
    color:var(--muted,#9ca3af)!important;
    font-size:.78rem!important;
    line-height:1.2!important;
  }
  body .dh-ranking-mobile-hint::after{
    content:"→"!important;
    color:var(--g,#00e887)!important;
    font-weight:900!important;
  }

  /* Termômetro depois do ranking */
  body .dh-stock-market-section,
  body .dh-crypto-market-section{
    padding-top:1.3rem!important;
    padding-bottom:1.5rem!important;
  }
  body .dh-stock-market-head,
  body .dh-crypto-market-head{margin-bottom:.75rem!important;}
  body .dh-stock-market-head h2,
  body .dh-crypto-market-head h2{
    font-size:1.35rem!important;
    line-height:1.15!important;
  }
  body .dh-stock-market-head p,
  body .dh-crypto-market-head p{
    font-size:.9rem!important;
    line-height:1.45!important;
  }
  body .dh-stock-market-grid,
  body .dh-crypto-stats-grid{
    gap:.75rem!important;
    padding-top:.25rem!important;
    padding-bottom:.35rem!important;
  }
  body .dh-stock-stat,
  body .dh-crypto-stat{
    flex-basis:68%!important;
    min-height:112px!important;
    border-radius:22px!important;
    padding:1rem!important;
    background:
      radial-gradient(circle at 100% 0%,rgba(0,232,138,.09),transparent 34%),
      linear-gradient(180deg,rgba(255,255,255,.045),rgba(13,17,23,.98))!important;
    border:1px solid rgba(255,255,255,.075)!important;
  }
  body .dh-stock-stat small,
  body .dh-crypto-stat small{
    font-size:.68rem!important;
    letter-spacing:.065em!important;
  }
  body .dh-stock-stat b,
  body .dh-crypto-stat b{
    font-size:1.22rem!important;
    line-height:1.15!important;
  }
  body .dh-stock-stat em,
  body .dh-crypto-stat em{
    font-size:.74rem!important;
    line-height:1.35!important;
  }

  /* TradingView menos dominante */
  body .dh-stock-tv-box,
  body .dh-crypto-tv-box{
    border-radius:24px!important;
    padding:1rem!important;
  }
  body .dh-stock-tv-head h2,
  body .dh-tv-headline h3,
  body .dh-crypto-tv-box h3{
    font-size:1.22rem!important;
    line-height:1.18!important;
  }
  body .dh-stock-tv-head p,
  body .dh-tv-headline p,
  body .dh-crypto-tv-box p{
    font-size:.9rem!important;
    line-height:1.5!important;
  }
  body .dh-tv-toolbar{gap:.65rem!important;}
  body .dh-tv-expand-btn{
    min-height:42px!important;
    padding:.68rem .86rem!important;
    border-radius:14px!important;
    font-size:.82rem!important;
  }
  body .dh-tv-widget-wrap{
    min-height:340px!important;
    max-height:430px!important;
    border-radius:18px!important;
    overflow:hidden!important;
  }
  body .dh-tv-note{
    font-size:.78rem!important;
    line-height:1.45!important;
  }

  /* CTA pós-ranking */
  body .dh-ranking-quick-cta{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:.9rem!important;
    margin-top:1rem!important;
    padding:1.05rem!important;
    border-radius:22px!important;
  }
  body .dh-ranking-quick-cta h3{
    font-size:1.08rem!important;
    line-height:1.18!important;
  }
  body .dh-ranking-quick-cta p{
    font-size:.9rem!important;
    line-height:1.5!important;
  }
  body .dh-ranking-quick-cta .btn-primary{
    width:100%!important;
    justify-content:center!important;
    min-height:46px!important;
  }

  /* Hubs /acoes /fiis /criptomoedas */
  body .dh-topic-hub .dh-topic-hero{
    padding-top:1.35rem!important;
    padding-bottom:1.1rem!important;
  }
  body .dh-topic-hub .dh-topic-hero h1{
    font-size:clamp(1.7rem,7vw,2.3rem)!important;
    line-height:1.07!important;
    letter-spacing:-.05em!important;
  }
  body .dh-topic-hub .dh-topic-hero p{
    font-size:.96rem!important;
    line-height:1.55!important;
  }
  body .dh-topic-hub .dh-topic-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:.65rem!important;
  }
  body .dh-topic-hub .dh-topic-actions a{
    width:100%!important;
    justify-content:center!important;
  }
  body .dh-topic-hub .dh-topic-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:1rem!important;
  }
  body .dh-topic-hub .dh-topic-main-card,
  body .dh-topic-hub .dh-topic-side-card{
    border-radius:22px!important;
    padding:1.05rem!important;
  }
  body .dh-topic-hub .dh-topic-main-card h2{
    font-size:1.25rem!important;
    line-height:1.2!important;
  }
  body .dh-topic-hub .dh-topic-list{gap:.65rem!important;}
  body .dh-topic-hub .dh-topic-side-card a{
    min-height:44px!important;
    border-radius:14px!important;
  }
  body .dh-topic-hub .dh-hub-support-grid,
  body .dh-topic-hub .dh-topic-support-grid,
  body .dh-topic-hub .dh-stock-how-grid,
  body .dh-topic-hub .dh-crypto-how-grid{
    display:flex!important;
    overflow-x:auto!important;
    gap:.85rem!important;
    scroll-snap-type:x proximity!important;
    -webkit-overflow-scrolling:touch!important;
    padding-bottom:.35rem!important;
  }
  body .dh-topic-hub .dh-hub-support-grid > *,
  body .dh-topic-hub .dh-topic-support-grid > *,
  body .dh-topic-hub .dh-stock-how-grid > *,
  body .dh-topic-hub .dh-crypto-how-grid > *{
    flex:0 0 84%!important;
    width:84%!important;
    max-width:84%!important;
    scroll-snap-align:start!important;
  }

  /* Posts relacionados */
  body .dh-section .dh-card-carousel-track > .dh-topic-post-card.post-card{
    flex-basis:84vw!important;
    width:84vw!important;
    max-width:84vw!important;
    min-width:260px!important;
  }
  body .dh-topic-post-card.post-card .post-title{font-size:1.02rem!important;}
  body .dh-topic-post-card.post-card .post-excerpt{font-size:.88rem!important;}

  body .dh-stock-disclaimer,
  body .dh-crypto-disclaimer,
  body .dh-fii-rank-page .dh-stock-disclaimer{
    font-size:.82rem!important;
    line-height:1.55!important;
    margin-top:1rem!important;
    color:var(--muted,#9ca3af)!important;
  }
}

/* Fallback quando o navegador touch renderiza com viewport ampliado. */
html.dh-touch-ranking body .dh-stock-rank-page,
html.dh-touch-ranking body .dh-fii-rank-page,
html.dh-touch-ranking body .dh-crypto-rank-page{
  display:flex!important;
  flex-direction:column!important;
}
html.dh-touch-ranking body .dh-stock-rank-page > .dh-stock-hero,
html.dh-touch-ranking body .dh-fii-rank-page > .dh-stock-hero,
html.dh-touch-ranking body .dh-crypto-rank-page > .dh-crypto-hero{order:1!important;}
html.dh-touch-ranking body .dh-stock-rank-page > #ranking-acoes,
html.dh-touch-ranking body .dh-fii-rank-page > #ranking-fiis,
html.dh-touch-ranking body .dh-crypto-rank-page > #ranking-cripto{order:2!important;}
html.dh-touch-ranking body .dh-stock-rank-page > .dh-stock-market-section,
html.dh-touch-ranking body .dh-fii-rank-page > .dh-stock-market-section,
html.dh-touch-ranking body .dh-crypto-rank-page > .dh-crypto-market-section{order:3!important;}
html.dh-touch-ranking body .dh-stock-rank-page > #grafico-acoes,
html.dh-touch-ranking body .dh-fii-rank-page > #grafico-fiis,
html.dh-touch-ranking body .dh-crypto-rank-page > #grafico-cripto{order:4!important;}

html.dh-touch-ranking body .dh-stock-rank-page #dh-stock-ranking-body,
html.dh-touch-ranking body .dh-fii-rank-page #dh-fii-ranking-body,
html.dh-touch-ranking body .dh-crypto-rank-page #dh-crypto-ranking-body{
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:.95rem!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  padding:.95rem .95rem 1rem!important;
  scroll-snap-type:x proximity!important;
  -webkit-overflow-scrolling:touch!important;
  scrollbar-width:none!important;
}
html.dh-touch-ranking body .dh-stock-rank-page #dh-stock-ranking-body>.dh-stock-row,
html.dh-touch-ranking body .dh-fii-rank-page #dh-fii-ranking-body>.dh-stock-row,
html.dh-touch-ranking body .dh-crypto-rank-page #dh-crypto-ranking-body>.dh-crypto-row{
  flex:0 0 min(86vw,520px)!important;
  width:min(86vw,520px)!important;
  max-width:min(86vw,520px)!important;
  min-width:280px!important;
  min-height:176px!important;
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr) auto!important;
  grid-template-areas:"rank asset change" "mobilemetrics mobilemetrics mobilemetrics"!important;
  gap:.85rem!important;
  align-items:center!important;
  padding:1rem!important;
  border-radius:24px!important;
  background:
    radial-gradient(circle at 100% 0%,rgba(0,232,138,.10),transparent 30%),
    linear-gradient(180deg,rgba(255,255,255,.04),rgba(13,17,23,.98))!important;
  box-shadow:0 14px 38px rgba(0,0,0,.26)!important;
  scroll-snap-align:start!important;
  overflow:hidden!important;
}
html.dh-touch-ranking body .dh-stock-rank-page .dh-stock-row>.dh-stock-price,
html.dh-touch-ranking body .dh-stock-rank-page .dh-stock-row>.dh-stock-cap,
html.dh-touch-ranking body .dh-stock-rank-page .dh-stock-row>.dh-stock-vol,
html.dh-touch-ranking body .dh-fii-rank-page .dh-stock-row>.dh-stock-price,
html.dh-touch-ranking body .dh-fii-rank-page .dh-stock-row>.dh-stock-cap,
html.dh-touch-ranking body .dh-fii-rank-page .dh-stock-row>.dh-stock-vol,
html.dh-touch-ranking body .dh-crypto-rank-page .dh-crypto-row>.dh-crypto-price,
html.dh-touch-ranking body .dh-crypto-rank-page .dh-crypto-row>.dh-crypto-cap,
html.dh-touch-ranking body .dh-crypto-rank-page .dh-crypto-row>.dh-crypto-vol{display:none!important;}
html.dh-touch-ranking body .dh-ranking-mobile-metrics{
  grid-area:mobilemetrics!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:.64rem!important;
  width:100%!important;
}
html.dh-touch-ranking body .dh-ranking-mobile-metric{
  min-width:0!important;
  min-height:70px!important;
  padding:.72rem .68rem!important;
  border-radius:17px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.025))!important;
  border:1px solid rgba(255,255,255,.075)!important;
  overflow:hidden!important;
}
html.dh-touch-ranking body .dh-ranking-mobile-metric small,
html.dh-touch-ranking body .dh-ranking-mobile-metric strong{
  display:block!important;
  max-width:100%!important;
  overflow:hidden!important;
}
html.dh-touch-ranking body .dh-ranking-mobile-metric small{
  color:#8f9aa8!important;
  font-size:.58rem!important;
  font-weight:900!important;
  letter-spacing:.07em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
}
html.dh-touch-ranking body .dh-ranking-mobile-metric strong{
  color:#f4f7f6!important;
  font-family:'JetBrains Mono','Space Grotesk',monospace!important;
  font-size:clamp(.72rem,2.65vw,.88rem)!important;
  line-height:1.18!important;
  font-weight:800!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}

@media (max-width:480px){
  body .dh-stock-rank-page #dh-stock-ranking-body>.dh-stock-row,
  body .dh-fii-rank-page #dh-fii-ranking-body>.dh-stock-row,
  body .dh-crypto-rank-page #dh-crypto-ranking-body>.dh-crypto-row,
  html.dh-touch-ranking body .dh-stock-rank-page #dh-stock-ranking-body>.dh-stock-row,
  html.dh-touch-ranking body .dh-fii-rank-page #dh-fii-ranking-body>.dh-stock-row,
  html.dh-touch-ranking body .dh-crypto-rank-page #dh-crypto-ranking-body>.dh-crypto-row{
    flex-basis:88vw!important;
    width:88vw!important;
    max-width:88vw!important;
    min-height:172px!important;
    padding:.92rem!important;
  }
  body .dh-ranking-mobile-metrics,
  html.dh-touch-ranking body .dh-ranking-mobile-metrics{gap:.55rem!important;}
  body .dh-ranking-mobile-metric,
  html.dh-touch-ranking body .dh-ranking-mobile-metric{
    min-height:66px!important;
    padding:.66rem .56rem!important;
  }
  body .dh-tv-widget-wrap{min-height:310px!important;max-height:390px!important;}
  body .dh-stock-stat,
  body .dh-crypto-stat{flex-basis:74%!important;}
  body .dh-ranking-quick-cta{padding:1rem!important;}
  body .dh-section .dh-card-carousel-track > .dh-topic-post-card.post-card{
    flex-basis:86vw!important;
    width:86vw!important;
    max-width:86vw!important;
  }
}



/* ════════════════════════════════════════
   V153 — Leitura Mobile Premium
   Objetivo: aumentar legibilidade de posts/textos longos no celular.
   Escopo seguro: não altera rankings, APIs, quiz, Modo Foco ou dados.
════════════════════════════════════════ */

@media (max-width: 900px) {
  body.single-post .dh-post-content,
  body.single-post .entry-content,
  body.single-post article,
  body.single-post .post-content {
    font-size: 20px !important;
    line-height: 1.82 !important;
  }

  body.single-post .dh-post-content p,
  body.single-post .entry-content p,
  body.single-post article p,
  body.single-post .post-content p {
    font-size: 20px !important;
    line-height: 1.82 !important;
    margin-bottom: 1.35em !important;
    color: #d8dee6 !important;
  }

  body.single-post .dh-post-content li,
  body.single-post .entry-content li,
  body.single-post article li,
  body.single-post .post-content li {
    font-size: 20px !important;
    line-height: 1.78 !important;
    margin-bottom: .7em !important;
  }

  body.single-post .dh-post-content h2,
  body.single-post .entry-content h2,
  body.single-post article h2,
  body.single-post .post-content h2 {
    font-size: clamp(1.75rem, 7vw, 2.35rem) !important;
    line-height: 1.16 !important;
    letter-spacing: -.045em !important;
    margin-top: 1.55em !important;
    margin-bottom: .65em !important;
  }

  body.single-post .dh-post-content h3,
  body.single-post .entry-content h3,
  body.single-post article h3,
  body.single-post .post-content h3 {
    font-size: clamp(1.35rem, 5.6vw, 1.75rem) !important;
    line-height: 1.2 !important;
    letter-spacing: -.03em !important;
    margin-top: 1.35em !important;
    margin-bottom: .55em !important;
  }

  body.single-post .dh-post-content h4,
  body.single-post .entry-content h4,
  body.single-post article h4,
  body.single-post .post-content h4 {
    font-size: 1.18rem !important;
    line-height: 1.28 !important;
    margin-top: 1.2em !important;
    margin-bottom: .5em !important;
  }

  body.single-post .dh-post-content strong,
  body.single-post .entry-content strong,
  body.single-post article strong,
  body.single-post .post-content strong {
    color: #f4f7f6 !important;
    font-weight: 850 !important;
  }

  body.single-post .dh-post-content a,
  body.single-post .entry-content a,
  body.single-post article a,
  body.single-post .post-content a {
    text-underline-offset: .18em !important;
    text-decoration-thickness: .08em !important;
  }

  body.single-post .dh-note,
  body.single-post .dh-alert,
  body.single-post blockquote,
  body.single-post .wp-block-quote {
    font-size: 19px !important;
    line-height: 1.72 !important;
    padding: 1.15rem !important;
    border-radius: 20px !important;
  }

  body.single-post .wp-block-image,
  body.single-post .dh-post-content figure,
  body.single-post .entry-content figure {
    margin-top: 1.35rem !important;
    margin-bottom: 1.35rem !important;
  }

  body.single-post .wp-block-image figcaption,
  body.single-post .dh-post-content figcaption,
  body.single-post .entry-content figcaption {
    font-size: .9rem !important;
    line-height: 1.5 !important;
  }

  body.single-post .dh-post-hero h1,
  body.single-post .post-hero h1,
  body.single-post h1.entry-title {
    font-size: clamp(2.15rem, 10vw, 3rem) !important;
    line-height: 1.08 !important;
    letter-spacing: -.06em !important;
  }

  body.single-post .dh-post-hero p,
  body.single-post .post-hero p,
  body.single-post .dh-post-excerpt {
    font-size: 1.08rem !important;
    line-height: 1.62 !important;
  }

  body.single-post .post-meta,
  body.single-post .dh-post-meta,
  body.single-post .entry-meta {
    font-size: .86rem !important;
    line-height: 1.45 !important;
  }
}

@media (max-width: 900px) {
  body.page:not(.dh-stock-rank-page):not(.dh-fii-rank-page):not(.dh-crypto-rank-page) .dh-topic-main-card p,
  body.page:not(.dh-stock-rank-page):not(.dh-fii-rank-page):not(.dh-crypto-rank-page) .dh-topic-main-card li,
  body.page:not(.dh-stock-rank-page):not(.dh-fii-rank-page):not(.dh-crypto-rank-page) .dh-section p {
    font-size: 18px !important;
    line-height: 1.72 !important;
  }

  body.page .dh-topic-main-card h2,
  body.page .dh-section h2 {
    line-height: 1.14 !important;
  }
}

@media (max-width: 420px) {
  body.single-post .dh-post-content,
  body.single-post .entry-content,
  body.single-post article,
  body.single-post .post-content,
  body.single-post .dh-post-content p,
  body.single-post .entry-content p,
  body.single-post article p,
  body.single-post .post-content p,
  body.single-post .dh-post-content li,
  body.single-post .entry-content li,
  body.single-post article li,
  body.single-post .post-content li {
    font-size: 19px !important;
    line-height: 1.78 !important;
  }

  body.single-post .dh-post-hero h1,
  body.single-post .post-hero h1,
  body.single-post h1.entry-title {
    font-size: clamp(2rem, 10.5vw, 2.75rem) !important;
  }

  body.page:not(.dh-stock-rank-page):not(.dh-fii-rank-page):not(.dh-crypto-rank-page) .dh-topic-main-card p,
  body.page:not(.dh-stock-rank-page):not(.dh-fii-rank-page):not(.dh-crypto-rank-page) .dh-topic-main-card li,
  body.page:not(.dh-stock-rank-page):not(.dh-fii-rank-page):not(.dh-crypto-rank-page) .dh-section p {
    font-size: 17.5px !important;
    line-height: 1.68 !important;
  }
}

@media (max-width: 900px) {
  body .dh-stock-rank-page p,
  body .dh-fii-rank-page p,
  body .dh-crypto-rank-page p,
  body .dh-calculator-page p,
  body .dh-quiz-page p {
    font-size: inherit;
  }
}



/* ════════════════════════════════════════
   V154 — Leitura Mobile Force Fix
   Correção: aplica fonte maior diretamente na estrutura real do single.php:
   .dh-post-page .dh-post-layout .dh-post-content
════════════════════════════════════════ */

@media (max-width: 900px) {
  body.single-post .dh-post-page .dh-post-layout .dh-post-content,
  body.single-post .dh-post-page .dh-post-layout .dh-post-content > *,
  body.single-post .dh-post-page .dh-post-layout .dh-post-content p,
  body.single-post .dh-post-page .dh-post-layout .dh-post-content li {
    font-size: 20px !important;
    line-height: 1.86 !important;
  }

  body.single-post .dh-post-page .dh-post-layout .dh-post-content p {
    margin-bottom: 1.45em !important;
    color: #d9e0e8 !important;
  }

  body.single-post .dh-post-page .dh-post-layout .dh-post-content li {
    margin-bottom: .85em !important;
  }

  body.single-post .dh-post-page .dh-post-layout .dh-post-content ul,
  body.single-post .dh-post-page .dh-post-layout .dh-post-content ol {
    padding-left: 1.25em !important;
    margin-top: 1rem !important;
    margin-bottom: 1.45rem !important;
  }

  body.single-post .dh-post-page .dh-post-layout .dh-post-content h2 {
    font-size: clamp(2rem, 8.2vw, 2.65rem) !important;
    line-height: 1.14 !important;
    letter-spacing: -.055em !important;
    margin-top: 1.65em !important;
    margin-bottom: .7em !important;
  }

  body.single-post .dh-post-page .dh-post-layout .dh-post-content h3 {
    font-size: clamp(1.5rem, 6.2vw, 1.95rem) !important;
    line-height: 1.18 !important;
    letter-spacing: -.04em !important;
    margin-top: 1.45em !important;
    margin-bottom: .6em !important;
  }

  body.single-post .dh-post-page .dh-post-layout .dh-post-content h4 {
    font-size: 1.25rem !important;
    line-height: 1.25 !important;
  }

  body.single-post .dh-post-page .dh-post-layout .dh-post-content strong,
  body.single-post .dh-post-page .dh-post-layout .dh-post-content b {
    font-weight: 900 !important;
    color: #f4f7f6 !important;
  }

  body.single-post .dh-post-page .dh-post-layout .dh-post-content blockquote,
  body.single-post .dh-post-page .dh-post-layout .dh-post-content .wp-block-quote,
  body.single-post .dh-post-page .dh-post-layout .dh-post-content .dh-note,
  body.single-post .dh-post-page .dh-post-layout .dh-post-content .dh-alert {
    font-size: 19.5px !important;
    line-height: 1.78 !important;
    padding: 1.15rem !important;
    border-radius: 20px !important;
  }

  body.single-post .dh-post-page .dh-post-layout .dh-post-content figcaption,
  body.single-post .dh-post-page .dh-post-layout .dh-post-content small {
    font-size: .92rem !important;
    line-height: 1.5 !important;
  }

  body.single-post .dh-post-hero h1 {
    font-size: clamp(2.25rem, 10.8vw, 3.15rem) !important;
    line-height: 1.06 !important;
    letter-spacing: -.065em !important;
  }

  body.single-post .dh-post-subtitle {
    font-size: 1.1rem !important;
    line-height: 1.62 !important;
  }

  /* Evita que cards/CTAs dentro do post herdem fonte gigante demais */
  body.single-post .dh-post-page .dh-post-layout .dh-post-content .btn-primary,
  body.single-post .dh-post-page .dh-post-layout .dh-post-content .btn-secondary,
  body.single-post .dh-post-page .dh-post-layout .dh-post-content button,
  body.single-post .dh-post-page .dh-post-layout .dh-post-content input,
  body.single-post .dh-post-page .dh-post-layout .dh-post-content select,
  body.single-post .dh-post-page .dh-post-layout .dh-post-content textarea {
    font-size: 1rem !important;
    line-height: 1.3 !important;
  }
}

@media (max-width: 420px) {
  body.single-post .dh-post-page .dh-post-layout .dh-post-content,
  body.single-post .dh-post-page .dh-post-layout .dh-post-content > *,
  body.single-post .dh-post-page .dh-post-layout .dh-post-content p,
  body.single-post .dh-post-page .dh-post-layout .dh-post-content li {
    font-size: 20px !important;
    line-height: 1.84 !important;
  }

  body.single-post .dh-post-hero h1 {
    font-size: clamp(2.15rem, 11vw, 2.9rem) !important;
  }
}
