/* The legacy palette: maroon text, cream ground, red title banner,
   gold ticket grid, green report rows. */
:root {
  --ink: #4c1b1b;
  --paper: #fffdf2;
  --accent: #eaf2d3;
  --banner: #b8121b;
  --banner-text: #ffffcc;
  --gold: #f6e497;
  --gold-pale: #fcfae1;
}

* { box-sizing: border-box; }

html { overflow-x: hidden; }

body {
  margin: 0 auto;
  max-width: 70rem;
  padding: 0 1rem 3rem;
  /* Legacy set no font, so staff saw the browser's default serif. */
  font-family: "Times New Roman", Times, serif;
  color: var(--ink);
  background: var(--paper);
}

header { margin-bottom: 1.5rem; }

/* The old site's title bar, edge to edge like the original. */
h1.banner {
  margin: 0 calc(50% - 50vw) 0.75rem;
  background: var(--banner);
  color: var(--banner-text);
  font-size: 21px;   /* 16pt */
  line-height: 33px; /* 25pt */
  font-weight: normal;
  text-align: center;
}

nav { display: flex; gap: 1.25rem; align-items: baseline; flex-wrap: wrap; }

a, .linklike { color: var(--ink); }

.linklike {
  background: none;
  border: none;
  padding: 0;
  font: inherit;
  text-decoration: underline;
  cursor: pointer;
}

table { border-collapse: collapse; margin: 1rem 0; }

th, td {
  border: 1px solid var(--ink);
  padding: 0.3rem 0.6rem;
  text-align: left;
}

tbody tr:nth-child(even) { background: var(--accent); }

/* Ticket grid keeps its legacy gold: gold header row, gold/pale
   striping, white lines between rows instead of cell borders. */
table.grid th, table.grid td {
  border: none;
  border-bottom: 1px solid #fff;
}
table.grid thead th { background: var(--gold); }
table.grid tbody tr:nth-child(odd) { background: var(--gold); }
table.grid tbody tr:nth-child(even) { background: var(--gold-pale); }

.flash { padding: 0.5rem 1rem; margin: 0 0 1rem; border: 1px solid var(--ink); }
.flash-error { background: #f6d8d8; }
.flash-success { background: var(--accent); }

form.stacked label { display: block; margin: 0.75rem 0 0.25rem; font-weight: bold; }

form.pickers {
  display: flex;
  gap: 1.25rem;
  align-items: flex-end;
  flex-wrap: wrap;
  margin-bottom: 1rem;
}

form.pickers label {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  font-weight: bold;
}

form.pickers button[type="submit"] { margin-top: 0; }

.scroll-x { overflow-x: auto; }

input.hrs { width: 4.5rem; }

td textarea { width: 14rem; vertical-align: middle; }

.comment { font-style: italic; }

section { margin-bottom: 2.5rem; }

section form { margin: 1rem 0; }

input, select, textarea, button { font: inherit; color: var(--ink); }

button[type="submit"]:not(.linklike) {
  margin-top: 0.75rem;
  padding: 0.35rem 1.25rem;
  background: var(--ink);
  color: var(--paper);
  border: none;
  cursor: pointer;
}
