.blog-grid{display:grid;gap:24px;margin-top:32px}.blog-card{border:1px solid rgba(255,255,255,.08);background:#ffffff05;padding:24px;transition:all .2s ease;cursor:pointer;position:relative}[data-theme=light] .blog-card{border-color:#00000014;background:#00000005}.blog-card:hover{transform:translateY(-2px);border-color:#ffffff2e;background:#ffffff0a;box-shadow:0 6px 16px #0000002e}[data-theme=light] .blog-card:hover{border-color:#0000002e;background:#0000000a;box-shadow:0 6px 16px #00000014}.blog-card-header{margin-bottom:16px}.blog-card-title{font-size:1.25rem;font-weight:600;line-height:1.3;margin:0 0 8px;color:var(--text);text-decoration:none}.blog-card-title:hover{color:var(--accent)}.blog-meta{display:flex;align-items:center;gap:12px;font-size:.85rem;color:var(--muted);margin-bottom:12px;flex-wrap:wrap}.blog-category{padding:2px 8px;border:1px solid rgba(255,255,255,.14);background:#ffffff0d;font-size:.8rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em}[data-theme=light] .blog-category{border-color:#0000001f;background:#0000000a}.blog-date,.blog-read-time{display:flex;align-items:center;gap:4px}.blog-meta-separator{width:1px;height:12px;background:var(--muted);opacity:.3}.blog-excerpt{color:var(--muted);line-height:1.6;margin:0}.blog-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:16px}.blog-tag{padding:2px 6px;border:1px solid rgba(255,255,255,.1);background:#ffffff08;font-size:.75rem;color:var(--muted)}[data-theme=light] .blog-tag{border-color:#00000014;background:#00000005}.blog-search{margin-bottom:32px}.blog-search-input{width:100%;max-width:400px;padding:12px 16px;border:1px solid rgba(255,255,255,.12);background:#ffffff0a;color:var(--text);font-size:.95rem;transition:all .2s ease}[data-theme=light] .blog-search-input{border-color:#0000001f;background:#0000000a}.blog-search-input:focus{outline:none;border-color:var(--accent);background:#ffffff0f}[data-theme=light] .blog-search-input:focus{background:#0000000f}.blog-search-input::placeholder{color:var(--muted);opacity:.7}.blog-filters{display:flex;gap:12px;margin-bottom:24px;flex-wrap:wrap}.blog-filter{padding:6px 12px;border:1px solid rgba(255,255,255,.12);background:#ffffff0a;color:var(--muted);font-size:.85rem;cursor:pointer;transition:all .2s ease}[data-theme=light] .blog-filter{border-color:#0000001f;background:#0000000a}.blog-filter:hover,.blog-filter.active{color:var(--text);border-color:var(--accent);background:#ffffff14}[data-theme=light] .blog-filter:hover,[data-theme=light] .blog-filter.active{background:#00000014}.blog-stats{display:flex;gap:24px;margin-bottom:32px;font-size:.9rem;color:var(--muted)}.blog-stat{display:flex;align-items:center;gap:6px}.blog-empty{text-align:center;padding:48px 24px;color:var(--muted)}.blog-empty h3{margin:0 0 8px;color:var(--text)}.blog-empty p{margin:0;opacity:.8}.article-modal{position:fixed;inset:0;display:grid;place-items:center;background:transparent;pointer-events:none;transition:background .2s ease;z-index:1000}.article-modal[aria-hidden=false]{background:#0009;pointer-events:auto}.article-backdrop{position:absolute;inset:0}.article-dialog{position:relative;width:min(900px,95vw);max-height:90vh;overflow:auto;padding:32px;border:1px solid rgba(255,255,255,.18);background:#191923fa;transform:translateY(8px) scale(.98);opacity:0;transition:all .22s ease}[data-theme=light] .article-dialog{background:#fffffffa;border-color:#00000024}.article-dialog.in{transform:translateY(0) scale(1);opacity:1}.article-close{position:absolute;top:16px;right:16px;width:36px;height:36px;border:1px solid rgba(255,255,255,.18);background:#ffffff0a;color:inherit;display:inline-grid;place-items:center;cursor:pointer;transition:all .2s ease}[data-theme=light] .article-close{border-color:#0000001f;background:#00000008}.article-close:hover{background:#ffffff14;border-color:#ffffff47}[data-theme=light] .article-close:hover{background:#00000014;border-color:#00000038}.article-content{line-height:1.7;color:var(--text);max-width:none}.article-content h1{font-size:2rem;font-weight:700;margin:0 0 16px;color:var(--text)}.article-content h2{font-size:1.5rem;font-weight:600;margin:32px 0 16px;color:var(--text)}.article-content h3{font-size:1.25rem;font-weight:600;margin:24px 0 12px;color:var(--text)}.article-content p{margin:0 0 16px;color:var(--text)}.article-content ul,.article-content ol{margin:0 0 16px;padding-left:24px}.article-content li{margin-bottom:8px;color:var(--text)}.article-content code{padding:2px 6px;background:#ffffff14;border:1px solid rgba(255,255,255,.12);font-family:Fira Code,Monaco,Consolas,monospace;font-size:.9em}[data-theme=light] .article-content code{background:#0000000f;border-color:#0000001f}.article-content pre{padding:16px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);overflow-x:auto;margin:16px 0}[data-theme=light] .article-content pre{background:#0000000a;border-color:#00000014}.article-content pre code{background:none;border:none;padding:0}.article-content blockquote{margin:24px 0;padding:16px 20px;border-left:4px solid var(--accent);background:#ffffff0a;font-style:italic;position:relative}[data-theme=light] .article-content blockquote{background:#0000000a}.article-content blockquote p{margin:0}.article-content table{width:100%;border-collapse:collapse;margin:24px 0;border:1px solid rgba(255,255,255,.12)}[data-theme=light] .article-content table{border-color:#0000001f}.article-content th,.article-content td{padding:12px 16px;text-align:left;border-bottom:1px solid rgba(255,255,255,.08)}[data-theme=light] .article-content th,[data-theme=light] .article-content td{border-bottom-color:#00000014}.article-content th{background:#ffffff0a;font-weight:600}[data-theme=light] .article-content th{background:#0000000a}.article-content hr{margin:32px 0;border:none;height:1px;background:#ffffff1f}[data-theme=light] .article-content hr{background:#0000001f}.article-content pre{position:relative;border-radius:8px;overflow-x:auto;font-size:.9rem}.article-content pre::-webkit-scrollbar{height:8px}.article-content pre::-webkit-scrollbar-track{background:#ffffff0d}.article-content pre::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}[data-theme=light] .article-content pre::-webkit-scrollbar-track{background:#0000000d}[data-theme=light] .article-content pre::-webkit-scrollbar-thumb{background:#0003}.article-content ul,.article-content ol{padding-left:28px}.article-content li{margin-bottom:8px;line-height:1.6}.article-content li>ul,.article-content li>ol{margin-top:8px;margin-bottom:0}.article-content input[type=checkbox]{margin-right:8px}.article-content a{color:var(--accent);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s ease}.article-content a:hover{border-bottom-color:var(--accent)}.article-content img{max-width:100%;height:auto;border-radius:8px;margin:16px 0;box-shadow:0 4px 12px #00000026}[data-theme=light] .article-content img{box-shadow:0 4px 12px #00000014}.blog-loading{display:flex;justify-content:center;align-items:center;padding:48px;color:var(--muted)}.blog-loading:after{content:"";width:20px;height:20px;border:2px solid var(--muted);border-top-color:var(--accent);border-radius:50%;animation:spin 1s linear infinite;margin-left:12px}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:640px){.blog-card{padding:20px}.blog-meta{flex-direction:column;align-items:flex-start;gap:8px}.blog-meta-separator{display:none}.blog-filters{gap:8px}.blog-filter{font-size:.8rem;padding:4px 8px}.article-dialog{padding:24px 20px}.article-content h1{font-size:1.75rem}}
