* { box-sizing: border-box; margin: 0; padding: 0; }
body {
  font-family: "Hiragino Sans", "Meiryo", sans-serif;
  background: #ddddd4;
  color: #333;
  font-size: 14px;
  line-height: 1.7;
}
.thread-header { background: #00732e; color: #fff; padding: 12px 16px; }
.thread-header a { color: #aee9c5; font-size: 0.85rem; text-decoration: none; }
.thread-header a:hover { text-decoration: underline; }
.thread-header h1 { margin-top: 6px; font-size: 1.05rem; line-height: 1.5; }
.thread-body { max-width: 800px; margin: 0 auto; padding: 12px; }
.post-container {
  background: #fff; border: 1px solid #b0b0a0;
  margin-bottom: 4px; padding: 6px 12px;
}
.id-line { font-size: 0.78rem; color: #666; margin-bottom: 3px; }
.user-name { color: #0055aa; }
.post-content { font-size: 0.92rem; white-space: pre-wrap; word-break: break-word; }
.thread-nav {
  display: flex; align-items: stretch;
  padding: 16px; border-top: 1px solid #ccc; gap: 10px;
}
.nav-card {
  display: flex; flex-direction: column; justify-content: center;
  flex: 1; min-width: 0; padding: 10px 14px;
  border: 1px solid #ccc; border-radius: 6px;
  background: #fff; text-decoration: none; color: #333;
}
.nav-card:hover:not(.nav-disabled) { background: #f5f5f5; }
.nav-disabled { opacity: 0.25; pointer-events: none; }
.nav-direction { font-size: 0.72rem; color: #999; margin-bottom: 4px; }
.nav-title {
  font-size: 0.88rem; font-weight: bold;
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.nav-index {
  flex: 0 0 90px; align-items: center; text-align: center;
}
.nav-next { text-align: right; }
.nav-index .nav-direction { font-size: 0.85rem; margin-bottom: 0; color: #555; }
.thread-footer { text-align: center; padding: 12px 24px 24px; color: #888; font-size: 0.8rem; }
