:root { --spacing: 12px; --spacing-half: calc(0.5 * var(--spacing)); --spacing-2: calc(2 * var(--spacing)); --spacing-4: calc(4 * var(--spacing)); --font-sans-serif: sans-serif; /* Base */ --color-background: hsl(220, 23%, 95%); /* Crust */ --color-background-accent: hsl(220, 21%, 89%); /* Text */ --color-text: hsl(234, 16%, 35%); /* Surface2 */ --color-border: hsl(227, 12%, 71%); /* Peach */ --link-color: hsl(22, 99%, 52%); } @media (prefers-color-scheme: dark) { :root { --color-background: hsl(240, 21%, 15%); --color-background-accent: hsl(240, 23%, 9%); --color-text: hsl(226, 64%, 88%); --color-border: hsl(233, 12%, 39%); --link-color: hsl(23, 92%, 75%); } } html { margin: 0; padding: 0; font-size: 16px; } body { padding: 0 var(--spacing); display: grid; grid-template-columns: 1fr min(1024px, 100%) 1fr; gap: var(--spacing-4) var(--spacing); background-color: var(--color-background); color: var(--color-text); font-family: var(--font-sans-serif); font-size: 100%; } a { color: var(--link-color); } header, main, footer { grid-column: 2; } table { width: 100%; border-collapse: collapse; border: 1px solid var(--color-border); } thead { border-bottom: 1px solid var(--color-border); background: var(--color-background-accent); } tbody tr:nth-child(even) { background: var(--color-background-accent); } tfoot { border-bottom: 1px solid var(--color-border); } th { text-align: left; } th, td { border-spacing: 0; padding: var(--spacing-half); }