*,*:before,*:after{box-sizing:border-box}:root{--bg: #f8f8f6;--surface: #ffffff;--border: #e8e6e1;--text: #1a1a1a;--text-muted: #6b6b6b;--accent: #2563eb;--accent-hover: #1d4ed8;--tag-bg: #eff6ff;--tag-text: #2563eb;--radius: 10px;--shadow: 0 1px 4px rgba(0,0,0,.07);--shadow-hover: 0 4px 16px rgba(0,0,0,.12)}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.container{max-width:860px;margin:0 auto;padding:0 24px}.site-header{background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:100}.site-header .container{display:flex;align-items:center;justify-content:space-between;height:60px}.site-logo{font-size:1.1rem;font-weight:700;color:var(--text);letter-spacing:-.02em}.site-logo span{color:var(--accent)}.header-nav a{font-size:.875rem;color:var(--text-muted);transition:color .15s}.header-nav a:hover{color:var(--accent)}.hero{padding:56px 0 40px;border-bottom:1px solid var(--border);margin-bottom:40px}.hero h1{font-size:2rem;font-weight:800;letter-spacing:-.03em;line-height:1.2;margin:0 0 12px}.hero p{color:var(--text-muted);font-size:1rem;margin:0}.article-grid{display:flex;flex-direction:column;gap:16px;padding-bottom:60px}.article-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:24px;cursor:pointer;transition:box-shadow .15s,border-color .15s,transform .1s;display:block}.article-card:hover{box-shadow:var(--shadow-hover);border-color:#c7d2fe;transform:translateY(-1px)}.article-card h2{font-size:1.1rem;font-weight:700;margin:0 0 8px;letter-spacing:-.01em}.article-card p{color:var(--text-muted);font-size:.9rem;margin:0 0 12px;line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.article-meta{display:flex;align-items:center;gap:8px;font-size:.8rem;color:var(--text-muted)}.article-date:before{content:""}.read-more{margin-left:auto;color:var(--accent);font-weight:500}.empty{text-align:center;padding:80px 0;color:var(--text-muted)}.empty .icon{font-size:2.5rem;margin-bottom:12px}.article-detail{padding:40px 0 80px}.back-btn{display:inline-flex;align-items:center;gap:6px;color:var(--text-muted);font-size:.875rem;margin-bottom:32px;transition:color .15s;cursor:pointer;background:none;border:none;padding:0}.back-btn:hover{color:var(--accent)}.article-header{margin-bottom:36px;padding-bottom:28px;border-bottom:1px solid var(--border)}.article-header h1{font-size:1.75rem;font-weight:800;letter-spacing:-.03em;line-height:1.25;margin:0 0 12px}.article-header .meta{font-size:.85rem;color:var(--text-muted)}.markdown-body{color:var(--text);font-size:.975rem;line-height:1.8}.markdown-body h1{display:none}.markdown-body h2{font-size:1.25rem;font-weight:700;margin:36px 0 12px;padding-bottom:8px;border-bottom:1px solid var(--border);letter-spacing:-.02em}.markdown-body h3{font-size:1.05rem;font-weight:600;margin:24px 0 8px}.markdown-body p{margin:0 0 16px}.markdown-body ul,.markdown-body ol{padding-left:24px;margin:0 0 16px}.markdown-body li{margin-bottom:6px}.markdown-body blockquote{border-left:3px solid var(--accent);padding:8px 16px;margin:20px 0;background:var(--tag-bg);border-radius:0 6px 6px 0;color:var(--text-muted);font-style:italic}.markdown-body code{background:#f1f5f9;padding:2px 6px;border-radius:4px;font-size:.875em;font-family:JetBrains Mono,Fira Code,monospace}.markdown-body pre{background:#1e293b;color:#e2e8f0;padding:20px;border-radius:8px;overflow-x:auto;margin:20px 0}.markdown-body pre code{background:none;padding:0;color:inherit;font-size:.875rem}.markdown-body hr{border:none;border-top:1px solid var(--border);margin:32px 0}.markdown-body strong{font-weight:600}.markdown-body table{width:100%;border-collapse:collapse;margin:20px 0;font-size:.9rem}.markdown-body th,.markdown-body td{border:1px solid var(--border);padding:8px 12px;text-align:left}.markdown-body th{background:var(--bg);font-weight:600}.loading{display:flex;justify-content:center;padding:80px 0;color:var(--text-muted)}.site-footer{border-top:1px solid var(--border);padding:24px 0;text-align:center;font-size:.8rem;color:var(--text-muted);background:var(--surface)}@media(max-width:640px){.hero h1{font-size:1.5rem}.article-card{padding:18px}.article-detail{padding:24px 0 60px}}
