*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:18px;-webkit-text-size-adjust:100%}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;color:#1a1a1a;background:#fff;line-height:1.7}
a{color:#1a6dd4;text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%;height:auto;display:block}

.wrap{max-width:720px;margin:0 auto;padding:0 20px}

/* Header */
.site-header{border-bottom:1px solid #e8e8e8;padding:24px 0}
.site-header a{color:#1a1a1a;font-weight:700;font-size:1.1rem}
.site-header a:hover{text-decoration:none;color:#1a6dd4}

/* Post list (index) */
.post-list{list-style:none;padding:0}
.post-item{padding:32px 0;border-bottom:1px solid #f0f0f0}
.post-item:last-child{border-bottom:none}
.post-item h2{font-size:1.35rem;line-height:1.3;margin-bottom:6px}
.post-item h2 a{color:#1a1a1a}
.post-item h2 a:hover{color:#1a6dd4;text-decoration:none}
.post-date{font-size:.82rem;color:#888;margin-bottom:10px}
.post-excerpt{color:#555;font-size:.95rem;line-height:1.6}
.read-more{display:inline-block;margin-top:8px;font-size:.88rem;font-weight:600}

/* Single post */
.post-header{padding:48px 0 24px}
.post-header h1{font-size:2rem;line-height:1.25;margin-bottom:8px}
.post-content{padding-bottom:48px}
.post-content h2{font-size:1.4rem;margin:32px 0 12px;line-height:1.3}
.post-content h3{font-size:1.15rem;margin:24px 0 8px}
.post-content p{margin-bottom:16px}
.post-content ul,.post-content ol{margin:0 0 16px 24px}
.post-content li{margin-bottom:6px}
.post-content blockquote{border-left:3px solid #1a6dd4;padding:4px 0 4px 20px;margin:16px 0;color:#555;font-style:italic}
.post-content pre{background:#f6f6f6;padding:16px;border-radius:4px;overflow-x:auto;margin:16px 0;font-size:.85rem}
.post-content code{background:#f6f6f6;padding:2px 5px;border-radius:3px;font-size:.88rem}
.post-content pre code{background:none;padding:0}
.post-content img{margin:20px 0;border-radius:4px}
.post-content table{width:100%;border-collapse:collapse;margin:16px 0}
.post-content th,.post-content td{border:1px solid #e0e0e0;padding:8px 12px;text-align:left}
.post-content th{background:#f6f6f6;font-weight:600}

/* Post nav */
.post-nav{display:flex;justify-content:space-between;padding:24px 0 48px;border-top:1px solid #e8e8e8;font-size:.9rem}
.post-nav a{max-width:45%}
.post-nav .prev::before{content:"\2190 "}
.post-nav .next::after{content:" \2192"}

/* Pagination */
.pagination{display:flex;justify-content:center;gap:8px;padding:32px 0 48px}
.pagination a,.pagination span{display:inline-block;padding:6px 14px;border:1px solid #e0e0e0;border-radius:4px;font-size:.88rem;color:#555}
.pagination a:hover{border-color:#1a6dd4;color:#1a6dd4;text-decoration:none}
.pagination .current{background:#1a6dd4;color:#fff;border-color:#1a6dd4}

/* Footer */
.site-footer{border-top:1px solid #e8e8e8;padding:24px 0;text-align:center;font-size:.82rem;color:#999}

@media(max-width:600px){
  html{font-size:16px}
  .post-header h1{font-size:1.5rem}
  .post-nav{flex-direction:column;gap:12px}
  .post-nav a{max-width:100%}
}