@font-face {
  font-family: 'Fira Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/FiraMono-Regular.woff2') format('woff2');
}

@font-face {
  font-family: 'Fira Mono';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/FiraMono-Bold.woff2') format('woff2');
}

body {
  background-color: #dddddd;
  --grid-fg: #cbcbcb;
  background-image: repeating-linear-gradient(var(--grid-fg) 0 1px, transparent 1px 100%),
    repeating-linear-gradient(90deg, var(--grid-fg) 0 1px, transparent 1px 100%);
  background-size: 1ch 1lh;
  margin: 0;
  font-family: 'Fira Mono', monospace;
  line-height: 1.25;
  letter-spacing: 0;
  font-size: 0.75em;
  box-sizing: border-box;
  padding: 2lh 4ch;
  -webkit-tap-highlight-color: transparent;
}

h1 {
  font-size: 1em;
  margin: 0;
  font-weight: 700;
}

h2 {
  margin: 0;
  font-size: 1em;
  font-weight: 700;
  margin-top: 2lh;
}

#back {
  display: inline-block;
  margin-bottom: 2lh;
}

.underline {
  user-select: none;
}

p {
  margin: 0;
  margin-top: 1lh;
}

address {
  margin-left: 2ch;
  font-style: normal;
}

ul {
  margin: 0;
  padding: 0;
}

ul:not(li > ul) {
  margin-top: 1lh;
}

li {
  margin: 0;
  padding: 0;
  margin-left: 4ch;
  list-style-type: none;
}

li::marker {
  content: "* ";
}

a {
  color:#9d0331;
  text-decoration: none;
  outline: none;
  display: inline-block;
}

a:hover, a:focus-visible, a.active {
  background: #9d0331;
  color: #dddddd;
}

::selection {
  background: #5a5a5a;
  color: #ffffff;
}

.table-container {
  overflow-x: auto;
}

table {
  border-collapse: collapse;
  position: relative;
  top: 0.5lh;
  margin-bottom: calc(1lh - var(--border-thickness)); 
  border-spacing: 0;
  --border-thickness: 0.15ch;
}

td, th {
  vertical-align: bottom;
  text-align: left;
  padding: 0;
  margin: 0;
  padding:
    calc(0.5lh - (var(--border-thickness) / 2)) /* top */
    calc(1ch) /* right */
    calc(0.5lh - (var(--border-thickness) / 2)) /* bottom */
    calc(1ch - var(--border-thickness)); /* left */
  border: var(--border-thickness) solid #000000;
  box-sizing: border-box;
  text-wrap: nowrap;
}

.redacted {
  color: #000000;
  background: #000000;
}

dl {
  display: inline-grid;
  grid-template-columns: auto auto;
  column-gap: 1ch;
  margin: 1lh 0;
}

dd {
  margin: 0;
  text-align: right;
}
