@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff")}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#f1f3f5;--ink:#26303c;--muted:#5b697a;--subtle:#5b697a;--line:#d3dbe3;--line-strong:#aab9c8;--surface:#f8fafc;--surface-raised:#fff;--surface-inset:#e5ebf1;--surface-hover:#e6edf4;--surface-glass:#f8fafced;--surface-glass-soft:#f8fafcb8;--accent:#566f89;--accent-strong:#3f5974;--accent-warm:#9a7950;--accent-soft:#b5c6d7;--on-accent:#f8fafc;--selection:#3f5974;--on-selection:#fff;--focus:#627f9c;--desk-glow:#fcfdfe;--desk-olive:var(--accent);--desk-muted:var(--muted);--desk-rule:var(--line);--overlay:#e7ecf2e8;--overlay-solid:#e7ecf2;--shadow:#24334924;--shadow-soft:#24334912;--shadow-strong:#2433493d;--grid-dot:#8d9fb45c;--tape:#c9d5e1a8;--tape-edge:#fff8;--book-page:#f8f8f4;--book-page-inner:#eef0ec;--book-page-fold:#d6dbd8;--book-page-edge:#cbd3d2;--book-cover:#c7d1dd;--book-spine:#8fa1b4;--book-rule:#d1d8d8;--archive-cover:#c6b79f;--archive-spine:#a5947b;--monitor-frame:#27323e}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#10151c;--ink:#e7ecf2;--muted:#9eaabb;--subtle:#8c9bad;--line:#364453;--line-strong:#566a80;--surface:#1b232d;--surface-raised:#222d39;--surface-inset:#151d27;--surface-hover:#2c3a4a;--surface-glass:#1b232ded;--surface-glass-soft:#1b232dd9;--accent:#b9cde1;--accent-strong:#dce9f6;--accent-warm:#d2b58d;--accent-soft:#556f8b;--on-accent:#121c27;--selection:#b9cde1;--on-selection:#10151c;--focus:#b9cde1;--desk-glow:#1b2430;--overlay:#101722ed;--overlay-solid:#131c27;--shadow:#00000050;--shadow-soft:#0000002e;--shadow-strong:#00000070;--grid-dot:#788ca541;--tape:#788da866;--tape-edge:#b9cde14d;--book-page:#25303a;--book-page-inner:#202932;--book-page-fold:#151d26;--book-page-edge:#344250;--book-cover:#35485c;--book-spine:#234;--book-rule:#44515d;--archive-cover:#574d40;--archive-spine:#3c352e;--monitor-frame:#101820}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#10151c;--ink:#e7ecf2;--muted:#9eaabb;--subtle:#8c9bad;--line:#364453;--line-strong:#566a80;--surface:#1b232d;--surface-raised:#222d39;--surface-inset:#151d27;--surface-hover:#2c3a4a;--surface-glass:#1b232ded;--surface-glass-soft:#1b232dd9;--accent:#b9cde1;--accent-strong:#dce9f6;--accent-warm:#d2b58d;--accent-soft:#556f8b;--on-accent:#121c27;--selection:#b9cde1;--on-selection:#10151c;--focus:#b9cde1;--desk-glow:#1b2430;--overlay:#101722ed;--overlay-solid:#131c27;--shadow:#00000050;--shadow-soft:#0000002e;--shadow-strong:#00000070;--grid-dot:#788ca541;--tape:#788da866;--tape-edge:#b9cde14d;--book-page:#25303a;--book-page-inner:#202932;--book-page-fold:#151d26;--book-page-edge:#344250;--book-cover:#35485c;--book-spine:#234;--book-rule:#44515d;--archive-cover:#574d40;--archive-spine:#3c352e;--monitor-frame:#101820}}@font-face{font-family:DM Sans Variable;font-style:normal;font-weight:100 1000;font-display:swap;src:url(/assets/dm-sans-latin-wght-normal-Xz1IZZA0.woff2)format("woff2")}:root{color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:DM Sans Variable,sans-serif}*{box-sizing:border-box}html{scrollbar-gutter:stable}body{min-width:320px;margin:0}a{color:inherit;-webkit-tap-highlight-color:transparent;text-decoration:none}a:focus-visible{outline:2px solid var(--focus);outline-offset:8px;border-radius:2px}::selection{color:var(--on-selection);background:var(--selection)}p,h1{margin:0}.home-content{display:block}.site-shell{background:var(--paper);min-height:100svh}.ui-icon{vertical-align:middle;flex:none;width:1em;height:1em;display:inline-block}.micro{letter-spacing:.06em;font-family:IBM Plex Mono,monospace;font-size:10px;line-height:1.6}.desk-identity{z-index:2;position:relative}.desk-identity h1{letter-spacing:-.07em;width:fit-content;margin:0;font-size:clamp(66px,7.2vw,112px);font-weight:560;line-height:.98}.name-button{color:inherit;font:inherit;line-height:inherit;letter-spacing:inherit;text-align:left;cursor:pointer;perspective:1100px;-webkit-tap-highlight-color:transparent;touch-action:manipulation;background:0 0;border:0;padding:0;display:block;position:relative}.name-button:focus-visible{outline:1px dashed var(--muted);outline-offset:12px;border-radius:2px}.name-plane{transform-style:preserve-3d;display:block;position:relative}.name-face{display:block}.name-secondary{visibility:hidden}.name-face-zh{letter-spacing:-.045em;font-family:PingFang SC,PingFang TC,Microsoft YaHei,Noto Sans CJK SC,sans-serif;font-weight:500;position:absolute;inset:0}.name-face-zh[lang=zh-Hant]{font-family:PingFang TC,Microsoft JhengHei,Noto Sans CJK TC,sans-serif}.name-mask{white-space:nowrap;perspective:900px;margin-bottom:-.09em;padding:.035em .06em .09em 0;display:block;overflow:hidden}.name-char{transform-origin:50% 75%;backface-visibility:hidden;display:inline-block}.name-intro-char{transform-origin:50% 100%;display:inline-block}.desk-display-name .name-plane{width:max-content;height:1.25em}.desk-display-name .name-face{white-space:nowrap;color:var(--ink);line-height:1.25}.desk-display-name .name-primary{width:max-content;position:relative}.desk-display-name .name-secondary{position:absolute;inset:0}.desk-display-name .name-mask{margin:0;padding:0 .06em 0 0}.desk-display-name .name-intro-char{white-space:pre}.name-period{color:var(--accent-warm)}.name-hint{white-space:nowrap;color:var(--muted);letter-spacing:.045em;align-items:center;gap:10px;font-size:8px;line-height:1.5;display:flex;position:absolute;top:calc(100% + 17px);left:3px}.name-language{min-width:24px;color:var(--ink)}.name-hint-arrow{width:13px;height:13px}.desk-identity .name-hint{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.composer-loading{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);z-index:10;cursor:pointer;padding:14px 18px;position:fixed;bottom:24px;right:24px}@media (width<=760px){.desk-identity h1{font-size:clamp(62px,14vw,88px)}}
