HTML output
<div class="greater-table">
<style>
#TIPUZXJD7G5EM {
border-collapse: collapse;
font-family: "Roboto", "Open Sans Condensed", "Arial", 'Segoe UI', sans-serif;
font-size: 0.9em;
width: auto;
/* tb and lr
width: fit-content; */
margin: 10px auto;
border: none;
overflow: auto;
margin-left: auto;
margin-right: auto;
}
/* tag formats */
#TIPUZXJD7G5EM caption {
padding: 8px 10px 4px 10px;
font-size: 0.99em;
text-align: center;
font-weight: normal;
caption-side: top;
}
#TIPUZXJD7G5EM thead {
/* top and bottom of header */
border-top: 1px solid #0ff;
border-bottom: 1px solid #0ff;
font-size: 0.99em;
}
#TIPUZXJD7G5EM tbody {
/* bottom of body */
border-bottom: 1px solid #f0f;
}
#TIPUZXJD7G5EM th {
vertical-align: bottom;
padding: 8px 10px 8px 10px;
}
#TIPUZXJD7G5EM td {
/* top, right, bottom left cell padding */
padding: 4px 10px 4px 10px;
vertical-align: top;
}
/* class overrides */
#TIPUZXJD7G5EM .grt-hrule-0 {
border-top: 0px solid #f00;
}
#TIPUZXJD7G5EM .grt-hrule-1 {
border-top: 0px solid #b00;
}
#TIPUZXJD7G5EM .grt-hrule-2 {
border-top: 0px solid #900;
}
/* for the header, there if you have v lines you want h lines
hence use vrule_widths */
#TIPUZXJD7G5EM .grt-bhrule-0 {
border-bottom: 1.5px solid #f00;
}
#TIPUZXJD7G5EM .grt-bhrule-1 {
border-bottom: 1px solid #b00;
}
#TIPUZXJD7G5EM .grt-vrule-index {
border-left: 1.5px solid #0f0;
}
#TIPUZXJD7G5EM .grt-vrule-0 {
border-left: 1.5px solid #0f0;
}
#TIPUZXJD7G5EM .grt-vrule-1 {
border-left: 1px solid #0a0;
}
#TIPUZXJD7G5EM .grt-vrule-2 {
border-left: 0.5px solid #090;
}
#TIPUZXJD7G5EM .grt-left {
text-align: left;
}
#TIPUZXJD7G5EM .grt-center {
text-align: center;
}
#TIPUZXJD7G5EM .grt-right {
text-align: right;
font-variant-numeric: tabular-nums;
}
#TIPUZXJD7G5EM .grt-head {
font-family: "Times New Roman", 'Courier New';
font-size: 0.99em;
}
#TIPUZXJD7G5EM .grt-bold {
font-weight: bold;
}
</style>
<table id="TIPUZXJD7G5EM">
<caption> (id: TIPUZXJD7G5EM)</caption>
<colgroup>
<col style="width: 3.0em;"/>
<col style="width: 4.0em;"/>
<col style="width: 4.5em;"/>
<col style="width: 4.5em;"/>
<col style="width: 5.0em;"/>
<col style="width: 14.5em;"/>
</colgroup>
<thead>
<tr>
<th class="grt-left"></th>
<th class="grt-center grt-bhrule-0 grt-vrule-index" colspan="2">A</th>
<th class="grt-center grt-bhrule-0 grt-vrule-0" colspan="2">B</th>
<th class="grt-center grt-bhrule-0 grt-vrule-0" colspan="1">C</th>
</tr>
<tr>
<th class="grt-left">years!</th>
<th class="grt-center grt-vrule-index" colspan="1">Int</th>
<th class="grt-center grt-vrule-1" colspan="1">Float</th>
<th class="grt-center grt-vrule-0" colspan="1">Float</th>
<th class="grt-center grt-vrule-1" colspan="1">3</th>
<th class="grt-center grt-vrule-0" colspan="1">Longer Text</th>
</tr>
</thead>
<tbody>
<tr>
<td class="grt-left">2000</td>
<td class="grt-right grt-vrule-index">-100,000</td>
<td class="grt-right grt-vrule-1"> 2.389p</td>
<td class="grt-right grt-vrule-0">-1,601.00</td>
<td class="grt-center grt-vrule-1">2025-03-14</td>
<td class="grt-left grt-vrule-0">once upon a time</td>
</tr>
<tr>
<td class="grt-left grt-hrule-0">2001</td>
<td class="grt-right grt-hrule-0 grt-vrule-index">-91,667</td>
<td class="grt-right grt-hrule-0 grt-vrule-1"> 22.217p</td>
<td class="grt-right grt-hrule-0 grt-vrule-0">-1,367.62</td>
<td class="grt-center grt-hrule-0 grt-vrule-1">2025-03-26</td>
<td class="grt-left grt-hrule-0 grt-vrule-0"> risk is hard to define</td>
</tr>
<tr>
<td class="grt-left grt-hrule-0">2002</td>
<td class="grt-right grt-hrule-0 grt-vrule-index">-83,333</td>
<td class="grt-right grt-hrule-0 grt-vrule-1"> 206.619p</td>
<td class="grt-right grt-hrule-0 grt-vrule-0">-1,134.25</td>
<td class="grt-center grt-hrule-0 grt-vrule-1">2025-04-07</td>
<td class="grt-left grt-hrule-0 grt-vrule-0"> not in Kansas anymore</td>
</tr>
<tr>
<td class="grt-left grt-hrule-0">2003</td>
<td class="grt-right grt-hrule-0 grt-vrule-index">-75,000</td>
<td class="grt-right grt-hrule-0 grt-vrule-1"> 1.922n</td>
<td class="grt-right grt-hrule-0 grt-vrule-0">-900.88</td>
<td class="grt-center grt-hrule-0 grt-vrule-1">2025-04-19</td>
<td class="grt-left grt-hrule-0 grt-vrule-0"> neutrinos are hard to detect</td>
</tr>
</tbody>
</table></div>
TeX output
\begin{tikzpicture}[
auto,
transform shape,
nosep/.style={inner sep=0},
table/.style={
matrix of nodes,
row sep=0.125em,
column sep=0.375em,
nodes in empty cells,
nodes={rectangle, scale=0.635, text badly ragged , draw=blue!10},
row 1/.style={nodes={text=black, anchor=north, inner ysep=0, text height=0, text depth=0}},
row 2/.style={nodes={text=black, anchor=south, inner ysep=.2em, minimum height=1.3em, font=\bfseries}},
row 3/.style={nodes={text=black, anchor=south, inner ysep=.2em, minimum height=1.3em, font=\bfseries}},
column 1/.style={nodes={align=left }, text height=0.9em, text depth=0.2em, inner xsep=0.375em, inner ysep=0, text width=3.60em},
column 2/.style={nodes={align=right }, nosep, text width=17.40em},
column 3/.style={nodes={align=right }, nosep, text width=17.40em},
column 4/.style={nodes={align=right }, nosep, text width=17.40em},
column 5/.style={nodes={align=center}, nosep, text width=17.40em},
column 6/.style={nodes={align=left }, nosep, text width=17.40em},
column 7/.style={text height=0.9em, text depth=0.2em, nosep, text width=0em} }]
\matrix (TIPUZXJD7G5EM) [table, ampersand replacement=\&]{
\& \& \& \& \& \& \\
\grtspacer \& A\grtspacer \& \grtspacer \& B\grtspacer \& \grtspacer \& C\grtspacer \& \\
years!\grtspacer \& Int\grtspacer \& Float\grtspacer \& Float\grtspacer \& 3\grtspacer \& Longer Text\grtspacer \& \\
2000 \& -100,000 \& 2.389p \& -1,601.00 \& 2025-03-14 \& once upon a time \& \\
2001 \& -91,667 \& 22.217p \& -1,367.62 \& 2025-03-26 \& risk is hard to define \& \\
2002 \& -83,333 \& 206.619p \& -1,134.25 \& 2025-04-07 \& not in Kansas anymore \& \\
2003 \& -75,000 \& 1.922n \& -900.88 \& 2025-04-19 \& neutrinos are hard to detect \& \\
};
\path[draw, thick] (TIPUZXJD7G5EM-1-1.south west) -- (TIPUZXJD7G5EM-1-7.south east);
\path[draw, semithick] ([yshift=-0.0625em]TIPUZXJD7G5EM-3-1.south west) -- ([yshift=-0.0625em]TIPUZXJD7G5EM-3-7.south east);
\path[draw, thick] ([yshift=-0.3125em]TIPUZXJD7G5EM-7-1.base west) -- ([yshift=-0.3125em]TIPUZXJD7G5EM-7-7.base east);
\path[draw, very thin] ([xshift=-0.1875em, yshift=-0.0625em]TIPUZXJD7G5EM-2-2.south west) -- ([yshift=-0.0625em]TIPUZXJD7G5EM-2-7.south east);
\path[draw, very thin] ([xshift=-0.1875em]TIPUZXJD7G5EM-1-2.south west) -- ([yshift=-0.3125em, xshift=-0.1875em]TIPUZXJD7G5EM-7-2.base west);
\path[draw, ultra thin] ([xshift=0.1875em, yshift=-0.0625em]TIPUZXJD7G5EM-1-3.south east) -- ([yshift=-0.3125em, xshift=0.1875em]TIPUZXJD7G5EM-7-3.base east);
\path[draw, ultra thin] ([xshift=0.1875em, yshift=-0.0625em]TIPUZXJD7G5EM-1-5.south east) -- ([yshift=-0.3125em, xshift=0.1875em]TIPUZXJD7G5EM-7-5.base east);
\end{tikzpicture}