@import 'https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;700&family=Outfit:wght@300;400;500;600;700&display=swap';:root{--bg-primary:#1a1b26;--bg-secondary:#24283b;--bg-card:#292e42;--bg-card-hover:#323852;--border-color:#414868;--border-glow:#7aa2f733;--text-primary:#c0caf5;--text-secondary:#9aa5ce;--text-muted:#565f89;--accent:#7dcfff;--accent-dim:#5db3d6;--accent-glow:0 0 20px #7aa2f740;--code-bg:#1f2335;--font-body:'Outfit', system-ui, sans-serif;--font-mono:'JetBrains Mono', monospace}*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;padding:0;font-family:var(--font-body);background:var(--bg-primary);color:var(--text-primary);line-height:1.7;min-height:100vh;position:relative;overflow-x:hidden;font-size:17px}.bg-pattern{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0;background:radial-gradient(ellipse at 30% 20%,#1f2d50 0%,transparent 50%),radial-gradient(ellipse at 70% 80%,#2d1f30 0%,transparent 50%),linear-gradient(180deg,var(--bg-primary) 0%,#16161e 100%)}.bg-pattern::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background-image:linear-gradient(rgba(122,162,247,2%) 1px,transparent 1px),linear-gradient(90deg,rgba(122,162,247,2%) 1px,transparent 1px);background-size:60px 60px}main{position:relative;z-index:1;max-width:780px;margin:0 auto;padding:2.5rem 1.5rem}a{color:var(--accent);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1.5px;transition:all .2s ease}a:hover{color:var(--text-primary)}header{border-bottom:1px solid var(--border-color);padding:1.5rem 0;margin-bottom:3rem;position:relative}header::after{content:'';position:absolute;bottom:-1px;left:0;width:100%;height:2px;background:linear-gradient(90deg,transparent,var(--accent),transparent);opacity:.4}.site-title{font-size:2rem;font-weight:700;letter-spacing:-.02em;margin:0;color:var(--text-primary)}.site-title a{color:inherit;text-decoration:none}.site-subtitle{font-size:1rem;color:var(--text-secondary);margin-top:.4rem;font-weight:400}nav{margin-top:1.5rem}nav ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:1.5rem}nav a{color:var(--text-secondary);font-weight:500;font-size:1rem;padding:.4rem 0;position:relative;text-decoration:none}nav a::after{content:'';position:absolute;bottom:0;left:0;width:0;height:2px;background:var(--accent);transition:width .3s ease}nav a:hover{color:var(--text-primary)}nav a:hover::after{width:100%}.post-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:14px;padding:1.8rem;margin-bottom:1.5rem;transition:all .25s ease;position:relative}.post-card:hover{background:var(--bg-card-hover);border-color:var(--accent-dim);transform:translateY(-2px)}.post-meta{font-family:var(--font-mono);font-size:.8rem;color:var(--accent-dim);text-transform:uppercase;letter-spacing:.08em;margin-bottom:.8rem}.post-title{font-size:1.6rem;font-weight:600;margin:0 0 .8rem;line-height:1.3}.post-title a{color:var(--text-primary);text-decoration:none}.post-title a:hover{color:var(--accent);text-decoration:underline}.post-excerpt{color:var(--text-secondary);font-size:1rem;line-height:1.65;margin:0}.post-card-footer{margin-top:1.2rem;padding-top:1rem;border-top:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.category-tag{font-size:.8rem;color:var(--text-muted);background:var(--bg-secondary);padding:.35rem .8rem;border-radius:20px;border:1px solid var(--border-color)}.read-more{font-size:.9rem;color:var(--accent);text-decoration:none}.read-more:hover{text-decoration:underline}article{background:var(--bg-card);border:1px solid var(--border-color);border-radius:16px;padding:2.5rem;margin-bottom:2rem}article h1{font-size:2.4rem;font-weight:700;margin:0 0 1rem;line-height:1.2;color:var(--text-primary)}article h2{font-size:1.6rem;font-weight:600;margin:2.5rem 0 1rem;color:var(--text-primary);border-bottom:1px solid var(--border-color);padding-bottom:.5rem}article h3{font-size:1.25rem;font-weight:600;margin:2rem 0 .8rem;color:var(--accent)}article p{margin:1.1rem 0;color:var(--text-secondary);font-size:1.05rem}article strong{color:var(--text-primary);font-weight:600}article ul,article ol{margin:1rem 0;padding-left:1.5rem;color:var(--text-secondary)}article li{margin:.6rem 0}article code{font-family:var(--font-mono);font-size:.9em;background:var(--code-bg);padding:.2rem .5rem;border-radius:4px;border:1px solid var(--border-color);color:var(--accent)}article pre{background:var(--code-bg);border:1px solid var(--border-color);border-radius:8px;padding:1.2rem;overflow-x:auto;margin:1.5rem 0}article pre code{background:0 0;border:none;padding:0;color:var(--text-primary)}article blockquote{border-left:4px solid var(--accent);margin:1.5rem 0;padding:.5rem 1.5rem;background:var(--bg-secondary);border-radius:0 8px 8px 0}article blockquote p{margin:.5rem 0;color:var(--text-primary);font-style:italic}footer{border-top:1px solid var(--border-color);padding:2rem 0;margin-top:4rem;text-align:center;color:var(--text-muted);font-size:.9rem;position:relative}footer::before{content:'';position:absolute;top:-1px;left:0;width:100%;height:1px;background:linear-gradient(90deg,transparent,var(--accent),transparent);opacity:.3}.home-section-title{font-size:.9rem;font-weight:600;color:var(--accent-dim);text-transform:uppercase;letter-spacing:.12em;margin-bottom:1.5rem;font-family:var(--font-mono)}.pagination{display:flex;justify-content:center;gap:.8rem;margin-top:3rem;font-family:var(--font-mono)}.pagination a{padding:.6rem 1.2rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;color:var(--text-secondary);text-decoration:none;transition:all .2s ease}.pagination a:hover{border-color:var(--accent);color:var(--accent)}.pagination .current{background:var(--accent);color:var(--bg-primary);border-color:var(--accent)}.back-link{display:inline-flex;align-items:center;gap:.5rem;color:var(--text-secondary);font-size:.95rem;margin-bottom:1.5rem;text-decoration:none}.back-link:hover{color:var(--accent)}.date-line{font-family:var(--font-mono);font-size:.85rem;color:var(--text-muted);margin-bottom:.5rem}@media(max-width:600px){body{font-size:16px}.site-title{font-size:1.6rem}article{padding:1.5rem}article h1{font-size:1.7rem}.post-card{padding:1.3rem}.post-title{font-size:1.3rem}nav ul{gap:1rem}}