@font-face{font-family:ibm plex sans;src:url(/fonts/ibm-plex-sans-latin-400-normal.woff2)format("woff2");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:ibm plex sans;src:url(/fonts/ibm-plex-sans-latin-500-normal.woff2)format("woff2");font-style:normal;font-weight:500;font-display:swap}@font-face{font-family:ibm plex sans;src:url(/fonts/ibm-plex-sans-latin-600-normal.woff2)format("woff2");font-style:normal;font-weight:600;font-display:swap}@font-face{font-family:inconsolata;src:url(/fonts/inconsolata-latin-400-normal.woff2)format("woff2");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:inconsolata;src:url(/fonts/inconsolata-latin-500-normal.woff2)format("woff2");font-style:normal;font-weight:500;font-display:swap}@font-face{font-family:inconsolata;src:url(/fonts/inconsolata-latin-600-normal.woff2)format("woff2");font-style:normal;font-weight:600;font-display:swap}:root{--pf-font-sans-latin:"IBM Plex Sans", system-ui, -apple-system, sans-serif;--pf-font-sans-sc:"IBM Plex Sans SC", "Source Han Sans SC", "Noto Sans CJK SC", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--pf-font-sans-tc:"IBM Plex Sans TC", "Source Han Sans TC", "Noto Sans CJK TC", "PingFang TC", "Microsoft JhengHei", sans-serif;--pf-font-sans-hc:"Source Han Sans HC", "Noto Sans CJK HK", "PingFang HK", "IBM Plex Sans TC", sans-serif;--pf-font-sans:var(--pf-font-sans-latin);--pf-font-serif-latin:"IBM Plex Serif", "STIX Two Text", serif;--pf-font-serif-sc:"Source Han Serif SC", "Noto Serif CJK SC", "Songti SC", serif;--pf-font-serif-tc:"Source Han Serif TC", "Noto Serif CJK TC", "Songti TC", serif;--pf-font-serif:var(--pf-font-serif-latin);--pf-font-math:"IBM Plex Math", "STIX Two Math", "Cambria Math", serif;--pf-font-mono:"Inconsolata", monospace;--pf-font-mono-sc:"Sarasa Mono SC", "Sarasa Fixed SC", "Noto Sans Mono CJK SC", monospace;--pf-font-mono-tc:"Sarasa Mono TC", "Sarasa Fixed TC", "Noto Sans Mono CJK TC", monospace;--pf-bg:#ffffff;--pf-fg:#020618;--pf-muted:#62748e;--pf-border:#e2e8f0;--pf-border-strong:#cad5e2;--pf-hover:#f1f5f9;--pf-surface:#f8fafc;--pf-accent:#0f172b;--pf-accent-fg:#f8fafc;--pf-green:#008138;--pf-green-bg:#e6f6ec;--pf-green-border:#adf0c6;--pf-red:#9f1239;--pf-red-bg:#fff5f5;--pf-red-border:#f1b4b4;--pf-blue:#2563eb;--pf-mint:#22c55e;--pf-focus:#2563eb;--pf-radius:0px;--pf-border-width:1px}html:lang(zh-cn),html:lang(zh-sg){--pf-font-sans:var(--pf-font-sans-sc);--pf-font-serif:var(--pf-font-serif-sc);--pf-font-mono:var(--pf-font-mono-sc)}html:lang(zh-tw),html:lang(zh-mo){--pf-font-sans:var(--pf-font-sans-tc);--pf-font-serif:var(--pf-font-serif-tc);--pf-font-mono:var(--pf-font-mono-tc)}html:lang(zh-hk){--pf-font-sans:var(--pf-font-sans-hc);--pf-font-serif:var(--pf-font-serif-tc);--pf-font-mono:var(--pf-font-mono-tc)}html[data-theme=dark]{--pf-bg:#0b1018;--pf-fg:#e6edf6;--pf-muted:#93a4b8;--pf-border:#27313f;--pf-border-strong:#3b4858;--pf-hover:#19212e;--pf-surface:#121a26;--pf-accent:#e6edf6;--pf-accent-fg:#0b1018;--pf-green:#4ade80;--pf-green-bg:#132d1d;--pf-green-border:#1b4e2d;--pf-red:#fca5a5;--pf-red-bg:#2a1416;--pf-red-border:#7f1d1d;--pf-focus:#93c5fd}*{box-sizing:border-box;margin:0;padding:0;border-radius:var(--pf-radius)!important}body{background-color:var(--pf-bg);color:var(--pf-fg);font-family:var(--pf-font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5}h1,h2,h3,h4,h5,h6{font-family:var(--pf-font-sans);font-weight:600;color:var(--pf-accent)}code,pre,kbd,samp{font-family:var(--pf-font-mono);font-size:.9em}math,.pf-math-native{font-family:var(--pf-font-math)}:focus-visible{outline:2px solid var(--pf-focus);outline-offset:2px}table{width:100%;border-collapse:collapse;text-align:left;font-size:.9rem}th,td{padding:8px 12px;border-bottom:var(--pf-border-width)solid var(--pf-border)}th{background-color:var(--pf-surface);font-weight:600;border-bottom:2px solid var(--pf-border-strong)}tr:hover td{background-color:var(--pf-hover)}button,.btn{display:inline-flex;align-items:center;justify-content:center;padding:6px 12px;font-family:var(--pf-font-sans);font-size:.85rem;font-weight:500;background-color:var(--pf-bg);color:var(--pf-fg);border:var(--pf-border-width)solid var(--pf-border-strong);cursor:pointer;box-shadow:none;transition:background-color .15s ease}button:hover,.btn:hover{background-color:var(--pf-hover)}button:disabled,.btn[aria-disabled=true],input:disabled,select:disabled,textarea:disabled{cursor:not-allowed;opacity:.55}button[aria-busy=true],.btn[aria-busy=true]{cursor:progress}button.primary,.btn-primary{background-color:var(--pf-accent);color:var(--pf-accent-fg);border-color:var(--pf-accent)}button.primary:hover,.btn-primary:hover{background-color:var(--pf-hover);color:var(--pf-fg)}input,select,textarea{padding:6px 10px;font-family:var(--pf-font-sans);font-size:.9rem;border:var(--pf-border-width)solid var(--pf-border);background-color:var(--pf-bg);color:var(--pf-fg);outline:none}input:focus,select:focus,textarea:focus{border-color:var(--pf-border-strong);box-shadow:0 0 0 1px var(--pf-border-strong)}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.badge{display:inline-flex;align-items:center;padding:2px 6px;font-family:var(--pf-font-mono);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;border:var(--pf-border-width)solid var(--pf-border);background-color:var(--pf-surface)}.badge-online{color:var(--pf-green);background-color:var(--pf-green-bg);border-color:var(--pf-green-border)}.badge-offline{color:var(--pf-red);background-color:var(--pf-red-bg);border-color:var(--pf-red-border)}.histogram-container{display:flex;align-items:center;gap:8px;font-family:var(--pf-font-mono);font-size:.85rem}.histogram-bar{display:flex;height:12px;background-color:var(--pf-hover);border:var(--pf-border-width)solid var(--pf-border);flex:1}.histogram-fill{height:100%}.histogram-fill-cpu{background-color:var(--pf-mint)}.histogram-fill-mem{background-color:var(--pf-blue)}html{color-scheme:light;font-size:16px}html:lang(zh-cn),html:lang(zh-sg){--pf-font-sans-sc:var(--pf-font-sans-latin)}body{min-height:100vh}a{color:#075f9b;text-decoration-thickness:1px;text-underline-offset:.18em}a:hover{color:var(--pf-fg)}img,video,iframe{max-width:100%;height:auto}.site-header{border-bottom:1px solid var(--pf-border)}.site-header__inner,.site-main,.site-footer__inner{width:min(100% - 32px,1120px);margin-inline:auto}.site-header__inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:72px}.site-title{color:var(--pf-fg);font-size:clamp(1.05rem,2vw,1.35rem);font-weight:600;text-decoration:none}.site-nav ul{display:flex;flex-wrap:wrap;gap:4px;list-style:none}.site-nav a{display:block;padding:8px 10px;color:var(--pf-fg);text-decoration:none;border:1px solid transparent}.site-nav a:hover,.site-nav a[aria-current=page]{background:var(--pf-surface);border-color:var(--pf-border)}.site-main{max-width:900px;min-width:0;padding-block:44px 80px}.document-header{max-width:900px;margin-bottom:32px;padding-bottom:20px;border-bottom:1px solid var(--pf-border)}.document-header h1{font-size:clamp(1.8rem,5vw,3.25rem);line-height:1.08;letter-spacing:-.025em;overflow-wrap:anywhere}.document-meta,.post-list__meta,.migration-note{color:var(--pf-muted);font-family:var(--pf-font-mono);font-size:.86rem}.document-meta{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:14px}.seminar-facts{margin-bottom:30px;border-top:1px solid var(--pf-border);border-left:1px solid var(--pf-border)}.seminar-facts__row{display:grid;margin:0}.seminar-facts__row--identity{grid-template-columns:minmax(180px,1fr)minmax(0,2fr)}.seminar-facts__row--schedule{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.seminar-facts__row--single{grid-template-columns:minmax(0,1fr)}.seminar-facts__row>div{padding:12px 14px;border-right:1px solid var(--pf-border);border-bottom:1px solid var(--pf-border)}.seminar-facts dt{color:var(--pf-muted);font-family:var(--pf-font-mono);font-size:.78rem;text-transform:uppercase;letter-spacing:.06em}.seminar-facts dd{margin-top:4px;overflow-wrap:anywhere}.seminar-facts__timezone{color:var(--pf-muted);font-size:.9em}.markdown-content{max-width:900px;min-width:0;font-size:1rem;line-height:1.72;overflow-wrap:anywhere}.katex-display{max-width:100%;overflow-x:auto;overflow-y:hidden}.markdown-content>*+*{margin-top:1.15rem}.markdown-content h2,.markdown-content h3,.markdown-content h4{margin-top:2.2rem;line-height:1.22}.markdown-content ul,.markdown-content ol{padding-left:1.45rem}.page-people .markdown-content img{display:block;width:215px;height:300px;margin-inline:auto;object-fit:cover;object-position:center top}.home-content{display:grid;grid-template-areas:"about seminars" "join news" "contact visitors";grid-template-columns:repeat(2,minmax(0,1fr));column-gap:56px;align-items:start}.home-panel{display:grid;grid-template-columns:minmax(0,1fr)auto;min-width:0}.home-content>.home-panel{margin-top:0}.home-panel--about{grid-area:about}.home-panel--join{grid-area:join}.home-panel--contact{grid-area:contact}.home-panel--seminars{grid-area:seminars}.home-panel--news{grid-area:news}.home-panel--visitors{grid-area:visitors}.home-panel>*{grid-column:1/-1}.home-panel>*+*{margin-top:1.15rem}.home-panel>h2:first-child{grid-column:1;grid-row:1;margin-top:0}.home-panel>h2:first-child+p:has(>a:only-child){grid-column:2;grid-row:1;margin-top:0;text-align:right}.home-panel>hr{margin-block:2rem}.home-panel--seminars ul,.home-panel--news ul{padding-left:0;border-top:1px solid var(--pf-border);list-style:none}.home-panel--seminars li,.home-panel--news li{display:grid;grid-template-columns:minmax(0,1fr)auto;gap:8px 18px;padding-block:10px;color:var(--pf-muted);border-bottom:1px solid var(--pf-border);font-family:var(--pf-font-mono);font-size:.82rem}.home-panel--seminars li a,.home-panel--news li a{font-family:var(--pf-font-sans);font-size:.95rem}.people-directory{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.people-directory p{margin:0;text-align:center}.people-card{display:grid;grid-template-columns:minmax(0,1fr)minmax(0,2fr);gap:28px;align-items:start}.people-content>h2+.people-card{margin-top:.3rem}.people-card__portrait p,.people-card__details p{margin:0}.people-card__portrait img{margin-inline:auto}.people-card__details>*+*{margin-top:.35rem}.people-section>*+*{margin-top:1.15rem}.markdown-content hr{margin-block:2rem;border:0;border-top:1px solid var(--pf-border)}.markdown-content table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse}.markdown-content th,.markdown-content td{padding:8px 10px;border:1px solid var(--pf-border);text-align:left;vertical-align:top}.post-list{max-width:900px;border-top:1px solid var(--pf-border);list-style:none}.post-list li{display:grid;grid-template-columns:minmax(0,1fr)auto;gap:10px 22px;padding-block:16px;border-bottom:1px solid var(--pf-border)}.post-list a{color:var(--pf-fg);font-weight:500}.post-list__summary{margin:6px 0 0;color:var(--pf-muted);font-size:.92rem}.pagination{display:flex;gap:4px;margin-top:28px;list-style:none}.pagination a,.pagination span{display:block;min-width:38px;padding:7px 10px;border:1px solid var(--pf-border);text-align:center;text-decoration:none}.pagination .active span{color:var(--pf-accent-fg);background:var(--pf-accent);border-color:var(--pf-accent)}.site-footer{border-top:1px solid var(--pf-border)}.site-footer__inner{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;padding-block:24px;color:var(--pf-muted);font-size:.86rem}@media(max-width:760px){.site-header__inner{align-items:flex-start;flex-direction:column;padding-block:16px}.seminar-facts__row--identity,.seminar-facts__row--schedule{grid-template-columns:minmax(0,1fr)}.post-list li{grid-template-columns:1fr}.home-content{display:block}.home-panel{display:block}.home-panel>h2:first-child+p:has(>a:only-child){margin-top:1.15rem;text-align:left}.home-panel+.home-panel{margin-top:2.2rem}.people-directory{grid-template-columns:minmax(0,1fr)}.people-directory p{text-align:left}.people-card{grid-template-columns:minmax(0,1fr)}.people-card__portrait img{margin-inline:auto}}