* { box-sizing: border-box; }
html { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; }
body { margin: 0; color: #1a1a1a; background: #f7f7f8; }

.site-header {
  display: flex; align-items: center; gap: 2rem;
  padding: 1rem 2rem; background: #111; color: #fff;
}
.site-header .brand { color: #fff; font-weight: 600; text-decoration: none; }
.site-header nav a { color: #ddd; margin-right: 1rem; text-decoration: none; }
.site-header nav a:hover { color: #fff; }

main { max-width: 1100px; margin: 0 auto; padding: 2rem; }
.site-footer { padding: 2rem; text-align: center; color: #777; }

h1 { margin-top: 0; }

.sub-nav { display: flex; gap: 1rem; margin: 1rem 0 2rem; }
.sub-nav a {
  padding: 0.4rem 0.8rem; background: #fff; border: 1px solid #ddd;
  border-radius: 4px; text-decoration: none; color: #333;
}
.sub-nav a:hover { background: #eee; }

table.results, table.list {
  width: 100%; border-collapse: collapse; background: #fff;
  box-shadow: 0 1px 2px rgba(0,0,0,0.05);
}
table.results th, table.results td,
table.list th, table.list td {
  padding: 0.5rem 0.75rem; border-bottom: 1px solid #eee; text-align: left;
  font-size: 0.9rem;
}
table.results th, table.list th {
  background: #fafafa; font-weight: 600; font-size: 0.8rem;
  text-transform: uppercase; letter-spacing: 0.03em; color: #555;
}
table.results tbody tr:hover, table.list tbody tr:hover { background: #fafafa; }

.meta { color: #666; }
.podium { list-style: none; padding: 0; display: flex; gap: 1rem; flex-wrap: wrap; }
.podium li {
  background: #fff; padding: 1rem; border-radius: 6px; min-width: 200px;
  box-shadow: 0 1px 2px rgba(0,0,0,0.05);
}
.podium .time { display: block; font-variant-numeric: tabular-nums; color: #333; }
.podium .gap { color: #c33; font-size: 0.85rem; }

.stage-strip { list-style: none; padding: 0; display: grid;
  grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 0.5rem; }
.stage-strip li { background: #fff; padding: 0.6rem; border-radius: 4px;
  font-size: 0.85rem; }
.stage-strip a { font-weight: 600; text-decoration: none; display: block; }

.branch-list { list-style: none; padding: 0; }
.branch-list li { padding: 1rem; background: #fff; border-radius: 6px;
  margin-bottom: 0.5rem; }

td, th { font-variant-numeric: tabular-nums; }
