:root{--bg: #0d0f12;--bg-grid: #14171c;--surface: #15181d;--surface-2: #1b1f26;--border: #262b33;--text: #e6e8eb;--muted: #9aa3ad;--faint: #5b636d;--accent: #ffaa33;--accent-hot: #ff7a1a;--accent-dim: #4a3a1c;--ok: #4ade80;--mono: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--sans: "IBM Plex Sans", system-ui, -apple-system, sans-serif;--maxw: 720px;--maxw-wide: 1080px}*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{margin:0;background-color:var(--bg);background-image:linear-gradient(var(--bg-grid) 1px,transparent 1px),linear-gradient(90deg,var(--bg-grid) 1px,transparent 1px);background-size:32px 32px;background-position:-1px -1px;color:var(--text);font-family:var(--sans);font-size:17px;line-height:1.7;-webkit-font-smoothing:antialiased}.wrap{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 1.25rem}.wrap.wide{max-width:var(--maxw-wide)}a{color:var(--accent);text-decoration:none;border-bottom:1px solid var(--accent-dim);transition:color .15s,border-color .15s}a:hover{color:var(--accent-hot);border-color:var(--accent-hot)}h1,h2,h3,h4{font-family:var(--sans);font-weight:600;line-height:1.2;letter-spacing:-.01em}h1{font-size:2.1rem;margin:0 0 .6rem}h2{font-size:1.4rem;margin:2.4rem 0 .8rem}h3{font-size:1.12rem;margin:1.8rem 0 .5rem}.kicker{font-family:var(--mono);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--accent)}code{font-family:var(--mono);font-size:.88em;background:var(--surface-2);border:1px solid var(--border);border-radius:4px;padding:.1em .35em}pre{border:1px solid var(--border);border-radius:8px;padding:1rem 1.1rem!important;overflow-x:auto;font-size:.86rem;line-height:1.55}pre code{background:none;border:none;padding:0}blockquote{margin:1.4rem 0;padding:.4rem 1.1rem;border-left:3px solid var(--accent);color:var(--muted)}hr{border:none;border-top:1px solid var(--border);margin:2.5rem 0}table{border-collapse:collapse;width:100%;font-size:.92rem}th,td{border:1px solid var(--border);padding:.5rem .7rem;text-align:left}th{background:var(--surface-2)}.site-header{border-bottom:1px solid var(--border);background:#0d0f12cc;backdrop-filter:blur(8px);position:sticky;top:0;z-index:10}.site-header .bar{display:flex;align-items:center;justify-content:space-between;height:60px}.logo{font-family:var(--mono);font-weight:600;letter-spacing:.04em;color:var(--text);border:none;font-size:1rem}.logo .dot{color:var(--accent)}.nav a{font-family:var(--mono);font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);border:none;margin-left:1.4rem}.nav a:hover{color:var(--accent)}.nav a.lang-switch{color:var(--accent);border:1px solid var(--border);border-radius:2px;padding:.12rem .45rem;margin-left:1rem}.nav a.lang-switch:hover{border-color:var(--accent);color:var(--accent-hot)}.site-footer{border-top:1px solid var(--border);margin-top:5rem;padding:2.5rem 0;color:var(--faint);font-size:.85rem;font-family:var(--mono)}.post-list{list-style:none;padding:0;margin:2rem 0 0}.post-item{padding:1.4rem 0;border-bottom:1px solid var(--border)}.post-item:first-child{border-top:1px solid var(--border)}.post-item h2{font-size:1.25rem;margin:.3rem 0}.post-meta{font-family:var(--mono);font-size:.74rem;letter-spacing:.05em;color:var(--faint);text-transform:uppercase}.tag{display:inline-block;font-family:var(--mono);font-size:.68rem;letter-spacing:.05em;color:var(--accent);border:1px solid var(--accent-dim);border-radius:3px;padding:.05em .45em;margin-right:.4rem}.cat-deep:before{content:"◆ "}.cat-ai-cnc:before{content:"▲ "}.cat-intro:before{content:"● "}.article-head{padding:2.5rem 0 1.5rem;border-bottom:1px solid var(--border)}.article-body{padding:2rem 0 0}.article-body p{margin:1.1rem 0}.article-body img{max-width:100%;border:1px solid var(--border);border-radius:8px}.draft-banner{font-family:var(--mono);font-size:.78rem;letter-spacing:.06em;background:var(--accent-dim);color:var(--accent);border:1px solid var(--accent);border-radius:6px;padding:.6rem .9rem;margin:1.2rem 0}.firsthand{background:repeating-linear-gradient(45deg,#1e1407,#1e1407 8px,#241a0a 8px 16px);border:1px dashed var(--accent);border-radius:6px;padding:.8rem 1rem;margin:1.2rem 0;color:var(--accent);font-size:.92rem}.faq{margin-top:3rem}.faq h3{border-top:1px solid var(--border);padding-top:1.2rem}@media(max-width:600px){body{font-size:16px}h1{font-size:1.7rem}}
