* { margin: 0; padding: 0; box-sizing: border-box; }
body { font-family: Georgia, "Times New Roman", serif; line-height: 1.7; color: #333; background: #f9f9f9; }
.container { max-width: 960px; margin: 0 auto; padding: 20px; }
header { border-bottom: 2px solid #333; margin-bottom: 30px; padding-bottom: 10px; }
header h1 { font-size: 2em; }
header h1 a { color: #333; text-decoration: none; }
header h1 a:hover { color: #666; }
.archive-note { color: #888; font-style: italic; font-size: 0.9em; }
.layout { display: flex; gap: 40px; }
main { flex: 1; min-width: 0; }
.sidebar { width: 220px; flex-shrink: 0; font-size: 0.85em; }
.sidebar h3 { margin-top: 20px; margin-bottom: 5px; font-size: 1em; border-bottom: 1px solid #ccc; }
.sidebar ul { list-style: none; }
.sidebar li { padding: 2px 0; }
.sidebar a { color: #555; text-decoration: none; }
.sidebar a:hover { color: #000; text-decoration: underline; }
article.post { margin-bottom: 40px; }
h2.post-title { font-size: 1.6em; margin-bottom: 5px; }
.post-meta { color: #888; font-size: 0.85em; margin-bottom: 15px; }
.post-content { line-height: 1.8; }
.post-content img { max-width: 100%; height: auto; }
.post-content a { color: #0066cc; }
.post-content blockquote { border-left: 3px solid #ccc; margin: 1em 0; padding-left: 1em; color: #555; }
article.post-summary { margin-bottom: 30px; padding-bottom: 30px; border-bottom: 1px solid #ddd; }
article.post-summary h2 { font-size: 1.3em; margin-bottom: 3px; }
article.post-summary h2 a { color: #333; text-decoration: none; }
article.post-summary h2 a:hover { color: #0066cc; }
.excerpt { color: #555; font-size: 0.95em; }
.pagination { text-align: center; padding: 20px 0; font-size: 0.95em; }
.pagination a { color: #0066cc; text-decoration: none; margin: 0 10px; }
.archive-list { list-style: none; }
.archive-list li { padding: 5px 0; border-bottom: 1px solid #eee; }
.archive-list a { color: #333; text-decoration: none; font-weight: bold; }
.archive-list a:hover { color: #0066cc; }
.comments { margin-top: 40px; border-top: 2px solid #ddd; padding-top: 20px; }
.comments h3 { margin-bottom: 15px; }
.comment { margin-bottom: 15px; padding: 10px; background: #f0f0f0; border-radius: 4px; }
.comment-meta { font-size: 0.85em; margin-bottom: 5px; }
.comment-date { color: #888; }
.comment-body { font-size: 0.95em; }
footer { margin-top: 40px; padding-top: 20px; border-top: 1px solid #ddd; text-align: center; font-size: 0.85em; color: #888; }
@media (max-width: 700px) { .layout { flex-direction: column; } .sidebar { width: 100%; } }