/* This styles ONLY the host/wrapper (not internals). Safe for all themes. */
.tcv2-block { display:block; margin: 18px 0; }
.tcv2-host  { display:block; max-width:100%; box-sizing:border-box;
              contain: content; /* avoids parent transforms affecting internals */
              font-size: 16px;  /* iOS: prevents auto-zoom, stabilizes line-height */
}

/* If someone still drops it inside <p>, force block flow */
p > .tcv2-host { display:block; }

/* Avoid theme line-height / text transforms on the host */
.tcv2-host { line-height: normal; text-transform: none; letter-spacing: normal; }

/* Common WP editor wrappers – ensure no overflow clipping */
.tcv2-block, .tcv2-host {
  overflow: visible !important;
}

/* Optional: compact vertical rhythm if used in tight sidebars */
@media (max-width: 480px){
  .tcv2-block { margin: 12px 0; }
}



/* Dry-matter calculator spacing polish */
.tcv2-host .dm-card h3{ margin:0 0 14px; }

.tcv2-host .dm-results{ display:grid; gap:16px; }
.tcv2-host .dm-table{ width:100%; border-collapse:separate; border-spacing:0 10px; }
.tcv2-host .dm-table th{ font-weight:600; color:var(--tc-muted,#475569); }
.tcv2-host .dm-table td,
.tcv2-host .dm-table th{ padding:10px 12px; background:transparent; }

.tcv2-host .dm-row{
  display:grid; grid-template-columns:1fr auto; gap:12px;
  padding:12px 14px; border-radius:12px; background:rgba(2,132,199,.06);
}
.tcv2-host .dm-row.header{ background:transparent; padding:0; }

@media (min-width: 800px){
  .tcv2-host .dm-compare{
    display:grid; grid-template-columns:1fr 1fr; gap:18px;
  }
}

/* Global comfort for calculator buttons (mobile-first) */
.tcx .tc-btn{
  min-height: 44px;        /* WCAG-friendly tap target */
  padding: 10px 16px;
  border-radius: 12px;
  font-weight: 600;
}

@media (max-width: 799.98px){
  .tcx .tc-btn{
    width: 100%;
    font-size: 16px;
  }
}

/* Mass-Percent calculator minor polish */
.tcv2-host .mp-card h3{ margin:0 0 12px; }
