table { border-collapse: collapse; } tr { padding: 1rem 0 0 0; } tr:first-child { padding: 0; } td { /* padding-left: 1rem; */ padding: .1rem .5rem .2rem .5rem; vertical-align: top; } .vcenter { vertical-align: middle; } /* Edge cells of a table with no outer vertical line (classes emitted by table.py): the outer padding is dropped so the cell text aligns with the text margin. With an outer line the padding stays -- text against a border looks worse than text inset from a margin. The tex counterpart is @{} in the column spec. */ .Fl { padding-left: 0; } .Fr { padding-right: 0; } .line_top { border-top: 1px black solid; } .line_bottom { border-bottom: 1px black solid; } .pad_top { padding-top: .3rem; } .pad_bottom { padding-bottom: .3rem; } :root { --cell-border: 1px black solid; } .Bt { border-top: var(--cell-border); } .Br { border-right: var(--cell-border); } .Bb { border-bottom: var(--cell-border); } .Bl { border-left: var(--cell-border); } .Hl { text-align: left; } .Hc { text-align: center; } .Hr { text-align: right; } /* A cell of a 'fit' column mixed with sized columns: nowrap floors the column at its widest entry (the tex \widthof semantics). In a full-width table (fractions/'*') the Wpct 1% width is added -- the classic shrink idiom, so the column survives surplus distribution and the extra window width flows to the sized columns. In a content-sized 'fill' table Wpct must NOT be used: a percentage cell blows an auto-width table up to full width. */ .Wfit { white-space: nowrap; } .Wpct { width: 1%; } .cell_arrow { padding: 1rem; font-size: 1.5rem; color: rgb(25%,25%,25%); }