:root {
  --ground: #F7F8F8; --ink: #121A1D; --muted: #64767C; --rule: #D5DDDE; --accent: #0C6F79;
  --font: "Helvetica Neue", Arial, sans-serif; --mono: ui-monospace, Menlo, monospace;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) { --ground: #092653; --ink: #E6EEF5; --muted: #A3BFD8; --rule: #24406B; --accent: #55C3DB; }
}
:root[data-theme="dark"] { --ground: #092653; --ink: #E6EEF5; --muted: #A3BFD8; --rule: #24406B; --accent: #55C3DB; }
* { box-sizing: border-box; }
body { margin: 0; background: var(--ground); color: var(--ink); font: 18px/1.55 var(--font); }
main { max-width: 760px; margin: 0 auto; padding: 64px 16px 96px; }
h1 { font-size: 44px; line-height: 1.1; letter-spacing: -0.02em; margin: 0 0 8px; }
h2 { font-size: 15px; font-family: var(--mono); letter-spacing: 0.14em; text-transform: uppercase; color: var(--muted); margin: 56px 0 16px; }
p.lead { color: var(--muted); margin: 0; }
a { color: var(--accent); }
ul.talks { list-style: none; padding: 0; margin: 0; }
ul.talks li { border-top: 1px solid var(--rule); padding: 18px 0; }
ul.talks .title { font-size: 21px; font-weight: 700; }
ul.talks .meta { color: var(--muted); font-size: 15px; font-family: var(--mono); }
ul.talks .links a { margin-right: 18px; }
