:root{--max: 960px;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace}:root[data-theme=dark]{--bg: #0a0e14;--bg-soft: #11161f;--card: #141b26;--card-shadow: none;--border: #1f2937;--fg: #e6edf3;--fg-soft: #c7d1dc;--muted: #8b97a7;--accent: #5ef2c5;--accent-fg: #062b22;--accent-2: #ff5e93;--header-bg: rgba(10, 14, 20, .8);--tag-bg: rgba(94, 242, 197, .1);--tag-border: rgba(94, 242, 197, .25)}:root,:root[data-theme=light]{--bg: #ffffff;--bg-soft: #f4f6f9;--card: #ffffff;--card-shadow: 0 1px 3px rgba(16, 25, 43, .06), 0 1px 2px rgba(16, 25, 43, .04);--border: #e3e8ef;--fg: #11192b;--fg-soft: #38465c;--muted: #66718a;--accent: #0d9b76;--accent-fg: #ffffff;--accent-2: #d6266f;--header-bg: rgba(255, 255, 255, .85);--tag-bg: rgba(13, 155, 118, .1);--tag-border: rgba(13, 155, 118, .28)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--font-sans);line-height:1.7;-webkit-font-smoothing:antialiased;transition:background .25s ease,color .25s ease}.container{width:100%;max-width:var(--max);margin:0 auto;padding:0 20px}.site-header{border-bottom:1px solid var(--border);background:var(--header-bg);backdrop-filter:blur(8px);position:sticky;top:0;z-index:10;transition:background .25s ease,border-color .25s ease}.header-inner{display:flex;align-items:center;justify-content:space-between;height:60px}.header-right{display:flex;align-items:center;gap:8px}.brand{font-family:var(--font-mono);font-size:20px;font-weight:700;color:var(--fg);text-decoration:none;letter-spacing:-.5px}.brand-mark{color:var(--accent)}.brand-dot{color:var(--muted)}.site-nav{display:flex;gap:4px}.nav-link{color:var(--muted);text-decoration:none;font-size:14px;padding:8px 12px;border-radius:8px;transition:color .15s,background .15s}.nav-link:hover{color:var(--fg);background:var(--bg-soft)}.nav-link.active{color:var(--accent)}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;transition:color .15s,border-color .15s,background .15s}.theme-toggle:hover{color:var(--fg);border-color:var(--accent);background:var(--bg-soft)}.theme-toggle svg{width:18px;height:18px}.theme-toggle .icon-moon{display:none}.theme-toggle .icon-sun{display:block}:root[data-theme=dark] .theme-toggle .icon-moon{display:block}:root[data-theme=dark] .theme-toggle .icon-sun{display:none}main.container{padding-top:48px;padding-bottom:80px;min-height:60vh}.hero{padding:40px 0 56px}.hero-eyebrow{font-family:var(--font-mono);font-size:12px;letter-spacing:3px;color:var(--accent);margin:0 0 16px}.hero-title{font-size:clamp(28px,5vw,44px);line-height:1.25;margin:0 0 20px;font-weight:800}.hl{color:var(--accent)}.hl-2{color:var(--accent-2)}.hero-sub{font-size:17px;color:var(--muted);max-width:640px;margin:0 0 28px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-block;padding:11px 20px;border-radius:10px;text-decoration:none;font-size:15px;font-weight:600;transition:transform .1s,opacity .15s}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--accent);color:var(--accent-fg)}.btn-primary:hover{opacity:.9}.btn-ghost{border:1px solid var(--border);color:var(--fg)}.btn-ghost:hover{border-color:var(--accent)}.pillars{margin-top:8px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}.card{display:block;background:var(--card);border:1px solid var(--border);border-radius:14px;padding:22px;text-decoration:none;color:var(--fg);box-shadow:var(--card-shadow);transition:border-color .15s,transform .15s,background .25s,box-shadow .25s}.card:hover{border-color:var(--accent);transform:translateY(-3px)}.card-title{margin:12px 0 8px;font-size:18px}.card-desc{color:var(--muted);font-size:14px;margin:0 0 14px}.card-more{color:var(--accent);font-size:14px;font-weight:600}.tag{display:inline-block;font-family:var(--font-mono);font-size:12px;color:var(--accent);background:var(--tag-bg);border:1px solid var(--tag-border);padding:3px 10px;border-radius:999px}.prose{max-width:720px}.prose h1{font-size:clamp(26px,4vw,36px);margin:16px 0 20px;line-height:1.3}.prose h2{font-size:22px;margin:36px 0 12px}.prose p{color:var(--fg-soft);margin:0 0 16px}.prose ul{color:var(--fg-soft);padding-left:22px;margin:0 0 16px}.prose li{margin:6px 0}.prose strong{color:var(--fg)}.prose .muted{color:var(--muted)}.prose a{color:var(--accent)}.callout{background:var(--bg-soft);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:10px;padding:16px 18px;color:var(--muted);margin:24px 0;font-size:15px}.site-footer{border-top:1px solid var(--border);padding:32px 0;margin-top:40px;transition:border-color .25s ease}.footer-tagline{font-family:var(--font-mono);color:var(--fg);margin:0 0 8px;font-size:14px}.footer-ethics{color:var(--muted);font-size:13px;max-width:600px;margin:0 0 8px}.footer-copy{color:var(--muted);font-size:13px;margin:0}.post-list{list-style:none;padding:0;margin:24px 0 0}.post-list li{padding:20px 0;border-bottom:1px solid var(--border)}.post-list li:first-child{padding-top:0}.post-title{font-size:19px;font-weight:700;color:var(--fg);text-decoration:none}.post-title:hover{color:var(--accent)}.post-list time{display:block;font-family:var(--font-mono);font-size:12px;color:var(--muted);margin:6px 0}.post-desc{color:var(--fg-soft);font-size:14px;margin:6px 0 0}.back-link{display:inline-block;font-size:14px;color:var(--muted);text-decoration:none;margin-bottom:12px}.back-link:hover{color:var(--accent)}.post-meta{font-family:var(--font-mono);font-size:13px;color:var(--muted);margin:0 0 28px}.prose h3{font-size:18px;margin:28px 0 10px}.prose code{font-family:var(--font-mono);font-size:.9em;background:var(--bg-soft);border:1px solid var(--border);border-radius:5px;padding:1px 6px}.prose pre{background:var(--bg-soft);border:1px solid var(--border);border-radius:10px;padding:16px;overflow-x:auto;margin:0 0 16px}.prose pre code{background:none;border:none;padding:0;font-size:13px}.prose blockquote{border-left:3px solid var(--accent);margin:0 0 16px;padding:4px 0 4px 16px;color:var(--muted)}.prose hr{border:none;border-top:1px solid var(--border);margin:32px 0}
