:root{--bg:#fff;--fg:#1f2328;--mute:#656d76;--line:#e5e7eb;--acc:#2563eb;--card:#f8fafc}@media(prefers-color-scheme:dark){:root{--bg:#0f1115;--fg:#e6e6e6;--mute:#9aa4b2;--line:#262b33;--acc:#7aa2ff;--card:#161a21}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--fg);line-height:1.8;font-size:17px;font-family:-apple-system,BlinkMacSystemFont,pingfang sc,hiragino sans gb,microsoft yahei,noto sans cjk sc,source han sans sc,wenquanyi micro hei,system-ui,sans-serif}a{color:var(--acc);text-decoration:none}a:hover{text-decoration:underline}.wrap{max-width:760px;margin:0 auto;padding:0 20px}.top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding-top:20px;padding-bottom:16px;border-bottom:1px solid var(--line)}.logo{font-weight:700;font-size:1.15em;color:var(--fg)}nav a{margin-left:16px;color:var(--mute)}nav a:first-child{margin-left:0}.hero{padding:28px 0 8px}.hero h1{margin:0}.hero p{color:var(--mute);margin:.3em 0 0}.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px 20px;margin:18px 0}.card h2{margin:0 0 4px;font-size:1.25em;line-height:1.5}.card p{margin:.4em 0 0;color:var(--mute)}.meta{color:var(--mute);font-size:.88em}.tag{margin-left:8px}.post h1{line-height:1.4;margin-top:28px}.content img{max-width:100%;height:auto;border-radius:10px}.content table{border-collapse:collapse;width:100%}.content td,.content th{border:1px solid var(--line);padding:6px 10px}.content pre{background:var(--card);border:1px solid var(--line);padding:12px;border-radius:8px;overflow-x:auto;font-size:.9em}.content code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,liberation mono,monospace}.terms li{margin:6px 0}.foot{color:var(--mute);font-size:.85em;padding-top:24px;padding-bottom:40px;border-top:1px solid var(--line);margin-top:40px}@media(max-width:600px){body{font-size:16px}nav a{margin-left:12px}}