@font-face {
	font-family: 'mspm';
	src: url("./short2.otf?4");
}

o-l {
	text-decoration: overline;
	//text-decoration: underline;
	//text-underline-offset: -0.6em;
}
s-t::after, track::after {
	content: " ";
	white-space: pre-wrap;
	user-select: text;
}
abbr {
	font-variant: small-caps;
	//text-transform: lowercase;
	font-variant-numeric: oldstyle-nums;
}
n-d { /* number-data */
	font-variant: lining-nums tabular-nums;
}
bit-field {
	font-family: monospace;
	word-spacing: -0.5ch;
}
/*bit-field::before {
	content: "[";
	font-family: mspm, serif;
}just type this manually so it's selectable*/

body {
	margin-bottom: 100px;
	image-rendering: crisp-edges;
	background-image: url("./tile32.png");
	background-size: 116px;
	background-size: calc(116px * var(--RX,1) / var(--X,1));
	font-family: /*georgia,*/ serif;
	font-family: mspm, serif;
	/*font-variant-numeric: oldstyle-nums;*/
	/*text-shadow: white 1px 0px, white -1px 0px, white 0px -1px, white 0px 1px; i wish*/
}
p, dl {
	//background: #DEE1DEAA;
	max-width: 7in;
	//text-align: justify;
	margin-left: 8px;
}
h1, h2, h3, th {
	font-family: serif;
}
body > h1 {
	background: beige;
	margin: 12px -8px 21px;
	padding: 8px 8px;
	box-shadow: 0 0 5px black;
	color: #E21;
}
body > h1 img + span {
	display: inline-block;
	vertical-align: middle;
}
body > h1 img {
	margin-right: 10px;
	vertical-align: middle;
}
:target {
	text-decoration: underline blue;
}

table {
	//font-family: serif;
	font-variant-numeric: lining-nums tabular-nums;
}

figure {
	//margin: 16px 24px 0px 32px;
	margin: 16px 8px 0px 16px;
}
figure > table.pinout {
	display: inline-table;
	margin-right: 8px;
	margin-bottom: 16px;
	vertical-align: top;
}

table.port {
	table-layout: fixed;
	font-size: 12px;
	border: 1px solid;
	background: beige;
}
.port td {
	border: 1px solid;
}
.port tr>* {
	height: 40px;
	text-align: center;
}
.port th, .port td {
	box-sizing:border-box;
	width: 40px;
	max-width: 40px;
	min-width: 40px;
	//word-wrap: break-word;
	line-height: 1;
	padding: 0.5px;
}
.port .numbers th {
	height: 1em;
	font-family: courier;
}
.port .narrow td {
	
}
.port .gap {
	border: none;
}

table.pinout {
	border: 2px solid transparent;
	border-width: 0px 2px;
	background: beige;
	box-shadow: 0 0 1px #0008;
}
.pinout td {
	border: 1px solid;
	padding: 0 4px;
}

.pinout th {
	min-width: 3ch;
}
.pinout tr>* {
	text-align: center;
}
.pinout .vcc, .pinout  .gnd {
	border: none;
}

.cont1.cont1 { border-bottom-style: dashed !important; border-bottom-right-radius: 0; }
.cont2.cont2 { border-top-style: dashed !important; border-top-right-radius: 0; }
.pinout td + td {
	border-left: none;
	border-radius: 0 10px 10px 0;
}

.vcc {
	/*border-color: transparent;*/
	background-color: white;
	color: maroon;
}
.gnd {
	background-color: white;
	color: green;
}

.nc {
	background-color: silver;
	color: gray;
}

.portlabel {
	font-size: 2em;
	border: 6px double;
	min-width: 28px;
	padding: 0 2px;
	display: inline-block;
	height: 32px;
	line-height: 32px;
	text-align: center;
	font-family: courier;
	font-weight: normal;
	background: black;
	color: white;
}

.memory-map  {
	table-layout: fixed;
	line-height: 1;
	background: #CCC8;
	text-align: center;
}
.memory-map, .memory-map tr>* {
	border: 1px solid;
	border-collapse: collapse;
}
.memory-map th {
	font-family: monospace;
	background: beige;
	padding: 4px 1px;
}
.memory-map td {
}
.memory-map .mem-cutoff {
	border-style: dashed none dashed solid;
}
.memory-map .space {
	border: none !important;
	background: none !important;
}
.memory-map td[data-mirrors] {
	background-image: linear-gradient(to right, #8C8 calc(100% / var(--m)), #FFF 0);
	/background: repeating-linear-gradient(to right, white, #DEF calc(100% / var(--m)));
}
.memory-map td[data-registers] {
	background-image: linear-gradient(45deg, #8C8 5px, #FFF 0);
	background-origin: border-box;
}
.memory-map dl {
	margin: 0;
	display: grid;
	grid: auto-flow / max-content 1fr;
	margin-left: 3px;
}
.memory-map dt {
	margin: 0;
	grid-column: 1;
}
.memory-map dt::after {
	content: ' = ';
	white-space: pre;
}
.memory-map dd {
	margin: 0;
	grid-column: 2;
	text-align: left;
}
.struct td {
	padding: 1px 1px;
	vertical-align: top;
}
.struct td > b {
	font-size: 18px;
	font-weight: normal;
	text-decoration: underline;
	display: inline-block;
	margin-bottom: 2px;
}

/* "normal" tables */
.table {
	background: #CCC8;
	border-collapse: unset;
	border-spacing: 2px;
	/padding: 3px;
	border: none;
	/box-shadow: 0 0 1px #0008;
}
.table th {
	background: beige;
	padding: 2px 0.25em;
}
.table td {
	padding: 1px 0.25em;
	background: beige;
	border: none;
	/border: 1px solid #8888;
	/border-style: solid none none solid;
}
.table tr:first-child {
}
.table tr:first-child > th {
	border-radius: 5.5px 5.5px 0 0;
	border-bottom: none;
}
.table tr:not(:first-child) > th {
	border-radius: 5.5px 0 0 5.5px;
	border-right: none;
	background: beige;
	font-weight: normal;
	/font-style: italic;
	font-family: mspm, serif;
}
.table tr:first-child > th:first-child {
}
