.gfm-markdown pre{overflow:auto;padding:12px;background:#f6f8fa;border-radius:6px}
.gfm-markdown code{font-family:ui-monospace,Menlo,Consolas,monospace}
.gfm-markdown table{border-collapse:collapse;width:100%}
.gfm-markdown th,.gfm-markdown td{border:1px solid #e2e8f0;padding:6px 8px;text-align:left}
.gfm-markdown blockquote{border-left:4px solid #e2e8f0;margin:8px 0;padding:8px 12px;color:#475569;background:#fafafa}
.gfm-markdown img{max-width:100%;height:auto;display:block;margin:16px auto;border-radius:6px}
.gfm-markdown h4,.gfm-markdown h5,.gfm-markdown h6{font-size:1.05em;font-weight:600;color:#0f172a;margin:18px 0 8px}
/* Responsive, readable, swipeable tables */
.gfm-markdown table {
  display: block;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  border-collapse: collapse;
  max-width: 100%;
  width: max-content;   /* keep natural column widths */
  min-width: 100%;      /* but never smaller than viewport */
}

/* Keep text readable (no forced wrapping) */
.gfm-markdown th,
.gfm-markdown td {
  white-space: nowrap;
  word-break: normal;
  overflow-wrap: normal;
  padding: 8px 10px;
  vertical-align: top;
  line-height: 1.35;
  font-size: 14px;
}

/* Helpful minimum widths per column (tune these) */
.gfm-markdown th:nth-child(1), .gfm-markdown td:nth-child(1) { min-width: 110px; } /* Model */
.gfm-markdown th:nth-child(2), .gfm-markdown td:nth-child(2) { min-width: 120px; } /* Flow Range */
.gfm-markdown th:nth-child(3), .gfm-markdown td:nth-child(3) { min-width: 120px; } /* Meter */
.gfm-markdown th:nth-child(4), .gfm-markdown td:nth-child(4) { min-width: 120px; } /* Power */
.gfm-markdown th:nth-child(5), .gfm-markdown td:nth-child(5) { min-width: 220px; } /* Key Options */
.gfm-markdown th:nth-child(6), .gfm-markdown td:nth-child(6) { min-width: 180px; } /* Best For */

/* Optional sugar: sticky header + first column for big tables */
@media (max-width: 768px) {
  .gfm-markdown thead th {
    position: sticky; top: 0; background: #fff;
    box-shadow: 0 1px 0 #e5e7eb;
    z-index: 2;
  }
  .gfm-markdown tbody th,
  .gfm-markdown td:first-child,
  .gfm-markdown th:first-child {
    position: sticky; left: 0; background: #fff; z-index: 1;
    box-shadow: 1px 0 0 #e5e7eb;
  }
}

/* Subtle scrollbar hint */
.gfm-markdown table::-webkit-scrollbar { height: 8px; }
.gfm-markdown table::-webkit-scrollbar-thumb { background: rgba(0,0,0,.15); border-radius: 4px; }
