body {
  font-family: system-ui, -apple-system, 'Hiragino Kaku Gothic ProN', sans-serif;
  line-height: 1.8;
  margin: 0;
  color: #222;
}
header, main, footer {
  max-width: 760px;
  margin: 0 auto;
  padding: 0 16px;
}
header {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  padding-top: 20px;
  padding-bottom: 12px;
  border-bottom: 1px solid #ddd;
}
header .brand {
  font-weight: 700;
  font-size: 1.15rem;
}
header a, footer a {
  color: inherit;
  text-decoration: none;
}
nav a {
  margin-left: 16px;
  font-size: 0.9rem;
}
footer {
  margin-top: 48px;
  padding-top: 12px;
  padding-bottom: 32px;
  border-top: 1px solid #ddd;
  font-size: 0.85rem;
  color: #555;
}
/*
 * .post-list, .post-meta, .verified-badge, and .pr-notice used to live in
 * BaseLayout's scoped <style>. Astro's data-astro-cid limited those rules to
 * the layout's own markup, so they never reached page slots or PostLayout.
 * Keep them out of this global file so the public pages match that appearance.
 */

.skip-link {
  position: absolute;
  left: 16px;
  top: 8px;
  padding: 8px 12px;
  background: #111;
  color: #fff;
  text-decoration: none;
  border-radius: 4px;
  z-index: 100;
  transform: translateY(-150%);
}
.skip-link:focus,
.skip-link:focus-visible {
  transform: none;
}
a:focus-visible,
button:focus-visible,
summary:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 2px solid #111;
  outline-offset: 2px;
}
main:focus {
  outline: none;
}
