/* ---------------- Reset ---------------- */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/* ---------------- Base Page ---------------- */
html {
  font-size: 20px;
}

body {
  background: black;
  color: white;
  font-family: system-ui, sans-serif;
  line-height: 1.4;
  padding: 1rem;
}

/* ---------------- Header Nav ---------------- */
nav {
  background: maroon;
  color: white;
  text-align: center;
  padding: 0.6rem 2rem;
  width: fit-content;
  margin: 0 auto 1.5rem auto;
  border-radius: 8px;
  font-size: 1.3rem;
  font-weight: 600;
}

/* ---------------- Layout Container ---------------- */
.container {
  max-width: 800px;
  margin: 0 auto;
  text-align: center;
}

/* ---------------- Headings ---------------- */
h2 {
  margin: 1.5rem 0 1rem;
}

h5 {
  margin-bottom: 1rem;
  font-weight: 500;
}

/* ---------------- Table ---------------- */
table {
  width: 100%;
  margin: 1.5rem auto;
  border-collapse: collapse;
  border: 1px solid white;
  background: rgba(255,255,255,0.03);
}

th,
td {
  border: 1px solid white;
  padding: 0.6rem;
  text-align: center;
}

/* Header row */
th {
  background: #333;
  font-weight: 600;
}

/* Month title row */
thead th {
  background: maroon;
  font-size: 1.1rem;
}

/* Alternate rows for readability */
tbody tr:nth-child(even) {
  background: rgba(255,255,255,0.06);
}

/* Week divider rows */
td[colspan="2"] {
  background: rgba(128,0,0,0.35);
  font-weight: 600;
}

/* ---------------- Link Button ---------------- */
.back-link {
  display: inline-block;
  margin-top: 1.5rem;
  padding: 0.6rem 1.4rem;
  background: maroon;
  color: white;
  text-decoration: none;
  border-radius: 6px;
  transition: 0.2s;
}

.back-link:hover {
  background: #a00000;
}

.back-link:active {
  transform: scale(0.97);
}

/* ---------------- Mobile ---------------- */
@media (max-width: 600px) {
  html {
    font-size: 18px;
  }

  table {
    font-size: 0.9rem;
  }
}