:root{--bg: #ffffff;--bg-subtle: #f5f5f4;--bg-soft: #fafaf9;--surface: #ffffff;--text: #1c1917;--text-secondary: #44403c;--text-muted: #78716c;--border: #e7e5e4;--border-strong: #d6d3d1;--accent: #292524;--accent-hover: #1c1917;--accent-soft: rgba(41, 37, 36, .06);--accent-contrast: #ffffff;--cat-tech: #57534e;--cat-ai: #78716c;--cat-essay: #44403c;--code-bg: #292524;--code-text: #e7e5e4;--shadow-sm: 0 1px 2px rgba(28, 25, 23, .04), 0 1px 3px rgba(28, 25, 23, .05);--shadow-md: 0 8px 24px -10px rgba(28, 25, 23, .12);--shadow-lg: 0 24px 50px -18px rgba(28, 25, 23, .16);--ring: 0 0 0 3px rgba(41, 37, 36, .12);--radius-sm: 8px;--radius: 14px;--radius-lg: 22px;--radius-full: 999px;--font-sans: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", sans-serif;--font-mono: "SFMono-Regular", ui-monospace, "JetBrains Mono", "Fira Code", Menlo, Consolas, monospace;--maxw: 1120px;--maxw-narrow: 720px;--header-h: 64px}[data-theme=dark]{--bg: #0c0a09;--bg-subtle: #1c1917;--bg-soft: #161310;--surface: #1c1917;--text: #fafaf9;--text-secondary: #d6d3d1;--text-muted: #a8a29e;--border: #292524;--border-strong: #44403c;--accent: #e7e5e4;--accent-hover: #fafaf9;--accent-soft: rgba(231, 229, 228, .1);--accent-contrast: #1c1917;--cat-tech: #a8a29e;--cat-ai: #d6d3d1;--cat-essay: #78716c;--code-bg: #15110f;--code-text: #e7e5e4;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 8px 26px -10px rgba(0, 0, 0, .6);--shadow-lg: 0 28px 56px -18px rgba(0, 0, 0, .72)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 16px)}body{font-family:var(--font-sans);background:var(--bg);color:var(--text);line-height:1.65;font-size:17px;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-feature-settings:"cv02","cv03","cv04","cv11";transition:background-color .3s ease,color .3s ease;overflow-x:hidden}img,svg,video{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}h1,h2,h3,h4{line-height:1.2;font-weight:700;letter-spacing:-.02em;color:var(--text)}::selection{background:var(--accent-soft)}:focus-visible{outline:none;box-shadow:var(--ring);border-radius:var(--radius-sm)}.container{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:24px}.container-narrow{width:100%;max-width:var(--maxw-narrow);margin-inline:auto;padding-inline:24px}.section{padding-block:84px}.section-tight{padding-block:56px}.eyebrow{font-size:.82rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:36px}.section-head h2{font-size:clamp(1.6rem,3vw,2.1rem);margin-top:8px}.section-head p{color:var(--text-muted);margin-top:4px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:inherit;font-size:.98rem;font-weight:600;line-height:1;padding:13px 22px;border-radius:var(--radius-full);border:1px solid transparent;cursor:pointer;transition:transform .15s ease,background-color .2s ease,border-color .2s ease,box-shadow .2s ease,color .2s ease;white-space:nowrap}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--accent);color:var(--accent-contrast);box-shadow:var(--shadow-sm)}.btn-primary:hover{background:var(--accent-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-ghost{background:var(--surface);color:var(--text);border-color:var(--border-strong)}.btn-ghost:hover{border-color:var(--accent);color:var(--accent)}.btn-sm{padding:9px 16px;font-size:.9rem}.tag{display:inline-flex;align-items:center;gap:6px;font-size:.78rem;font-weight:600;letter-spacing:.01em;padding:4px 11px;border-radius:var(--radius-full);background:var(--bg-subtle);color:var(--text-secondary);border:1px solid var(--border)}.tag-dot{width:7px;height:7px;border-radius:50%;background:currentColor}.cat-tech{color:var(--cat-tech);background:color-mix(in srgb,var(--cat-tech) 12%,transparent);border-color:color-mix(in srgb,var(--cat-tech) 24%,transparent)}.cat-ai{color:var(--cat-ai);background:color-mix(in srgb,var(--cat-ai) 12%,transparent);border-color:color-mix(in srgb,var(--cat-ai) 24%,transparent)}.cat-essay{color:var(--cat-essay);background:color-mix(in srgb,var(--cat-essay) 12%,transparent);border-color:color-mix(in srgb,var(--cat-essay) 24%,transparent)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.card-link:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:var(--border-strong)}.grid{display:grid;gap:22px}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-2{grid-template-columns:repeat(2,1fr)}@media(max-width:900px){.grid-3{grid-template-columns:1fr 1fr}}@media(max-width:620px){.grid-3,.grid-2{grid-template-columns:1fr}.section{padding-block:60px}}.prose{font-size:1.075rem;line-height:1.78;color:var(--text-secondary)}.prose>*+*{margin-top:1.35em}.prose h2,.prose h3,.prose h4{color:var(--text);margin-top:2.1em;scroll-margin-top:calc(var(--header-h) + 20px)}.prose h2{font-size:1.55rem;padding-bottom:.35em;border-bottom:1px solid var(--border)}.prose h3{font-size:1.25rem}.prose p,.prose ul,.prose ol,.prose blockquote{color:var(--text-secondary)}.prose a{color:var(--accent);font-weight:500;text-decoration:underline;text-decoration-color:var(--border-strong);text-underline-offset:3px;transition:text-decoration-color .2s ease}.prose a:hover{text-decoration-color:var(--accent)}.prose strong{color:var(--text);font-weight:700}.prose ul,.prose ol{padding-left:1.4em}.prose li+li{margin-top:.5em}.prose li::marker{color:var(--text-muted)}.prose blockquote{border-left:3px solid var(--accent);padding:4px 0 4px 20px;color:var(--text-muted);font-style:italic}.prose img{border-radius:var(--radius);border:1px solid var(--border);width:100%}.prose hr{border:none;border-top:1px solid var(--border);margin-block:2.4em}.prose code{font-family:var(--font-mono);font-size:.88em;background:var(--bg-subtle);border:1px solid var(--border);border-radius:6px;padding:.15em .4em}.prose pre{background:var(--code-bg);color:var(--code-text);border-radius:var(--radius);padding:20px 22px;overflow-x:auto;font-size:.9rem;line-height:1.6;border:1px solid var(--border)}.prose pre code{background:transparent;border:none;padding:0;font-size:inherit;color:inherit}.prose table{width:100%;border-collapse:collapse;font-size:.95rem}.prose th,.prose td{border:1px solid var(--border);padding:9px 13px;text-align:left}.prose th{background:var(--bg-subtle);color:var(--text);font-weight:600}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}html[data-skin=glass]{--glass-tint: rgba(255, 255, 255, .42);--glass-tint-strong: rgba(255, 255, 255, .62);--glass-border: rgba(255, 255, 255, .55);--glass-edge: rgba(255, 255, 255, .9);--glass-blur: blur(16px) saturate(185%);--glass-blur-x: blur(16px) saturate(185%) url(#liquid-glass);--glass-shadow: 0 12px 40px rgba(28, 25, 23, .16);--text: #1a1613;--text-secondary: #393029;--border: rgba(120, 113, 108, .22)}html[data-skin=glass][data-theme=dark]{--glass-tint: rgba(28, 25, 23, .34);--glass-tint-strong: rgba(24, 21, 19, .52);--glass-border: rgba(255, 255, 255, .16);--glass-edge: rgba(255, 255, 255, .28);--glass-shadow: 0 12px 40px rgba(0, 0, 0, .5);--text: #faf7f5;--text-secondary: #ded6d0;--border: rgba(255, 255, 255, .1)}.glass-bg{display:none}html[data-skin=glass] body{background:linear-gradient(135deg,#eef1fb,#f6eef9 46%,#e9f4f3)}html[data-skin=glass][data-theme=dark] body{background:linear-gradient(135deg,#0d0c13,#15101a 46%,#0c1417)}html[data-skin=glass] .glass-bg{display:block;position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none}.glass-bg span{position:absolute;display:block;border-radius:50%;filter:blur(64px);opacity:.5;will-change:transform;animation:glass-float 26s ease-in-out infinite}.glass-bg .b1{width:44vmax;height:44vmax;left:-8vmax;top:-10vmax;background:#7c8cff}.glass-bg .b2{width:40vmax;height:40vmax;right:-10vmax;top:-6vmax;background:#c98bff;animation-delay:-7s}.glass-bg .b3{width:42vmax;height:42vmax;left:16vmax;bottom:-16vmax;background:#56d6c6;animation-delay:-13s}.glass-bg .b4{width:32vmax;height:32vmax;right:8vmax;bottom:-10vmax;background:#ff9ab2;animation-delay:-20s}html[data-theme=dark] .glass-bg span{opacity:.38}@keyframes glass-float{0%,to{transform:translate(0) scale(1)}33%{transform:translate(5vmax,3vmax) scale(1.1)}66%{transform:translate(-4vmax,-2vmax) scale(.94)}}html[data-skin=glass] .card,html[data-skin=glass] .cta-band,html[data-skin=glass] .site-footer,html[data-skin=glass] .glass-sheet{position:relative;background:transparent;border:1px solid var(--glass-border);box-shadow:var(--glass-shadow),inset 0 1px 0 var(--glass-edge),inset 0 0 0 1px #ffffff0a;overflow:hidden;isolation:isolate}html[data-skin=glass] .card:after,html[data-skin=glass] .cta-band:after,html[data-skin=glass] .site-footer:after,html[data-skin=glass] .glass-sheet:after{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;background:var(--glass-tint);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}html[data-skin=glass] .card>*,html[data-skin=glass] .cta-band>*,html[data-skin=glass] .site-footer>*{position:relative;z-index:1}html[data-skin=glass] .card:before{content:"";position:absolute;inset:0;z-index:0;border-radius:inherit;background:linear-gradient(135deg,#ffffff38,#fff0 42%);pointer-events:none}html[data-skin=glass] .site-header{background:var(--glass-tint);border-bottom:1px solid var(--glass-border);box-shadow:inset 0 1px 0 var(--glass-edge),0 6px 24px #1c19170f}html[data-skin=glass] .btn-ghost,html[data-skin=glass] .lang-switch,html[data-skin=glass] .theme-toggle,html[data-skin=glass] .glass-toggle,html[data-skin=glass] .filter-btn,html[data-skin=glass] .hero-badge,html[data-skin=glass] .nav-link.active,html[data-skin=glass] .tag{background:var(--glass-tint);-webkit-backdrop-filter:blur(10px) saturate(180%);backdrop-filter:blur(10px) saturate(180%);border:1px solid var(--glass-border);box-shadow:inset 0 1px 0 var(--glass-edge)}html[data-skin=glass] .btn-primary,html[data-skin=glass] .filter-btn.active{background:color-mix(in srgb,var(--accent) 74%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid color-mix(in srgb,var(--accent) 38%,var(--glass-edge));box-shadow:var(--glass-shadow),inset 0 1px #ffffff47}html[data-skin=glass] .topics{background:transparent;border-block:1px solid var(--glass-border)}html[data-skin=glass] .post{background:transparent;border:1px solid var(--glass-border);border-radius:28px;box-shadow:var(--glass-shadow),inset 0 1px 0 var(--glass-edge);padding:44px clamp(22px,5vw,52px);margin-top:30px;position:relative;overflow:hidden;isolation:isolate}html[data-skin=glass] .post:after{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;background:var(--glass-tint-strong);-webkit-backdrop-filter:blur(22px) saturate(180%);backdrop-filter:blur(22px) saturate(180%)}html[data-skin=glass] .prose pre{box-shadow:var(--glass-shadow);border:1px solid var(--glass-border)}.glass-toggle{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:var(--radius-full);border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);cursor:pointer;transition:color .2s ease,border-color .2s ease,background-color .2s ease}.glass-toggle:hover{color:var(--accent);border-color:var(--accent)}html[data-skin=glass] .glass-toggle{color:var(--accent);border-color:var(--glass-border)}@media(prefers-reduced-motion:reduce){.glass-bg span{animation:none}}.theme-toggle[data-astro-cid-x3pjskd3]{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:var(--radius-full);border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);cursor:pointer;transition:color .2s ease,border-color .2s ease,background-color .2s ease}.theme-toggle[data-astro-cid-x3pjskd3]:hover{color:var(--accent);border-color:var(--accent)}[data-theme=dark] .i-sun[data-astro-cid-x3pjskd3],[data-theme=light] .i-moon[data-astro-cid-x3pjskd3]{display:none}.site-header[data-astro-cid-3ef6ksr2]{position:sticky;top:0;z-index:100;background:color-mix(in srgb,var(--bg) 80%,transparent);backdrop-filter:saturate(180%) blur(14px);-webkit-backdrop-filter:saturate(180%) blur(14px);border-bottom:1px solid var(--border)}.bar[data-astro-cid-3ef6ksr2]{height:var(--header-h);display:flex;align-items:center;gap:18px}.brand[data-astro-cid-3ef6ksr2]{display:inline-flex;align-items:center;gap:9px;font-weight:700;letter-spacing:-.02em;font-size:1.02rem;margin-right:auto}.logo-mark[data-astro-cid-3ef6ksr2]{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:9px;background:var(--accent);color:var(--accent-contrast);font-weight:800;font-size:.95rem;box-shadow:var(--shadow-sm)}.nav[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:4px}.nav-link[data-astro-cid-3ef6ksr2]{padding:8px 13px;border-radius:var(--radius-full);font-size:.95rem;font-weight:500;color:var(--text-secondary);transition:color .2s ease,background-color .2s ease}.nav-link[data-astro-cid-3ef6ksr2]:hover{color:var(--text);background:var(--bg-subtle)}.nav-link[data-astro-cid-3ef6ksr2].active{color:var(--accent);background:var(--accent-soft)}.actions[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:10px}.lang-switch[data-astro-cid-3ef6ksr2]{display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 13px;border-radius:var(--radius-full);border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);font-size:.85rem;font-weight:600;transition:color .2s ease,border-color .2s ease}.lang-switch[data-astro-cid-3ef6ksr2]:hover{color:var(--accent);border-color:var(--accent)}@media(max-width:640px){.bar[data-astro-cid-3ef6ksr2]{gap:8px}.nav[data-astro-cid-3ef6ksr2]{gap:0}.nav-link[data-astro-cid-3ef6ksr2]{padding:8px 9px;font-size:.9rem}.lang-switch[data-astro-cid-3ef6ksr2] span[data-astro-cid-3ef6ksr2]{display:none}.lang-switch[data-astro-cid-3ef6ksr2]{padding:0;width:38px;justify-content:center}}@media(max-width:400px){.logo-name[data-astro-cid-3ef6ksr2]{display:none}}.site-footer[data-astro-cid-sz7xmlte]{border-top:1px solid var(--border);background:var(--bg-soft);margin-top:80px;padding-block:56px 28px}.foot[data-astro-cid-sz7xmlte]{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.brand-col[data-astro-cid-sz7xmlte] p[data-astro-cid-sz7xmlte]{color:var(--text-muted);margin-top:14px;max-width:34ch;font-size:.95rem}.f-brand[data-astro-cid-sz7xmlte]{display:inline-flex;align-items:center;gap:9px;font-weight:700;font-size:1.05rem}.logo-mark[data-astro-cid-sz7xmlte]{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:8px;background:var(--accent);color:var(--accent-contrast);font-weight:800;font-size:.9rem}.links-col[data-astro-cid-sz7xmlte] h4[data-astro-cid-sz7xmlte]{font-size:.8rem;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);margin-bottom:14px;font-weight:600}.links-col[data-astro-cid-sz7xmlte] ul[data-astro-cid-sz7xmlte]{list-style:none;display:grid;gap:10px}.links-col[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{color:var(--text-secondary);font-size:.95rem;transition:color .2s ease}.links-col[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--accent)}.bottom[data-astro-cid-sz7xmlte]{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-top:44px;padding-top:24px;border-top:1px solid var(--border);color:var(--text-muted);font-size:.85rem}@media(max-width:640px){.foot[data-astro-cid-sz7xmlte]{grid-template-columns:1fr 1fr}.brand-col[data-astro-cid-sz7xmlte]{grid-column:1 / -1}}.skip-link[data-astro-cid-37fxchfa]{position:absolute;left:-9999px;top:0;z-index:200;background:var(--accent);color:var(--accent-contrast);padding:10px 16px;border-radius:0 0 var(--radius-sm) 0;font-weight:600}.skip-link[data-astro-cid-37fxchfa]:focus{left:0}#main[data-astro-cid-37fxchfa]{min-height:60vh}
