*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #fafafa;--surface: #ffffff;--border: #e8e8e8;--text: #222222;--text-muted: #888888;--accent: #0a7ea4;--tag-bg: #f0f0f0;--tag-hover: #e0e0e0;--radius: 8px;--column: 560px;--gap: 1.5rem}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.6}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.container{max-width:var(--column);margin:0 auto;padding:0 1rem}.site-header{border-bottom:1px solid var(--border);padding:1.5rem 0;margin-bottom:2.5rem;background:var(--surface);position:sticky;top:0;z-index:10}.site-header .container{display:flex;align-items:center;justify-content:space-between;gap:1rem}.site-title{font-size:1.2rem;font-weight:700;color:var(--text);letter-spacing:-.02em}.site-title:hover{text-decoration:none;color:var(--accent)}.site-nav{display:flex;gap:1.25rem;font-size:.875rem;color:var(--text-muted)}.site-nav a{color:var(--text-muted)}.site-nav a:hover{color:var(--accent);text-decoration:none}.post-feed{display:flex;flex-direction:column;gap:var(--gap)}.post-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.post-card-body{padding:1.25rem 1.5rem}.post-image{display:block;width:100%;height:auto}.post-image-link{display:block}.post-video{position:relative;padding-bottom:56.25%;height:0;overflow:hidden}.post-video iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:0}.post-content{font-size:.975rem;line-height:1.7}.post-content p+p{margin-top:.75rem}.post-content img{max-width:100%;border-radius:4px}.post-caption{font-size:.875rem;color:var(--text-muted);margin-top:.75rem;font-style:italic}.post-meta{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-top:1rem;padding-top:.75rem;border-top:1px solid var(--border);font-size:.8rem;color:var(--text-muted)}.post-date{color:var(--text-muted)}.tag-list{display:flex;flex-wrap:wrap;gap:.4rem}.tag{display:inline-block;background:var(--tag-bg);color:var(--text-muted);padding:.2rem .6rem;border-radius:99px;font-size:.75rem;transition:background .15s}.tag:hover{background:var(--tag-hover);color:var(--text);text-decoration:none}.tag:before{content:"#"}.post-title{font-size:1.1rem;font-weight:600;margin-bottom:.75rem;letter-spacing:-.01em}.post-title a{color:var(--text)}.post-title a:hover{color:var(--accent);text-decoration:none}.pagination{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:2.5rem 0}.pagination a,.pagination span{display:inline-flex;align-items:center;justify-content:center;min-width:2.25rem;height:2.25rem;padding:0 .75rem;border:1px solid var(--border);border-radius:var(--radius);font-size:.875rem;background:var(--surface);color:var(--text)}.pagination a:hover{background:var(--tag-bg);text-decoration:none}.pagination .current{background:var(--accent);color:#fff;border-color:var(--accent)}.pagination .disabled{opacity:.4;pointer-events:none}.tags-page h1{font-size:1.4rem;font-weight:700;margin-bottom:1.5rem}.tags-cloud{display:flex;flex-wrap:wrap;gap:.75rem}.tag-cloud-item{display:inline-flex;align-items:center;gap:.4rem;background:var(--surface);border:1px solid var(--border);border-radius:99px;padding:.35rem .9rem;font-size:.875rem;color:var(--text);transition:border-color .15s,background .15s}.tag-cloud-item:hover{background:var(--tag-bg);text-decoration:none;border-color:var(--accent);color:var(--accent)}.tag-cloud-item:before{content:"#";color:var(--text-muted)}.tag-count{font-size:.75rem;color:var(--text-muted);background:var(--tag-bg);padding:.05rem .4rem;border-radius:99px}.post-single{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;margin-bottom:2rem}.post-back{display:inline-flex;align-items:center;gap:.4rem;color:var(--text-muted);font-size:.875rem;margin-bottom:1.5rem}.post-back:hover{color:var(--accent);text-decoration:none}.site-footer{border-top:1px solid var(--border);padding:2rem 0;margin-top:3rem;text-align:center;font-size:.8rem;color:var(--text-muted)}.tag-header{margin-bottom:1.5rem}.tag-header h1{font-size:1.3rem;font-weight:700}.tag-header p{color:var(--text-muted);font-size:.875rem;margin-top:.25rem}
