:root{--bg: #0b0f14;--panel: #0f1520;--text: #e6edf3;--muted: #9aa4b2;--faint: #6b7280;--border: rgba(230, 237, 243, 0.10);--accent: #2ea043;--accent2: #3fb950;--accentDim: rgba(46, 160, 67, 0.18);--maxw: 860px;--radius: 12px}html{background:var(--bg)}body{background:var(--bg);color:var(--text)}a{color:var(--accent);text-decoration:none;font-weight:650}a:hover{color:var(--accent2);text-decoration:underline}::selection{background:var(--accentDim)}.page-content,.markdown-body{max-width:var(--maxw);margin:0 auto;padding:28px 16px;font-size:16px;line-height:1.75;color:var(--text)}.markdown-body h1,.markdown-body h2,.markdown-body h3{letter-spacing:-0.01em}.markdown-body img,.page-content img{max-width:100%;height:auto;border-radius:var(--radius);border:1px solid var(--border);display:block;margin:20px 0}.markdown-body pre,.page-content pre{border-radius:var(--radius);padding:16px;overflow-x:auto;border:1px solid var(--border)}.markdown-body code,.page-content code{background:rgba(46,160,67,0.1);color:#d9fbe3;border:1px solid rgba(63,185,80,0.18);border-radius:9px;padding:2px 6px}.site-header{position:sticky !important;top:0 !important;z-index:1000 !important;border-bottom:1px solid var(--border) !important;background:rgba(11,15,20,0.8) !important;backdrop-filter:blur(10px) !important}.site-header .header-inner{max-width:var(--maxw) !important;margin:0 auto !important;padding:14px 16px !important;display:flex !important;justify-content:space-between !important;align-items:center !important}.site-header .brand{font-weight:900 !important;text-decoration:none !important;color:var(--text) !important;letter-spacing:0.2px !important}.site-header .nav a{text-decoration:none !important;color:var(--muted) !important;margin-left:14px !important;font-weight:700 !important}.site-header .nav a:hover{color:var(--text) !important;text-decoration:none !important}.site-footer{margin-top:56px;border-top:1px solid var(--border);background:rgba(11,15,20,0.65)}.footer-inner{padding:18px 0;display:flex;justify-content:space-between;align-items:center;gap:14px}.footer-left{display:flex;gap:10px;align-items:center}.footer-mark{width:100px;height:22px;object-fit:contain;border-radius:6px;background:rgba(15,21,32,0.55)}.footer-dim{color:var(--faint);font-weight:650}.footer-right a{color:var(--muted);text-decoration:none;font-weight:650;margin-left:14px}.footer-right a:hover{color:var(--text);text-decoration:none}.container{width:min(100% - 32px, 860px);margin:0 auto}.markdown-body pre,.page-content pre,.highlight pre{background:#05070a;color:#d9fbe3;border:1px solid rgba(63,185,80,0.18);border-radius:14px;padding:16px;overflow-x:auto;box-shadow:0 0 0 1px rgba(0,0,0,0.35) inset}.markdown-body pre code,.page-content pre code,.highlight pre code{background:transparent;color:inherit;padding:0;border-radius:0}.markdown-body code,.page-content code{background:rgba(46,160,67,0.1);color:#d9fbe3;border:1px solid rgba(63,185,80,0.18);border-radius:9px;padding:2px 6px}.highlight{background:#05070a;border:1px solid rgba(63,185,80,0.18);border-radius:14px;overflow:hidden}.highlight pre{margin:0;padding:16px}.highlight .c{color:#7a869a}.highlight .k{color:#7aa2f7}.highlight .o{color:#c0caf5}.highlight .s{color:#9ece6a}.highlight .m{color:#ff9e64}.highlight .na{color:#73daca}.highlight .nb{color:#7aa2f7}.highlight .nf{color:#bb9af7}.highlight .nt{color:#2ea043}.highlight .n{color:#e6edf3}.highlighter-rouge{margin:18px 0}.highlighter-rouge .highlight{background:#05070a;border:1px solid rgba(63,185,80,0.18);border-radius:14px;overflow:hidden}.highlighter-rouge pre.highlight{margin:0;padding:16px;overflow-x:auto}.highlighter-rouge pre code{background:transparent !important;border:0 !important;padding:0 !important;color:inherit !important}.post-title{font-size:clamp(28px, 4vw, 44px);line-height:1.1;margin:0 0 10px;letter-spacing:-0.02em}.post-meta{display:flex;gap:12px;flex-wrap:wrap;align-items:center;color:var(--faint);font-weight:700;font-size:14px}.post-desc{margin:14px 0 0;color:var(--muted);font-size:18px;max-width:70ch}.post-body{max-width:75ch}.markdown-body h2,.markdown-body h3{letter-spacing:-0.01em;margin-top:34px}.markdown-body blockquote{margin:20px 0;padding:14px 16px;background:rgba(15,21,32,0.85);border-left:4px solid rgba(63,185,80,0.35);border-radius:14px;color:var(--text)}body::before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(800px 500px at 20% 10%, rgba(46,160,67,0.1), transparent 55%),radial-gradient(700px 450px at 80% 0%, rgba(63,185,80,0.06), transparent 60%);opacity:0.9;z-index:0}.site-header,main,footer{position:relative;z-index:1}.post-body img,.markdown-body img,.page-content img{width:100%;max-width:100%;height:auto;max-height:620px;object-fit:contain;object-position:center;background:rgba(15,21,32,0.55)}.post-body img[alt*="small"],.markdown-body img[alt*="small"]{width:auto;max-width:520px;max-height:360px;object-fit:contain}.home-head{margin:18px 0 18px}.home-title{font-size:clamp(28px, 4vw, 40px);margin:0 0 6px;letter-spacing:-0.02em}.home-sub{margin:0;color:var(--muted);max-width:70ch}.dossier-list{display:grid;gap:14px;margin-top:18px}.dossier{border:1px solid var(--border);border-radius:16px;padding:14px 16px;background:rgba(15,21,32,0.55);position:relative;overflow:hidden}.dossier::before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:3px;background:rgba(46,160,67,0.55);border-radius:999px}.dossier-top{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.dossier-title{margin:0;font-size:18px;letter-spacing:-0.01em}.dossier-title a{color:var(--text);text-decoration:none;font-weight:900}.dossier-title a:hover{color:var(--accent2);text-decoration:none}.dossier-date{color:var(--faint);font-weight:750;font-size:13px;white-space:nowrap}.dossier-excerpt{margin:10px 0 0;color:var(--muted)}.dossier-meta{margin-top:12px;display:flex;gap:8px;flex-wrap:wrap}.dossier-chip{font-size:12px;font-weight:800;letter-spacing:0.2px;padding:3px 10px;border-radius:999px;color:rgba(217,251,227,0.9);background:rgba(46,160,67,0.1);border:1px solid rgba(63,185,80,0.18)}.dossier-chip-cat{background:rgba(46,160,67,0.14);border:1px solid rgba(63,185,80,0.22)}.dossier-chip-tag{background:rgba(15,21,32,0.75);border:1px solid rgba(230,237,243,0.1);color:var(--muted)}.dossier-cover{margin-top:10px;width:100%;height:110px;object-fit:cover;object-position:center;border-radius:10px;border:1px solid var(--border);background:rgba(15,21,32,0.55)}.dossier-cover.badge{height:80px;object-fit:contain}.dossier-cover{display:block}.dossier-cover:empty{display:none}a{color:var(--accent);text-decoration:none;font-weight:650}a:hover{color:var(--accent2);text-decoration:none}.markdown-body blockquote{margin:18px 0;padding:14px 16px;background:rgba(15,21,32,0.72);border:1px solid rgba(230,237,243,0.1);border-left:4px solid rgba(63,185,80,0.28);border-radius:14px;color:var(--text)}.markdown-body blockquote p:first-child{margin-top:0;font-weight:800;letter-spacing:0.2px}.markdown-body blockquote p:last-child{margin-bottom:0}.markdown-body blockquote p:first-child:has(strong){color:var(--text)}.tag-cloud{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0 22px}.tag-link{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;border:1px solid var(--border);background:rgba(15,21,32,0.55);color:var(--text);text-decoration:none;font-weight:800}.tag-link:hover{border-color:rgba(63,185,80,0.28);color:var(--accent2)}.tag-count{color:var(--muted);font-weight:800;font-size:12px}.tag-section-title{margin:28px 0 12px;letter-spacing:-0.01em;scroll-margin-top:84px}.dossier-chip{cursor:pointer;transition:transform 120ms ease, border-color 120ms ease, box-shadow 120ms ease, color 120ms ease}.dossier-chip:hover{transform:translateY(-1px);border-color:rgba(63,185,80,0.28);box-shadow:0 0 0 3px rgba(46,160,67,0.1)}.series-line{display:flex;gap:10px;align-items:center;margin-bottom:10px;color:var(--muted);font-weight:800;font-size:13px;letter-spacing:0.2px}.series-link{color:var(--accent);text-decoration:none}.series-link:hover{color:var(--accent2);text-decoration:none}.series-dim{color:var(--faint);font-weight:800}.dossier-chip:active{transform:translateY(0px);box-shadow:0 0 0 2px rgba(46,160,67,0.1)}.brand-logo-long{height:28px;width:auto;display:block;filter:drop-shadow(0 0 10px rgba(0,0,0,0.25))}.brand-sub{font-size:12px;font-weight:900;letter-spacing:0.3px;padding:2px 8px;border-radius:999px;color:rgba(217,251,227,0.9);background:rgba(46,160,67,0.12);border:1px solid rgba(63,185,80,0.18);transform:translateY(1px)}.brand-logo-long{height:80px;width:auto;display:inline-block}
