:root{--bg: #f6f2ea;--fg: #1a1411;--muted: rgba(26, 20, 17, .6);--line: rgba(26, 20, 17, .14);--stamp: rgba(26, 20, 17, .05);--accent: var(--accent-light, #b8711a);--cjk-serif: "Noto Serif SC", "Noto Serif TC", "Songti SC", "STSong", "Source Han Serif SC", "Source Han Serif TC", SimSun;--cjk-sans: "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Heiti SC";--font-title: "Cormorant Garamond", var(--cjk-serif), Georgia, "Times New Roman", serif;--font-body: "Spectral", var(--cjk-serif), Georgia, "Times New Roman", serif;--font-sans: "Inter", var(--cjk-sans), system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", var(--cjk-serif), ui-monospace, SFMono-Regular, monospace;color-scheme:light dark}html[data-theme=dark]{--bg: #14110e;--fg: #f3ead8;--muted: rgba(243, 234, 216, .7);--line: rgba(243, 234, 216, .16);--stamp: rgba(232, 162, 84, .1);--accent: var(--accent-dark, #e8a254)}@media(prefers-color-scheme:dark){html:not([data-theme]){--bg: #14110e;--fg: #f3ead8;--muted: rgba(243, 234, 216, .7);--line: rgba(243, 234, 216, .16);--stamp: rgba(232, 162, 84, .1);--accent: var(--accent-dark, #e8a254)}}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--fg);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background .6s,color .6s}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer;padding:0}::selection{background:var(--accent);color:var(--bg)}.bg-vignette{position:fixed;inset:0;pointer-events:none;z-index:-2;background:radial-gradient(ellipse at 30% 0%,color-mix(in oklab,var(--accent) 12%,transparent) 0%,transparent 50%),radial-gradient(ellipse at 80% 100%,color-mix(in oklab,var(--accent) 8%,transparent) 0%,transparent 50%);opacity:0;transition:opacity .6s}html[data-theme=dark] .bg-vignette{opacity:1}@media(prefers-color-scheme:dark){html:not([data-theme]) .bg-vignette{opacity:1}}.bg-grain{position:fixed;inset:0;pointer-events:none;z-index:-1;opacity:.18;background-image:url("data:image/svg+xml;utf8,<svg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2'/></filter><rect width='200' height='200' filter='url(%23n)' opacity='0.5'/></svg>");mix-blend-mode:overlay}.site-nav{position:relative;display:flex;justify-content:space-between;align-items:center;padding:28px 64px;border-bottom:1px solid var(--line);font-size:13px}.site-nav .brand{display:flex;align-items:center;gap:12px;font-weight:500}.site-nav .brand-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 12px var(--accent)}.site-nav .brand-slash{color:var(--muted);font-family:var(--font-mono);font-size:12px}.site-nav .links{display:flex;gap:32px;align-items:center;color:var(--muted)}.site-nav .links a:hover{color:var(--fg)}.site-nav .theme-btn{padding:6px 14px;border:1px solid var(--line);border-radius:999px;font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);display:inline-flex;align-items:center;gap:8px}.site-nav .theme-btn:hover{color:var(--fg);border-color:var(--fg)}.hero{position:relative;padding:80px 64px 64px;border-bottom:1px solid var(--line);overflow:hidden}.hero-marquee{position:absolute;right:-200px;top:200px;font-family:var(--font-title);font-size:240px;line-height:1;font-style:italic;font-weight:300;color:color-mix(in oklab,var(--accent) 8%,transparent);white-space:nowrap;transform:rotate(-4deg);pointer-events:none;user-select:none}.hero-kicker{font-family:var(--font-mono);font-size:11px;letter-spacing:3px;text-transform:uppercase;color:var(--accent);margin-bottom:32px}.hero-title{font-family:var(--font-title);font-size:clamp(64px,11vw,136px);line-height:.94;letter-spacing:-4px;margin:0;font-weight:300;text-wrap:balance}.hero-title em{font-style:italic;color:var(--accent);font-weight:300}.hero-sub{margin-top:36px;max-width:620px;font-size:18px;line-height:1.5;color:var(--muted);font-family:var(--font-body)}.hero-cta{margin-top:40px;display:flex;gap:16px;font-family:var(--font-mono);font-size:11px;letter-spacing:1.5px;text-transform:uppercase}.hero-cta a{padding:10px 18px;border-radius:999px;display:inline-flex;align-items:center;gap:8px}.hero-cta a.primary{background:var(--accent);color:var(--bg);font-weight:600}.hero-cta a.secondary{border:1px solid var(--line);color:var(--muted)}.hero-cta a.secondary:hover{color:var(--fg);border-color:var(--fg)}.section-head{padding:48px 64px 24px;display:flex;justify-content:space-between;align-items:baseline;font-family:var(--font-mono);font-size:11px;letter-spacing:3px;text-transform:uppercase;color:var(--muted)}.timeline{position:relative;padding:0 64px 96px}.timeline:before{content:"";position:absolute;left:132px;top:0;bottom:0;width:1px;background:linear-gradient(to bottom,transparent,color-mix(in oklab,var(--accent) 35%,transparent) 15%,color-mix(in oklab,var(--accent) 35%,transparent) 85%,transparent)}.timeline-card{display:grid;grid-template-columns:100px 1fr;gap:32px;padding:28px 0;position:relative;text-decoration:none;color:inherit}.timeline-card .date{font-family:var(--font-mono);font-size:11px;letter-spacing:1px;color:var(--muted);padding-top:6px;text-align:right;line-height:1.5}.timeline-card .dot{position:absolute;left:66px;top:34px;width:9px;height:9px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px var(--bg),0 0 16px color-mix(in oklab,var(--accent) 60%,transparent)}.timeline-card .content{padding-left:48px}.timeline-card .tag{font-family:var(--font-mono);font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--accent);margin-bottom:8px}.timeline-card .title{font-family:var(--font-title);font-size:32px;line-height:1.15;letter-spacing:-.5px;font-weight:400;margin:0 0 8px;color:var(--fg);transition:color .2s}.timeline-card:hover .title{color:var(--accent)}.timeline-card .title-en{font-family:var(--font-title);font-style:italic;font-size:14px;color:var(--muted);margin-bottom:8px}.timeline-card .excerpt{font-family:var(--font-body);font-size:15px;line-height:1.55;color:var(--muted);max-width:640px}.timeline-empty{padding:80px 64px;text-align:center;color:var(--muted);font-family:var(--font-mono);font-size:12px;letter-spacing:2px;text-transform:uppercase}.site-foot{padding:32px 64px;border-top:1px solid var(--line);font-family:var(--font-mono);font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);display:flex;justify-content:space-between}.read-progress{position:fixed;top:0;left:0;height:2px;background:var(--accent);width:0;z-index:200;transition:width .1s linear}.read-topbar{position:sticky;top:0;z-index:50;background:var(--bg);border-bottom:1px solid var(--line);padding:18px 48px;display:flex;justify-content:space-between;align-items:center;font-family:var(--font-mono);font-size:12px;letter-spacing:1px;text-transform:uppercase}.read-topbar .center{color:var(--muted);letter-spacing:2px}.read-layout{display:grid;grid-template-columns:220px minmax(0,680px) 280px;gap:56px;max-width:1280px;margin:0 auto;padding:72px 48px 240px;position:relative}@media(max-width:1100px){.read-layout{grid-template-columns:1fr;gap:24px;padding:48px 24px 160px}.read-toc,.read-marginalia{position:static!important}.read-marginalia{border-top:1px solid var(--line);padding-top:24px}}.read-toc{position:sticky;top:80px;align-self:start;font-family:var(--font-mono);font-size:11px;letter-spacing:.5px}.read-toc .label{text-transform:uppercase;letter-spacing:2px;color:var(--accent);margin-bottom:16px;font-size:10px}.read-toc a{display:block;padding:7px 0 7px 14px;border-left:2px solid var(--line);color:var(--muted);cursor:pointer;transition:all .2s}.read-toc a:hover{color:var(--fg)}.read-toc a.active{border-left-color:var(--accent);color:var(--fg);font-weight:600;background:var(--stamp)}.read-toc .meta{margin-top:32px;padding:16px 0 0;border-top:1px solid var(--line);font-size:10px;color:var(--muted);line-height:1.8}.read-toc .meta .label-sm{text-transform:uppercase;letter-spacing:2px;color:var(--accent);margin-bottom:8px;font-size:10px}.read-article{min-width:0;font-family:var(--font-body)}.read-article .kicker{font-family:var(--font-mono);font-size:11px;letter-spacing:3px;text-transform:uppercase;color:var(--accent);margin-bottom:32px}.read-article .title{font-family:var(--font-title);font-size:64px;line-height:1.02;letter-spacing:-1.5px;font-weight:400;margin:0 0 16px;text-wrap:balance}.read-article .title-en{font-family:var(--font-title);font-style:italic;font-size:22px;color:var(--muted);margin-bottom:16px}.read-article .subtitle{font-family:var(--font-title);font-style:italic;font-size:22px;line-height:1.35;color:var(--muted);margin-bottom:40px;font-weight:400}.read-article .byline{display:flex;align-items:center;gap:16px;font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:1.5px;color:var(--muted);padding-bottom:28px;border-bottom:1px solid var(--line);margin-bottom:48px}.read-article .avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--fg));display:inline-flex;align-items:center;justify-content:center;color:var(--bg);font-family:var(--font-title);font-style:italic;font-size:18px}.read-article .byline-name{color:var(--fg);font-weight:600}.read-article p{font-size:19px;line-height:1.7;margin:0 0 24px;text-wrap:pretty}.read-article p .drop-cap{float:left;font-family:var(--font-title);font-size:96px;line-height:.82;margin-right:12px;margin-top:6px;margin-bottom:-8px;color:var(--accent);font-style:italic;font-weight:500}.read-article h2{font-family:var(--font-title);font-size:34px;line-height:1.15;font-weight:400;letter-spacing:-.5px;margin:56px 0 24px}.read-article h2 .num{font-family:var(--font-mono);font-size:11px;letter-spacing:2px;color:var(--accent);font-style:normal;margin-right:12px}.read-article h3{font-family:var(--font-title);font-size:24px;font-weight:500;margin:32px 0 16px}.read-article .pull{margin:40px -20px;padding:24px 32px;border-left:3px solid var(--accent);font-family:var(--font-title);font-style:italic;font-size:26px;line-height:1.35;color:var(--fg);background:var(--stamp)}.read-article .fig{margin:40px 0;padding:32px;background:var(--stamp);border:1px dashed var(--line);text-align:center;font-family:var(--font-mono);font-size:12px;color:var(--muted);letter-spacing:1px}.read-article .ornament{font-family:var(--font-title);font-size:18px;color:var(--accent);font-style:italic;letter-spacing:8px;margin:40px 0;text-align:center}.read-article img{display:block;max-width:100%;height:auto;margin:32px 0;border-radius:2px}.read-article figure{margin:32px 0}.read-article figcaption{font-family:var(--font-mono);font-size:11px;color:var(--muted);text-align:center;margin-top:8px;letter-spacing:1px}.read-article pre{font-family:var(--font-mono);font-size:13px;background:var(--stamp);border:1px solid var(--line);padding:16px 20px;overflow-x:auto;border-radius:2px;line-height:1.55;margin:24px 0}.read-article a{color:var(--accent);border-bottom:1px solid currentColor}.read-article code{font-family:var(--font-mono);font-size:.92em;background:var(--stamp);padding:1px 5px;border-radius:2px}.fn-marker{color:var(--accent);font-size:12px;vertical-align:super;cursor:pointer;font-family:var(--font-mono);padding:0 2px;text-decoration:none}.fn-marker:hover{background:var(--stamp)}.read-article .filed-under{font-family:var(--font-mono);font-size:11px;color:var(--muted);line-height:1.8;text-transform:uppercase;letter-spacing:1.5px;padding-top:24px;border-top:1px solid var(--line);margin-top:48px}.read-marginalia{position:sticky;top:80px;align-self:start;font-family:var(--font-mono);font-size:12px;line-height:1.55;color:var(--muted)}.read-marginalia .mnote{padding:14px 0 14px 16px;border-left:2px solid var(--accent);margin-bottom:20px;opacity:.55;transition:opacity .3s}.read-marginalia .mnote.active{opacity:1}.read-marginalia .mnote-label{font-size:10px;text-transform:uppercase;letter-spacing:2px;color:var(--accent);margin-bottom:6px}
