:root{
  --bg: #FAFAF7;
  --text: #1C1C1C;
  --muted: #6F6F6F;
  --rule: rgba(0,0,0,0.08);
  --accent: #2E2E38;
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  background: var(--bg);
  color: var(--text);
  line-height: 1.65;
}
a{color:inherit; text-decoration:none}
a:hover{opacity:0.75}
.site-header{
  position: sticky;
  top: 0;
  backdrop-filter: blur(8px);
  background: color-mix(in srgb, var(--bg) 88%, transparent);
  border-bottom: 1px solid var(--rule);
  z-index: 10;
}
.header-inner{
  max-width: 760px;
  margin: 0 auto;
  padding: 14px 20px;
  display:flex;
  align-items:center;
  justify-content:space-between;
}
.brand{font-weight: 600; letter-spacing: 0.2px;}
.stream{font-weight: 500; color: var(--accent);}
.container{max-width: 760px; margin: 0 auto; padding: 24px 20px 28px;}
.entry{padding: 28px 0 34px; border-bottom: 1px solid var(--rule);}
.meta{margin-bottom: 14px;}
.date{font-size: 13px; color: var(--muted);}
.title{font-size: 16px; font-weight: 600; margin-top: 6px;}
.content p{margin: 14px 0; font-size: 16px;}
.content em{font-style: italic;}
.site-footer{max-width: 760px; margin: 0 auto; padding: 18px 20px 22px; border-top: 1px solid var(--rule);}
.footer-inner{
  display:flex; align-items:center; justify-content:space-between;
  gap: 12px; flex-wrap: wrap; color: var(--muted); font-size: 13px;
}
.sep{margin: 0 6px}
.reveal{
  opacity: 0;
  transform: translateY(6px);
  filter: blur(0.2px);
  transition: opacity 700ms ease, transform 700ms ease, filter 700ms ease;
  will-change: opacity, transform, filter;
}
.reveal.visible{opacity: 1; transform: translateY(0px); filter: blur(0px);}
@media (prefers-reduced-motion: reduce){
  .reveal, .reveal.visible{transition: none; transform: none;}
}

.nav-disabled{opacity:0.45;cursor:default;text-decoration:none;}
