/* Reset and base styles */ * { box-sizing: border-box; margin: 0; padding: 0; } body { color: #333; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; line-height: 1.6; margin: 0; padding: 20px; background-color: #f9f9f9; max-width: 900px; margin: 0 auto; padding: 40px 20px; } /* Header */ header { display: flex; justify-content: space-between; align-items: center; padding-bottom: 20px; margin-bottom: 40px; border-bottom: 2px solid #eaeaea; } header h1 { font-size: 2rem; font-weight: 700; color: #222; } /* Navigation */ nav ul { display: flex; list-style: none; gap: 30px; } nav a { color: #555; text-decoration: none; font-weight: 500; font-size: 1.1rem; padding: 5px 0; position: relative; transition: color 0.2s; } nav a:hover { color: #222; } nav a.active { color: #222; font-weight: 600; } nav a.active::after { content: ''; position: absolute; bottom: -2px; left: 0; right: 0; height: 2px; background-color: #222; } /* Main content */ main { min-height: 60vh; padding: 20px 0; } main h1, main h2, main h3 { margin-top: 1.5em; margin-bottom: 0.5em; color: #222; } main p { margin-bottom: 1em; } main ul, main ol { margin-left: 2em; margin-bottom: 1em; } main code { background-color: #f0f0f0; padding: 2px 6px; border-radius: 4px; font-family: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 0.9em; } main pre { background-color: #f5f5f5; padding: 1em; border-radius: 8px; overflow-x: auto; margin: 1.5em 0; } main blockquote { border-left: 4px solid #ddd; padding-left: 1em; margin-left: 0; color: #666; font-style: italic; } /* Footer */ footer { margin-top: 60px; padding-top: 20px; border-top: 2px solid #eaeaea; color: #777; text-align: center; font-size: 0.9rem; } /* Links */ a { color: #2563eb; text-decoration: none; } a:hover { text-decoration: underline; } /* Blog post list */ .post-list { list-style: none; margin-top: 2em; } .post-list li { margin-bottom: 2em; padding-bottom: 2em; border-bottom: 1px solid #eee; } .post-list li:last-child { border-bottom: none; } .post-list h2 { margin-top: 0; font-size: 1.5rem; } .post-list .date { color: #777; font-size: 0.9rem; margin-top: 0.5em; } /* Responsive */ @media (max-width: 768px) { body { padding: 20px 15px; } header { flex-direction: column; align-items: flex-start; gap: 20px; } nav ul { flex-direction: column; gap: 15px; } nav a { font-size: 1rem; } }