:root{--bg: #0f1419;--bg-subtle: #111a23;--surface: #121c26;--card: #16212e;--card-hover: #1a2938;--border: #283649;--border-strong: #3c5066;--fg: #dfe7ef;--fg-strong: #f2f6fa;--muted: #95a7ba;--faint: #7b8fa5;--accent: #4f8cff;--accent-hover: #6b9dff;--accent-text: #8db6ff;--accent-soft: rgba(79, 140, 255, .1);--accent2: #3dd68c;--accent2-text: #69e6ac;--accent2-soft: rgba(61, 214, 140, .1);--bronze: #d29a6b;--bronze-soft: rgba(210, 154, 107, .11);--silver: #c1cedc;--silver-soft: rgba(193, 206, 220, .1);--danger: #ff7a7a;--grid-line: rgba(142, 164, 188, .075);--grid-strong: rgba(142, 164, 188, .13);--header-bg: rgba(15, 20, 25, .88);--prose-fg: #c9d5e1;--inline-code-bg: rgba(125, 161, 201, .13);--inline-code-border: rgba(125, 161, 201, .18);--code-bg: #0a1016;--btn-fg: #07111e;--selection: rgba(79, 140, 255, .32);--shadow-card: 0 28px 80px rgba(0, 0, 0, .22);--shadow-panel: 0 20px 60px rgba(0, 0, 0, .28);--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans CJK SC", "Source Han Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;--font-mono: ui-monospace, "SFMono-Regular", "Cascadia Code", "Roboto Mono", "Noto Sans Mono CJK SC", Menlo, Consolas, monospace;--font-serif: "Noto Serif CJK SC", "Source Han Serif SC", "Songti SC", STSong, Georgia, "Times New Roman", serif;--wrap: 1180px;--gutter: clamp(20px, 4.4vw, 44px);--header-h: 70px;--section-y: clamp(64px, 8.5vw, 108px);--radius: 4px;--ease: cubic-bezier(.2, .65, .3, 1);--z-header: 100}html[data-theme=light]{--bg: #f4f1e9;--bg-subtle: #f7f4ed;--surface: #faf8f2;--card: #fffdf8;--card-hover: #fffcf4;--border: #d7d1c4;--border-strong: #b6ad9e;--fg: #2b3744;--fg-strong: #14202c;--muted: #5b6a79;--faint: #5f6c78;--accent: #1f5fd6;--accent-hover: #194fb4;--accent-text: #1753bd;--accent-soft: rgba(31, 95, 214, .08);--accent2: #0a7b50;--accent2-text: #076842;--accent2-soft: rgba(10, 123, 80, .08);--bronze: #9a6034;--bronze-soft: rgba(154, 96, 52, .08);--silver: #5b6b7d;--silver-soft: rgba(100, 117, 135, .08);--danger: #b93737;--grid-line: rgba(30, 43, 56, .055);--grid-strong: rgba(30, 43, 56, .09);--header-bg: rgba(244, 241, 233, .89);--prose-fg: #303d49;--inline-code-bg: rgba(31, 95, 214, .07);--inline-code-border: rgba(31, 95, 214, .12);--code-bg: #0f1720;--btn-fg: #ffffff;--selection: rgba(31, 95, 214, .2);--shadow-card: 0 24px 70px rgba(53, 44, 28, .09);--shadow-panel: 0 20px 50px rgba(53, 44, 28, .11);color-scheme:light}:root[data-theme=dark]{color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html{min-width:320px;background:var(--bg);scroll-padding-top:calc(var(--header-h) + 24px)}@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{margin:0;min-height:100vh;background:var(--bg);color:var(--fg);font-family:var(--font-sans);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body:before{position:fixed;inset:0;z-index:-1;pointer-events:none;content:"";background:radial-gradient(ellipse 70% 38% at 72% -8%,rgba(79,140,255,.08),transparent 70%)}html[data-theme=light] body:before{background:radial-gradient(ellipse 70% 38% at 72% -8%,rgba(31,95,214,.06),transparent 70%)}::selection{color:var(--fg-strong);background:var(--selection)}h1,h2,h3,h4,h5,h6,p,figure,blockquote,dl,dd{margin:0}h1,h2,h3,h4,h5,h6{color:var(--fg-strong);font-weight:700;line-height:1.22;letter-spacing:-.025em;text-wrap:balance}ul,ol{margin:0;padding:0;list-style:none}img,picture,svg{display:block;max-width:100%}img{height:auto}a{color:inherit;text-decoration:none}button,input,textarea,select{color:inherit;font:inherit}button{padding:0;border:0;background:transparent;cursor:pointer}table{border-collapse:collapse}hr{border:0;border-top:1px solid var(--border)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}main{display:block}[hidden]{display:none!important}.wrap{width:100%;max-width:calc(var(--wrap) + var(--gutter) * 2);margin-inline:auto;padding-inline:var(--gutter)}.mono{font-family:var(--font-mono)}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.skip-link{position:fixed;top:12px;left:12px;z-index:999;padding:10px 16px;color:var(--btn-fg);background:var(--accent);border-radius:2px;font-size:.875rem;font-weight:600;transform:translateY(-160%);transition:transform .16s var(--ease)}.skip-link:focus{transform:translateY(0)}.eyebrow{display:flex;align-items:center;gap:9px;color:var(--faint);font-family:var(--font-mono);font-size:.68rem;font-weight:500;letter-spacing:.13em;line-height:1.5;text-transform:uppercase}.eyebrow__index{color:var(--accent-text)}.eyebrow__sep{color:var(--border-strong)}.status-dot{display:inline-block;flex:0 0 auto;width:6px;height:6px;border-radius:50%;background:var(--accent2);box-shadow:0 0 0 3px var(--accent2-soft)}.tag-list{display:flex;flex-wrap:wrap;gap:6px}.tag{display:inline-flex;align-items:center;min-height:25px;padding:2px 8px;color:var(--muted);background:transparent;border:1px solid var(--border);border-radius:2px;font-family:var(--font-mono);font-size:.65rem;letter-spacing:.02em;line-height:1.4;transition:color .16s var(--ease),border-color .16s var(--ease),background-color .16s var(--ease)}a.tag:hover{color:var(--accent-text);background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 50%,var(--border))}.badge{display:inline-flex;align-items:center;min-height:22px;padding:1px 7px;border:1px solid var(--border);border-radius:2px;font-family:var(--font-mono);font-size:.6rem;letter-spacing:.05em;line-height:1.4;white-space:nowrap}.badge--draft{color:var(--bronze);background:var(--bronze-soft);border-color:color-mix(in srgb,var(--bronze) 35%,var(--border))}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:.7rem 1.1rem;border:1px solid transparent;border-radius:3px;font-size:.87rem;font-weight:600;line-height:1.2;letter-spacing:.01em;transition:color .16s var(--ease),background-color .16s var(--ease),border-color .16s var(--ease)}.btn svg{flex:0 0 auto;transition:transform .16s var(--ease)}.btn:hover svg{transform:translate(2px)}.btn--primary{color:var(--btn-fg);background:var(--accent);border-color:var(--accent)}.btn--primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.btn--ghost{color:var(--fg);background:transparent;border-color:var(--border-strong)}.btn--ghost:hover{background:var(--surface);border-color:var(--muted)}.btn--small{min-height:40px;padding:.55rem .85rem;font-size:.8rem}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;color:var(--muted);border:1px solid transparent;border-radius:2px;transition:color .16s var(--ease),background-color .16s var(--ease),border-color .16s var(--ease)}.icon-button:hover{color:var(--fg);background:var(--surface);border-color:var(--border)}.site-header{position:sticky;top:0;z-index:var(--z-header);background:var(--header-bg);border-bottom:1px solid var(--border)}@supports (backdrop-filter: blur(10px)){.site-header{backdrop-filter:blur(14px) saturate(120%)}}.site-header__inner{display:flex;align-items:center;gap:26px;height:var(--header-h)}.brand{display:inline-flex;flex:0 0 auto;align-items:center;gap:11px}.brand__mark{position:relative;display:inline-flex;align-items:center;justify-content:center;width:37px;height:35px;color:var(--fg);background:var(--surface);border:1px solid var(--border-strong);border-radius:2px;font-family:var(--font-mono);font-size:.78rem;font-weight:500;letter-spacing:-.09em;line-height:1}.brand__mark:after{position:absolute;top:-1px;right:-1px;width:5px;height:5px;content:"";background:var(--accent)}.brand__slash{color:var(--accent)}.brand__text{display:flex;flex-direction:column;gap:3px;line-height:1}.brand__text strong{color:var(--fg-strong);font-size:.94rem;font-weight:650;letter-spacing:.08em}.brand__text small{color:var(--faint);font-family:var(--font-mono);font-size:.56rem;letter-spacing:.16em;line-height:1.2}.desktop-nav{display:flex;align-self:stretch;align-items:stretch;gap:1px;margin-left:auto}.desktop-nav__link{position:relative;display:inline-flex;align-items:center;padding-inline:clamp(9px,1.2vw,16px);color:var(--muted);font-size:.85rem;transition:color .16s var(--ease)}.desktop-nav__link:after{position:absolute;right:50%;bottom:-1px;left:50%;height:2px;content:"";background:var(--accent);transition:right .16s var(--ease),left .16s var(--ease)}.desktop-nav__link:hover{color:var(--fg)}.desktop-nav__link[aria-current=page]{color:var(--fg-strong)}.desktop-nav__link[aria-current=page]:after{right:clamp(9px,1.2vw,16px);left:clamp(9px,1.2vw,16px)}.site-header__actions{display:flex;flex:0 0 auto;align-items:center;gap:6px;margin-left:2px}.theme-toggle__icon{display:flex;align-items:center;justify-content:center}.theme-toggle__icon--moon,[data-theme=dark] .theme-toggle__icon--sun{display:none}[data-theme=dark] .theme-toggle__icon--moon{display:flex}.mobile-menu{display:none;position:relative}.mobile-menu>summary{display:flex;align-items:center;justify-content:center;width:42px;height:42px;color:var(--muted);border:1px solid transparent;border-radius:2px;cursor:pointer;list-style:none}.mobile-menu>summary::-webkit-details-marker{display:none}.mobile-menu>summary:hover{color:var(--fg);background:var(--surface);border-color:var(--border)}.mobile-menu__open,.mobile-menu__close{align-items:center;justify-content:center}.mobile-menu__open{display:flex}.mobile-menu__close,.mobile-menu[open] .mobile-menu__open{display:none}.mobile-menu[open] .mobile-menu__close{display:flex}.mobile-menu__panel{position:fixed;top:calc(var(--header-h) + 1px);right:var(--gutter);left:var(--gutter);z-index:10;max-height:calc(100dvh - var(--header-h) - 24px);padding:20px;overflow-y:auto;background:var(--bg-subtle);border:1px solid var(--border-strong);border-radius:2px;box-shadow:var(--shadow-panel)}.mobile-menu__label{padding-bottom:12px;color:var(--faint);border-bottom:1px solid var(--border);font-family:var(--font-mono);font-size:.65rem;letter-spacing:.12em}.mobile-menu__panel nav{display:flex;flex-direction:column}.mobile-menu__panel nav a{display:flex;align-items:center;gap:14px;min-height:48px;padding:8px 2px;color:var(--muted);border-bottom:1px solid var(--border);font-size:1rem}.mobile-menu__panel nav a .mono{color:var(--faint);font-size:.64rem}.mobile-menu__panel nav a[aria-current=page]{color:var(--fg-strong)}.mobile-menu__panel nav a[aria-current=page] .mono{color:var(--accent-text)}.mobile-menu__foot{display:flex;flex-direction:column;gap:8px;margin-top:18px;color:var(--faint);font-family:var(--font-mono);font-size:.68rem;overflow-wrap:anywhere}.mobile-menu__foot a:hover{color:var(--accent-text)}.site-footer{padding:clamp(48px,6vw,76px) 0 26px;background:var(--surface);border-top:1px solid var(--border)}.site-footer__top{display:grid;grid-template-columns:1.25fr .7fr 1.05fr;gap:clamp(32px,6vw,80px)}.brand--footer{margin-bottom:22px}.site-footer__identity>p{color:var(--muted);font-size:.8rem;line-height:1.85}.site-footer__domain{margin-top:18px;color:var(--faint)!important;font-size:.67rem!important;letter-spacing:.06em}.site-footer__nav{display:flex;flex-direction:column;align-items:flex-start;gap:9px}.site-footer__nav .eyebrow,.site-footer__contact .eyebrow{margin-bottom:6px;color:var(--faint)}.site-footer__nav a{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:.8rem;transition:color .16s var(--ease)}.site-footer__nav a:hover,.site-footer__contact a:hover{color:var(--accent-text)}.site-footer__contact{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.site-footer__contact a{display:inline-flex;align-items:center;gap:9px;max-width:100%;color:var(--muted);font-family:var(--font-mono);font-size:.68rem;line-height:1.6;overflow-wrap:anywhere;transition:color .16s var(--ease)}.site-footer__contact a svg{flex:0 0 auto}.site-footer__mail{color:var(--fg)!important}.site-footer__note{max-width:280px;margin-top:4px;color:var(--faint);font-size:.75rem;line-height:1.75}.site-footer__bottom{display:flex;justify-content:space-between;gap:18px;margin-top:clamp(38px,5vw,64px);padding-top:20px;color:var(--faint);border-top:1px solid var(--border);font-family:var(--font-mono);font-size:.63rem;line-height:1.7}.page-hero{position:relative;padding:clamp(48px,7.5vw,92px) 0 clamp(42px,6vw,72px);overflow:hidden;border-bottom:1px solid var(--border)}.page-hero__grid-bg{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(to right,var(--grid-line) 1px,transparent 1px),linear-gradient(to bottom,var(--grid-line) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.5) 62%,transparent 100%)}.page-hero__inner{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 275px;gap:clamp(32px,6vw,80px);align-items:end}.eyebrow+.page-hero__title{margin-top:20px}.page-hero__title{max-width:850px;font-size:clamp(2.7rem,6.2vw,5.2rem);line-height:1.02;letter-spacing:-.045em}.page-hero__title-en{display:block;margin-top:20px;color:var(--faint);font-family:var(--font-mono);font-size:clamp(.68rem,1vw,.8rem);font-weight:400;letter-spacing:.13em;line-height:1.5;text-transform:uppercase}.page-hero__description{max-width:640px;margin-top:23px;color:var(--muted);font-size:clamp(.94rem,1.3vw,1.04rem);line-height:1.85;text-wrap:pretty}.page-hero__meta{display:flex;flex-direction:column;align-self:stretch;justify-content:flex-end;border-top:1px solid var(--border)}.page-hero__meta>div{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px solid var(--border)}.page-hero__meta dt{color:var(--faint);font-family:var(--font-mono);font-size:.61rem;letter-spacing:.1em;line-height:1.7;text-transform:uppercase}.page-hero__meta dd{color:var(--fg);font-size:.76rem;line-height:1.7;text-align:right}.section{padding-block:var(--section-y);border-top:1px solid var(--border)}.page-hero+.section{border-top:0}.section--surface{background:var(--surface)}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:clamp(30px,4.5vw,52px)}.section-head__main{max-width:680px}.section-head .eyebrow{margin-bottom:15px}.section-head__title{font-size:clamp(1.8rem,3.25vw,2.75rem);letter-spacing:-.04em}.section-head__description{max-width:570px;margin-top:14px;color:var(--muted);font-size:.91rem;line-height:1.8}.section-head__link{display:inline-flex;flex:0 0 auto;align-items:center;gap:8px;padding-bottom:5px;color:var(--accent-text);border-bottom:1px solid color-mix(in srgb,var(--accent) 38%,var(--border));font-size:.82rem;font-weight:550;transition:gap .16s var(--ease),border-color .16s var(--ease)}.section-head__link:hover{gap:12px;border-color:var(--accent)}.hero{position:relative;overflow:hidden;border-bottom:1px solid var(--border)}.hero:before{position:absolute;top:-260px;right:-160px;width:650px;height:650px;pointer-events:none;content:"";background:radial-gradient(circle,rgba(79,140,255,.15),transparent 65%)}.hero:after{position:absolute;bottom:16%;left:-90px;width:230px;height:230px;pointer-events:none;content:"";border:1px solid var(--grid-strong);border-radius:50%}.hero__grid-bg{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(to right,var(--grid-line) 1px,transparent 1px),linear-gradient(to bottom,var(--grid-line) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(115deg,rgba(0,0,0,.9),transparent 72%)}.hero__inner{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(310px,.65fr);gap:clamp(40px,6.5vw,92px);align-items:center;padding-block:clamp(54px,8.5vw,106px)}.hero__copy{min-width:0}.hero__status{display:inline-flex;align-items:center;gap:9px;margin-bottom:clamp(24px,4vw,38px);padding:7px 10px;color:var(--muted);background:var(--surface);border:1px solid var(--border);border-radius:2px;font-family:var(--font-mono);font-size:.65rem;letter-spacing:.08em;line-height:1.4}.hero__title{display:flex;flex-direction:column;gap:0;margin:0;color:var(--fg-strong);font-size:clamp(4.1rem,9.4vw,7.5rem);font-weight:750;letter-spacing:-.055em;line-height:.94}.hero__title-cn{display:block}.hero__title-en{display:block;margin-top:20px;color:var(--faint);font-family:var(--font-mono);font-size:clamp(.67rem,1.15vw,.83rem);font-weight:400;letter-spacing:.27em;line-height:1.4}.hero__statement{max-width:630px;margin-top:clamp(24px,3.5vw,34px);color:var(--fg-strong);font-size:clamp(1.28rem,2.2vw,1.7rem);font-weight:550;letter-spacing:-.025em;line-height:1.55;text-wrap:balance}.hero__statement em{color:var(--accent-text);font-style:normal;font-weight:650}.hero__intro{max-width:610px;margin-top:16px;color:var(--muted);font-size:.94rem;line-height:1.85;text-wrap:pretty}.hero__intro a{color:var(--accent-text)}.hero__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:clamp(25px,3.5vw,34px)}.hero__contact{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:24px;color:var(--faint);font-family:var(--font-mono);font-size:.67rem;line-height:1.7}.hero__contact a{display:inline-flex;align-items:center;gap:5px;padding-bottom:2px;border-bottom:1px solid transparent;overflow-wrap:anywhere;transition:color .16s var(--ease),border-color .16s var(--ease)}.hero__contact a:hover{color:var(--accent-text);border-color:var(--accent)}.hero__contact-sep{color:var(--border-strong)}.profile-card{position:relative;width:100%;max-width:380px;justify-self:end;padding:13px;background:var(--card);border:1px solid var(--border);border-radius:3px;box-shadow:var(--shadow-card)}.profile-card:after{position:absolute;top:-1px;left:26px;width:54px;height:2px;content:"";background:var(--accent)}.profile-card__top{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:4px 2px 11px;color:var(--faint);border-bottom:1px solid var(--border);font-family:var(--font-mono);font-size:.59rem;letter-spacing:.1em;line-height:1.4}.profile-card__photo{position:relative;margin-top:12px;overflow:hidden;background:#e9edf1;border:1px solid var(--border)}.profile-card__photo img{width:100%;aspect-ratio:4 / 5;object-fit:cover;object-position:center 18%;filter:saturate(.9) contrast(1.02)}[data-theme=light] .profile-card__photo img{filter:saturate(.95) contrast(1.01)}.profile-card__stamp{position:absolute;right:11px;bottom:11px;display:flex;align-items:center;justify-content:center;width:53px;height:53px;padding:5px;background:#f4f0e8;border:1px solid rgba(255,255,255,.46);border-radius:50%;box-shadow:0 4px 18px #00000029}.profile-card__stamp img{width:100%;height:100%;object-fit:contain;border-radius:50%}.profile-card__meta{display:grid;gap:0;margin-top:11px}.profile-card__meta>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:8px 2px;border-bottom:1px solid var(--border)}.profile-card__meta dt{color:var(--faint);font-family:var(--font-mono);font-size:.6rem;letter-spacing:.1em;line-height:1.5}.profile-card__meta dd{color:var(--fg);font-size:.76rem;line-height:1.5;text-align:right}.profile-card__foot{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;padding:12px 2px 2px;color:var(--faint);font-family:var(--font-mono);font-size:.58rem;letter-spacing:.08em;line-height:1.5}.profile-card__monogram{color:var(--border-strong);font-family:var(--font-sans);font-size:1.15rem;font-weight:800;letter-spacing:-.08em;line-height:1}.snapshot{background:var(--surface)}.snapshot__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.snapshot__item{min-width:0;padding:28px clamp(18px,3vw,34px) 30px;border-left:1px solid var(--border);transition:background-color .18s var(--ease)}.snapshot__item:first-child{padding-left:0;border-left:0}.snapshot__item:last-child{padding-right:0}.snapshot__item:hover{background:var(--card-hover)}.snapshot__item:first-child:hover{background:transparent}.snapshot__top{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--faint);font-family:var(--font-mono);font-size:.61rem;letter-spacing:.1em;line-height:1.5}.snapshot__top svg{transition:color .16s var(--ease),transform .16s var(--ease)}.snapshot__item:hover .snapshot__top svg{color:var(--accent-text);transform:translate(2px,-2px)}.snapshot__value{margin-top:17px;color:var(--fg-strong);font-size:clamp(1.42rem,2.7vw,2.05rem);font-weight:680;letter-spacing:-.04em;line-height:1.25}.snapshot__value small{margin-left:5px;color:var(--muted);font-family:var(--font-mono);font-size:.62rem;font-weight:400;letter-spacing:.04em}.snapshot__desc{max-width:310px;margin-top:7px;color:var(--muted);font-size:.79rem;line-height:1.72}.project-spotlight{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);overflow:hidden;background:var(--card);border:1px solid var(--border);border-radius:var(--radius)}.project-spotlight__copy{display:flex;flex-direction:column;align-items:flex-start;padding:clamp(26px,4vw,48px)}.project-spotlight__title-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.project-spotlight__index{color:var(--accent-text);font-size:.65rem;letter-spacing:.08em}.project-spotlight__domain{display:inline-flex;padding:2px 7px;color:var(--faint);border:1px solid var(--border);border-radius:2px;font-family:var(--font-mono);font-size:.6rem;line-height:1.6}.project-spotlight h3{margin-top:18px;font-size:clamp(1.9rem,3.2vw,2.7rem);letter-spacing:-.04em}.project-spotlight__description{max-width:550px;margin-top:14px;color:var(--muted);font-size:.92rem;line-height:1.82}.stack-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:21px}.stack-list li{padding:3px 8px;color:var(--muted);background:var(--surface);border:1px solid var(--border);border-radius:2px;font-family:var(--font-mono);font-size:.62rem;line-height:1.5}.project-spotlight__actions{display:flex;flex-wrap:wrap;gap:14px 20px;align-items:center;margin-top:auto;padding-top:28px}.text-link{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:.8rem;line-height:1.6;transition:color .16s var(--ease)}.text-link:hover{color:var(--accent-text)}.project-spotlight__visual{display:flex;align-items:center;min-width:0;padding:clamp(22px,3.4vw,36px);background:linear-gradient(135deg,rgba(79,140,255,.06),transparent 46%),var(--bg-subtle);border-left:1px solid var(--border)}.project-console{width:100%;overflow:hidden;color:#c7d4e2;background:#0a1118;border:1px solid #273a4d;border-radius:3px;box-shadow:0 24px 50px #0000003d}.project-console__chrome,.project-console__head,.project-console__footer{display:flex;align-items:center;justify-content:space-between;gap:12px;font-family:var(--font-mono);line-height:1.4}.project-console__chrome{padding:10px 13px;color:#70869e;background:#0d151e;border-bottom:1px solid #1d2c3b;font-size:.55rem;letter-spacing:.08em}.project-console__lights{display:flex;gap:4px}.project-console__lights i{display:block;width:5px;height:5px;background:#31465b;border-radius:50%}.project-console__lights i:first-child{background:#4f8cff}.project-console__head{padding:11px 15px;color:#8ca0b5;border-bottom:1px solid #1d2c3b;font-size:.63rem}.project-console__status{display:inline-flex;align-items:center;gap:5px;color:#69e6ac;font-size:.55rem;letter-spacing:.08em}.project-console__status i{width:5px;height:5px;background:#3dd68c;border-radius:50%;box-shadow:0 0 8px #3dd68c73}.project-console__body{padding:18px 15px 16px;background-image:linear-gradient(to right,rgba(140,166,191,.035) 1px,transparent 1px),linear-gradient(to bottom,rgba(140,166,191,.035) 1px,transparent 1px);background-size:24px 24px}.project-console__command{color:#cfdae6;font-family:var(--font-mono);font-size:.72rem;line-height:1.7}.project-console__command span{color:#4f8cff}.project-console__rows{margin-top:14px;border-top:1px solid #1d2c3b}.project-console__rows>div{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:7px 0;border-bottom:1px solid #1d2c3b}.project-console__rows span{color:#71869c;font-family:var(--font-mono);font-size:.61rem;letter-spacing:.02em}.project-console__rows strong{color:#e0e9f2;font-family:var(--font-mono);font-size:.72rem;font-weight:500;text-align:right}.project-console__rows>div:nth-child(2) strong{color:#69e6ac}.project-console__modules{display:flex;flex-wrap:wrap;gap:5px;margin-top:14px}.project-console__modules span{padding:3px 6px;color:#88a0b8;background:#4f8cff0f;border:1px solid #24384c;border-radius:2px;font-family:var(--font-mono);font-size:.55rem;line-height:1.5}.project-console__caption{margin-top:14px;color:#566b80;font-size:.54rem;line-height:1.7}.project-console__footer{padding:10px 15px;color:#5d7287;background:#0c141c;border-top:1px solid #1d2c3b;font-size:.52rem;letter-spacing:.02em}.split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));background:var(--border);border:1px solid var(--border);gap:1px}.split__panel{min-width:0;padding:clamp(24px,3.8vw,40px);background:var(--bg)}.split__panel--research{background:var(--card)}.split__head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:17px;border-bottom:1px solid var(--border)}.split__head .eyebrow{color:var(--faint)}.split__head>a{display:inline-flex;align-items:center;gap:5px;color:var(--faint);font-family:var(--font-mono);font-size:.6rem;transition:color .16s var(--ease)}.split__head>a:hover{color:var(--accent-text)}.award-line{display:grid;grid-template-columns:27px minmax(0,1fr) auto;gap:14px;align-items:center;padding:17px 0;border-bottom:1px solid var(--border);transition:background-color .16s var(--ease)}.award-line:hover{background:var(--surface)}.award-line__index{color:var(--faint);font-family:var(--font-mono);font-size:.61rem}.award-line__main{min-width:0}.award-line__level{display:block;color:var(--faint);font-family:var(--font-mono);font-size:.58rem;letter-spacing:.04em;line-height:1.5}.award-line strong{display:block;margin-top:3px;color:var(--fg);font-size:.92rem;font-weight:550;line-height:1.55}.award-line__medal{color:var(--bronze);font-family:var(--font-mono);font-size:.68rem;white-space:nowrap}.award-line__medal--silver{color:var(--silver)}.award-line svg{color:var(--faint)}.split__lede{margin-top:20px;color:var(--copy, var(--fg));font-size:1.02rem;line-height:1.8}.post-list{border-top:1px solid var(--border)}.post-row{display:grid;grid-template-columns:145px minmax(0,1fr);gap:clamp(18px,4vw,44px);padding:clamp(22px,3vw,31px) 0;border-bottom:1px solid var(--border)}.post-row__meta{display:flex;flex-wrap:wrap;align-content:flex-start;align-items:center;gap:5px 9px;padding-top:5px;color:var(--faint);font-family:var(--font-mono);font-size:.61rem;letter-spacing:.025em;line-height:1.7}.post-row__index{flex:0 0 100%;color:var(--accent-text);font-size:.61rem}.post-row__dot{width:3px;height:3px;background:var(--border-strong);border-radius:50%}.post-row__body{min-width:0}.post-row__title{font-size:clamp(1.22rem,2vw,1.54rem);font-weight:650;letter-spacing:-.03em;line-height:1.45}.post-row__title a{transition:color .16s var(--ease)}.post-row:hover .post-row__title a{color:var(--accent-text)}.post-row__description{max-width:750px;margin-top:8px;color:var(--muted);font-size:.87rem;line-height:1.78}.post-row__foot{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:15px}.post-row__arrow{display:flex;flex:0 0 auto;align-items:center;justify-content:center;width:31px;height:31px;color:var(--faint);border:1px solid var(--border);border-radius:2px;transition:color .16s var(--ease),border-color .16s var(--ease),background-color .16s var(--ease)}.post-row:hover .post-row__arrow{color:var(--accent-text);background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}.post-row--draft .post-row__title:after{display:inline-block;margin-left:9px;padding:1px 6px;color:var(--bronze);border:1px dashed color-mix(in srgb,var(--bronze) 45%,var(--border));border-radius:2px;content:"DRAFT";font-family:var(--font-mono);font-size:.5rem;font-weight:400;letter-spacing:.04em;vertical-align:.3em}.contact-panel{position:relative;display:grid;grid-template-columns:minmax(0,1.25fr) 320px;gap:clamp(30px,6vw,72px);align-items:end;padding:clamp(28px,5vw,56px);overflow:hidden;background:var(--card);border:1px solid var(--border);border-radius:var(--radius)}.contact-panel:before{position:absolute;top:-120px;right:-100px;width:400px;height:400px;pointer-events:none;content:"";background:radial-gradient(circle,rgba(79,140,255,.13),transparent 66%)}[data-theme=light] .contact-panel:before{background:radial-gradient(circle,rgba(31,95,214,.08),transparent 66%)}.contact-panel__content{position:relative;z-index:1}.contact-panel__title{margin-top:15px;font-size:clamp(1.9rem,4vw,3.45rem);letter-spacing:-.045em;line-height:1.22}.contact-panel__title span{color:var(--accent-text)}.contact-panel__description{max-width:570px;margin-top:17px;color:var(--muted);font-size:.9rem;line-height:1.8}.contact-panel__side{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start;gap:14px}.contact-panel__side .btn{width:100%}.contact-panel__links{display:flex;flex-direction:column;align-items:flex-start;gap:11px;width:100%;padding-top:3px;border-top:1px solid var(--border)}.contact-panel__links a{display:inline-flex;align-items:center;gap:7px;max-width:100%;color:var(--muted);font-family:var(--font-mono);font-size:.66rem;line-height:1.7;overflow-wrap:anywhere;transition:color .16s var(--ease)}.contact-panel__links a:hover{color:var(--accent-text)}.project-overview{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:clamp(30px,6vw,70px);align-items:center}.project-overview__copy h2{margin-top:16px;font-size:clamp(2rem,4vw,3.2rem);letter-spacing:-.045em}.project-overview__lead{max-width:640px;margin-top:17px;color:var(--muted);font-size:.97rem;line-height:1.85}.project-overview__actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-top:26px}.project-overview__note{margin-top:12px;color:var(--faint);font-family:var(--font-mono);font-size:.61rem;line-height:1.7}.metric-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:clamp(40px,6vw,64px);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.metric-strip__item{padding:23px 26px 24px;border-left:1px solid var(--border)}.metric-strip__item:first-child{padding-left:0;border-left:0}.metric-strip__value{color:var(--fg-strong);font-family:var(--font-mono);font-size:clamp(1.55rem,3vw,2.2rem);font-weight:500;letter-spacing:-.04em;line-height:1.2}.metric-strip__label{margin-top:5px;color:var(--faint);font-size:.73rem;line-height:1.6}.feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;overflow:hidden;background:var(--border);border:1px solid var(--border);border-radius:var(--radius)}.feature-card{position:relative;min-width:0;padding:clamp(22px,3vw,32px);background:var(--bg);transition:background-color .18s var(--ease)}.feature-card:hover{background:var(--card)}.feature-card__top{display:flex;align-items:center;justify-content:space-between;gap:12px}.feature-card__index{color:var(--accent-text);font-family:var(--font-mono);font-size:.62rem;letter-spacing:.08em}.feature-card__mark{color:var(--border-strong);font-family:var(--font-mono);font-size:.66rem;letter-spacing:.08em}.feature-card h3{margin-top:22px;font-size:1.08rem;font-weight:650;letter-spacing:-.015em}.feature-card p{margin-top:8px;color:var(--muted);font-size:.82rem;line-height:1.75}.architecture{overflow:hidden;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.architecture__flow{display:grid;grid-template-columns:minmax(0,1fr) 50px minmax(0,1fr) 50px minmax(0,1fr);align-items:stretch}.architecture__node{min-width:0;padding:clamp(20px,2.8vw,30px)}.architecture__node-label{color:var(--faint);font-family:var(--font-mono);font-size:.59rem;letter-spacing:.1em;line-height:1.5}.architecture__node h3{margin-top:10px;font-size:1rem;line-height:1.45}.architecture__node p{margin-top:7px;color:var(--muted);font-size:.77rem;line-height:1.7}.architecture__arrow{display:flex;align-items:center;justify-content:center;color:var(--border-strong);border-left:1px solid var(--border);border-right:1px solid var(--border)}.architecture__external{display:flex;flex-wrap:wrap;align-items:center;gap:10px 20px;padding:15px clamp(20px,2.8vw,30px);border-top:1px solid var(--border)}.architecture__external-label{color:var(--faint);font-family:var(--font-mono);font-size:.58rem;letter-spacing:.08em}.architecture__external span:not(.architecture__external-label){padding:3px 7px;color:var(--muted);background:var(--card);border:1px solid var(--border);border-radius:2px;font-family:var(--font-mono);font-size:.58rem;line-height:1.5}.architecture__note{margin-top:13px;color:var(--faint);font-size:.7rem;line-height:1.7}.details-stack{border-top:1px solid var(--border)}.details-item{border-bottom:1px solid var(--border)}.details-item summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 2px;color:var(--fg);cursor:pointer;list-style:none}.details-item summary::-webkit-details-marker{display:none}.details-item summary>span{display:flex;align-items:baseline;gap:14px;min-width:0}.details-item__index{flex:0 0 auto;color:var(--accent-text);font-family:var(--font-mono);font-size:.63rem}.details-item__title{font-size:clamp(.98rem,1.5vw,1.12rem);font-weight:600;letter-spacing:-.015em}.details-item__hint{margin-left:2px;color:var(--faint);font-family:var(--font-mono);font-size:.58rem;font-weight:400;letter-spacing:.03em}.details-item summary>svg{flex:0 0 auto;color:var(--faint);transition:transform .18s var(--ease)}.details-item[open] summary>svg{transform:rotate(180deg)}.details-item summary:hover{color:var(--accent-text)}.details-item__content{max-width:880px;padding:0 2px 26px 42px;color:var(--muted);font-size:.88rem;line-height:1.85}.details-item__content p+p{margin-top:12px}.details-item__content ul{display:grid;gap:8px;margin-top:10px}.details-item__content li{position:relative;padding-left:16px}.details-item__content li:before{position:absolute;top:.72em;left:0;width:4px;height:4px;content:"";background:var(--accent);border-radius:50%}.awards-head{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:26px}.awards-note{max-width:410px;color:var(--faint);font-size:.75rem;line-height:1.75;text-align:right}.award-timeline{border-top:1px solid var(--border)}.award-entry{display:grid;grid-template-columns:64px minmax(0,1fr) 210px;gap:clamp(18px,4vw,44px);align-items:center;padding:clamp(26px,4vw,42px) 0;border-bottom:1px solid var(--border)}.award-entry__index{align-self:start;padding-top:4px;color:var(--accent-text);font-family:var(--font-mono);font-size:.68rem;letter-spacing:.04em}.award-entry__meta{display:flex;flex-wrap:wrap;gap:7px 12px;align-items:center;color:var(--faint);font-family:var(--font-mono);font-size:.59rem;letter-spacing:.08em;line-height:1.5;text-transform:uppercase}.award-entry__meta span+span:before{display:inline-block;width:3px;height:3px;margin-right:12px;vertical-align:.22em;content:"";background:var(--border-strong);border-radius:50%}.award-entry h2{margin-top:10px;font-size:clamp(1.35rem,2.7vw,2.15rem);letter-spacing:-.035em}.award-entry__en{margin-top:7px;color:var(--faint);font-family:var(--font-mono);font-size:.66rem;line-height:1.6}.award-entry__medal-line{display:inline-flex;align-items:center;gap:9px;margin-top:16px;padding:4px 9px;color:var(--bronze);background:var(--bronze-soft);border:1px solid color-mix(in srgb,var(--bronze) 30%,var(--border));border-radius:2px;font-family:var(--font-mono);font-size:.66rem;line-height:1.6}.award-entry__medal-line--silver{color:var(--silver);background:var(--silver-soft);border-color:color-mix(in srgb,var(--silver) 25%,var(--border))}.award-entry__seal{display:flex;align-items:center;justify-content:center;justify-self:end;width:clamp(120px,13vw,156px);aspect-ratio:1;background:var(--card);border:1px solid var(--border);border-radius:50%;text-align:center}.award-entry__seal--bronze{border-color:color-mix(in srgb,var(--bronze) 28%,var(--border))}.award-entry__seal--silver{border-color:color-mix(in srgb,var(--silver) 22%,var(--border))}.award-entry__seal-inner{display:flex;flex-direction:column;align-items:center;gap:3px}.award-entry__seal-label{color:var(--faint);font-family:var(--font-mono);font-size:.52rem;letter-spacing:.1em}.award-entry__seal-rank{color:var(--bronze);font-family:var(--font-serif);font-size:clamp(2rem,3.5vw,2.7rem);font-weight:600;line-height:1.05}.award-entry__seal--silver .award-entry__seal-rank{color:var(--silver)}.award-entry__seal-level{color:var(--faint);font-family:var(--font-mono);font-size:.52rem;letter-spacing:.08em}.role-card{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(22px,5vw,60px);margin-top:clamp(44px,6vw,76px);padding:clamp(25px,4vw,38px);background:var(--card);border:1px solid var(--border);border-radius:var(--radius)}.role-card h2{margin-top:12px;font-size:clamp(1.55rem,3vw,2.35rem);letter-spacing:-.04em}.role-card__body{align-self:center}.role-card__body p{color:var(--muted);font-size:.89rem;line-height:1.85}.role-card__body p+p{margin-top:10px}.role-card__tag{display:inline-flex;margin-top:16px;color:var(--accent-text);font-family:var(--font-mono);font-size:.63rem;line-height:1.6}.about-intro{display:grid;grid-template-columns:minmax(250px,330px) minmax(0,1fr);gap:clamp(30px,6vw,74px);align-items:start}.about-portrait{position:relative;padding:10px;background:var(--card);border:1px solid var(--border);border-radius:var(--radius)}.about-portrait:before{position:absolute;top:-1px;left:25px;width:44px;height:2px;content:"";background:var(--accent)}.about-portrait img{width:100%;aspect-ratio:4 / 5;object-fit:cover;object-position:center 16%;background:#e9edf1;border:1px solid var(--border)}.about-portrait__stamp{position:absolute;right:20px;bottom:20px;width:54px;height:54px;padding:5px;background:#f5f1e8;border:1px solid rgba(255,255,255,.4);border-radius:50%;box-shadow:0 4px 16px #00000026}.about-portrait__stamp img{width:100%;height:100%;object-fit:contain;border:0;border-radius:50%;aspect-ratio:auto}.about-bio{padding-top:8px}.about-bio__lead{color:var(--fg-strong);font-size:clamp(1.22rem,2.2vw,1.62rem);font-weight:500;letter-spacing:-.025em;line-height:1.65;text-wrap:pretty}.about-bio>p:not(.about-bio__lead){max-width:680px;margin-top:16px;color:var(--muted);font-size:.91rem;line-height:1.88}.about-bio strong{color:var(--fg);font-weight:550}.about-bio__links{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}.resume-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(32px,6vw,80px)}.resume-block{padding:26px 0 30px;border-top:1px solid var(--border)}.resume-block h2{display:flex;align-items:baseline;gap:10px;font-size:1.08rem;letter-spacing:-.01em}.resume-block h2 .mono{color:var(--accent-text);font-size:.6rem;font-weight:400;letter-spacing:.06em}.resume-list{margin-top:18px}.resume-list>div{display:grid;grid-template-columns:90px minmax(0,1fr);gap:14px;padding:9px 0;border-bottom:1px solid var(--border)}.resume-list dt{color:var(--faint);font-family:var(--font-mono);font-size:.61rem;line-height:1.7}.resume-list dd{color:var(--fg);font-size:.83rem;line-height:1.7}.resume-list dd a{color:var(--accent-text);border-bottom:1px solid transparent;overflow-wrap:anywhere}.resume-list dd a:hover{border-color:currentColor}.resume-awards{margin-top:16px}.resume-awards li{display:flex;align-items:baseline;justify-content:space-between;gap:18px;padding:10px 0;border-bottom:1px solid var(--border);font-size:.83rem;line-height:1.7}.resume-awards li span:last-child{flex:0 0 auto;color:var(--bronze);font-family:var(--font-mono);font-size:.65rem}.resume-awards li:nth-child(n+2) span:last-child{color:var(--silver)}.resume-note{margin-top:14px;color:var(--muted);font-size:.8rem;line-height:1.8}.about-english{position:relative;background:var(--surface)}.about-english__inner{max-width:820px}.about-english h2{margin-top:13px;font-family:var(--font-serif);font-size:clamp(2rem,4vw,3.2rem);font-weight:500;letter-spacing:-.035em}.about-english p{margin-top:20px;color:var(--muted);font-family:var(--font-serif);font-size:clamp(1rem,1.5vw,1.12rem);line-height:1.95}.about-english a{color:var(--accent-text);border-bottom:1px solid color-mix(in srgb,var(--accent) 40%,transparent)}.about-english__meta{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:28px;padding-top:17px;color:var(--faint);border-top:1px solid var(--border);font-family:var(--font-mono);font-size:.65rem;line-height:1.7}.blog-toolbar{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:18px 30px;margin-bottom:24px}.blog-toolbar__count{color:var(--faint)}.blog-tags{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px;max-width:620px}.blog-tags .tag{min-height:27px;padding-inline:9px}.blog-tags .tag__count{margin-left:5px;color:var(--faint);font-size:.58rem}.blog-subscribe{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px;margin-top:34px;padding:19px 21px;background:var(--surface);border:1px solid var(--border);border-radius:2px}.blog-subscribe p{color:var(--muted);font-size:.8rem;line-height:1.7}.blog-subscribe a{display:inline-flex;align-items:center;gap:7px;color:var(--accent-text);font-family:var(--font-mono);font-size:.65rem;line-height:1.6}.blog-empty{padding:50px 0;color:var(--muted);border-top:1px solid var(--border);border-bottom:1px solid var(--border);text-align:center}.post-header{position:relative;padding:clamp(36px,6vw,64px) 0 clamp(34px,5vw,56px);overflow:hidden;border-bottom:1px solid var(--border)}.post-header:before{position:absolute;top:0;right:10%;width:460px;height:320px;pointer-events:none;content:"";background:radial-gradient(ellipse,rgba(79,140,255,.08),transparent 70%)}.post-header__inner{position:relative;max-width:900px}.post-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:8px;color:var(--faint);font-family:var(--font-mono);font-size:.63rem;line-height:1.6}.post-breadcrumb a{transition:color .16s var(--ease)}.post-breadcrumb a:hover{color:var(--accent-text)}.post-breadcrumb__sep{color:var(--border-strong)}.post-header__eyebrow{margin-top:28px}.post-header__title{max-width:900px;margin-top:18px;font-size:clamp(2.15rem,4.9vw,4.1rem);letter-spacing:-.045em;line-height:1.15;word-break:keep-all;overflow-wrap:anywhere}.post-header__description{max-width:760px;margin-top:20px;color:var(--muted);font-size:clamp(.96rem,1.4vw,1.06rem);line-height:1.85}.post-header__meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:25px;color:var(--faint);font-family:var(--font-mono);font-size:.65rem;line-height:1.7}.post-header__meta time{color:var(--muted)}.post-header__dot{width:3px;height:3px;background:var(--border-strong);border-radius:50%}.post-header__tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:16px}.post-layout{display:grid;grid-template-columns:200px minmax(0,760px);justify-content:center;gap:clamp(30px,5vw,62px);padding-block:clamp(40px,6vw,78px);align-items:start}.post-toc{position:sticky;top:calc(var(--header-h) + 28px)}.post-toc__label{margin-bottom:11px;color:var(--faint);font-family:var(--font-mono);font-size:.59rem;letter-spacing:.1em}.post-toc nav{display:flex;flex-direction:column;border-left:1px solid var(--border)}.post-toc a{padding:5px 0 5px 14px;color:var(--faint);font-size:.73rem;line-height:1.55;transition:color .16s var(--ease),border-color .16s var(--ease)}.post-toc a:hover{color:var(--accent-text)}.post-toc a.is-depth-3{padding-left:25px;font-size:.68rem}.post-main{min-width:0}.post-toc__back{display:inline-flex;align-items:center;gap:6px;margin-top:22px;color:var(--faint);font-family:var(--font-mono);font-size:.61rem;line-height:1.6;transition:color .16s var(--ease)}.post-toc__back:hover{color:var(--accent-text)}.prose{color:var(--prose-fg);font-size:1.02rem;line-height:1.95;overflow-wrap:break-word}.prose>:first-child{margin-top:0}.prose h2{margin:2.3em 0 .7em;padding-top:.15em;font-size:clamp(1.42rem,2.5vw,1.8rem);letter-spacing:-.03em;line-height:1.4;scroll-margin-top:calc(var(--header-h) + 26px)}.prose h3{margin:1.9em 0 .55em;font-size:clamp(1.14rem,1.9vw,1.3rem);line-height:1.5;scroll-margin-top:calc(var(--header-h) + 26px)}.prose h4{margin:1.7em 0 .5em;font-size:1.02rem;scroll-margin-top:calc(var(--header-h) + 26px)}.prose p{margin:1.15em 0}.prose a{color:var(--accent-text);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--accent) 42%,transparent);text-decoration-thickness:1px;text-underline-offset:.18em;transition:color .16s var(--ease),text-decoration-color .16s var(--ease)}.prose a:hover{color:var(--fg-strong);text-decoration-color:currentColor}.prose strong{color:var(--fg-strong);font-weight:650}.prose em{color:var(--fg)}.prose ul,.prose ol{margin:1.1em 0;padding-left:1.35em}.prose ul{list-style:square}.prose ol{list-style:decimal}.prose li{margin:.38em 0;padding-left:.2em}.prose li::marker{color:var(--accent);font-family:var(--font-mono);font-size:.8em}.prose blockquote{margin:1.8em 0;padding:2px 0 2px 20px;color:var(--muted);border-left:2px solid var(--accent)}.prose blockquote p{margin:.5em 0}.prose hr{margin:2.8em 0;border-top:1px solid var(--border)}.prose :not(pre)>code{padding:.1em .34em;color:var(--fg);background:var(--inline-code-bg);border:1px solid var(--inline-code-border);border-radius:2px;font-family:var(--font-mono);font-size:.84em;overflow-wrap:anywhere}.prose pre{max-width:100%;margin:1.8em 0;padding:24px;overflow-x:auto;color:#d6e2ee;background:var(--code-bg)!important;border:1px solid var(--border);border-radius:3px;font-family:var(--font-mono);font-size:.82rem;line-height:1.75;tab-size:2;-webkit-overflow-scrolling:touch}.prose pre code{display:block;width:max-content;min-width:100%;padding:0;background:none;border:0;color:inherit;font-family:inherit;font-size:inherit;white-space:pre}.prose pre code span{font-size:inherit}.prose .astro-code{border-left:2px solid color-mix(in srgb,var(--accent) 55%,var(--border))}.prose table{display:block;width:100%;margin:1.7em 0;overflow-x:auto;border-top:1px solid var(--border);border-bottom:1px solid var(--border);font-size:.86rem;line-height:1.7}.prose thead{background:var(--surface)}.prose th,.prose td{padding:10px 13px;border-bottom:1px solid var(--border);text-align:left;white-space:nowrap}.prose th{color:var(--fg);font-weight:600}.prose tr:last-child td{border-bottom:0}.prose img{margin:1.8em 0;border:1px solid var(--border);border-radius:2px}.prose .katex{font-size:1.06em}.prose .katex-display{margin:1.7em 0;padding:.35em 0;overflow-x:auto;overflow-y:hidden}.prose .katex-display>.katex{font-size:1.12em}.prose .katex-display::-webkit-scrollbar{height:6px}.prose .katex-display::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:3px}.prose hr+h2{margin-top:1.8em}.post-end{margin-top:46px;padding-top:22px;border-top:1px solid var(--border)}.post-end__top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px}.post-end__tags{display:flex;flex-wrap:wrap;gap:6px}.post-end__updated{color:var(--faint);font-family:var(--font-mono);font-size:.61rem;line-height:1.6}.post-end__note{max-width:720px;margin-top:22px;color:var(--faint);font-size:.77rem;line-height:1.8}.post-end__note a{color:var(--accent-text);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--accent) 45%,transparent);text-underline-offset:.18em}.post-end__note a:hover{text-decoration-color:currentColor}.post-pager{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin-top:28px;overflow:hidden;background:var(--border);border:1px solid var(--border)}.post-pager__link{display:flex;flex-direction:column;gap:8px;min-height:100px;padding:17px 19px;background:var(--bg);transition:background-color .16s var(--ease)}.post-pager__link:hover{background:var(--card)}.post-pager__link--next{align-items:flex-end;text-align:right}.post-pager__label{color:var(--faint);font-family:var(--font-mono);font-size:.58rem;letter-spacing:.06em}.post-pager__title{color:var(--fg);font-size:.85rem;font-weight:550;line-height:1.55}.post-pager__empty{display:flex;min-height:100px;align-items:center;padding:17px 19px;color:var(--faint);background:var(--bg);font-family:var(--font-mono);font-size:.61rem}.post-author{display:flex;align-items:center;gap:14px;margin-top:28px;padding:15px;background:var(--surface);border:1px solid var(--border);border-radius:2px}.post-author__avatar{flex:0 0 auto;width:48px;height:48px;object-fit:cover;object-position:center 16%;border:1px solid var(--border);border-radius:50%}.post-author__name{color:var(--fg);font-size:.85rem;font-weight:600;line-height:1.5}.post-author__bio{margin-top:2px;color:var(--faint);font-size:.72rem;line-height:1.6}.post-author__links{display:flex;gap:13px;margin-left:auto;color:var(--faint);font-family:var(--font-mono);font-size:.6rem;line-height:1.6}.post-author__links a:hover{color:var(--accent-text)}.not-found{position:relative;display:flex;min-height:66vh;align-items:center;overflow:hidden}.not-found__inner{position:relative;z-index:1;padding-block:clamp(58px,9vw,110px)}.not-found__code{color:var(--border-strong);font-family:var(--font-mono);font-size:clamp(5rem,18vw,13rem);font-weight:500;letter-spacing:-.08em;line-height:.8}.not-found h1{margin-top:28px;font-size:clamp(1.8rem,4vw,3rem);letter-spacing:-.04em}.not-found p{max-width:500px;margin-top:14px;color:var(--muted);font-size:.9rem;line-height:1.8}.not-found__links{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}@media(max-width:1100px){.desktop-nav__link{padding-inline:9px;font-size:.81rem}.hero__inner{gap:46px}.award-entry{grid-template-columns:48px minmax(0,1fr) 150px;gap:25px}.award-entry__seal{width:124px}}@media(max-width:960px){.desktop-nav{display:none}.mobile-menu{display:block}.site-header__actions{margin-left:auto}.hero__inner{grid-template-columns:minmax(0,1fr);gap:38px;align-items:start}.profile-card{justify-self:start;max-width:440px}.hero__intro{max-width:650px}.page-hero__inner{grid-template-columns:minmax(0,1fr);gap:32px}.page-hero__meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-self:auto;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.page-hero__meta>div{padding:10px 14px;border-bottom:0;border-left:1px solid var(--border)}.page-hero__meta>div:first-child{padding-left:0;border-left:0}.page-hero__meta>div:nth-child(odd){border-left:0}.page-hero__meta>div:nth-child(n+3){border-top:1px solid var(--border)}.project-overview,.about-intro{grid-template-columns:minmax(0,1fr);gap:36px}.project-spotlight{grid-template-columns:minmax(0,1fr)}.project-spotlight__visual{border-top:1px solid var(--border);border-left:0}.split{grid-template-columns:minmax(0,1fr)}.about-portrait{max-width:440px}.post-layout{grid-template-columns:minmax(0,760px);justify-content:start}.post-toc{display:none}.site-footer__top{grid-template-columns:1fr .7fr}.site-footer__contact{grid-column:1 / -1;padding-top:26px;border-top:1px solid var(--border)}.site-footer__contact .eyebrow{margin-bottom:2px}.contact-panel{grid-template-columns:minmax(0,1fr);align-items:start}.contact-panel__side{max-width:380px}}@media(max-width:820px){.snapshot__grid{grid-template-columns:minmax(0,1fr)}.snapshot__item,.snapshot__item:first-child,.snapshot__item:last-child{padding:23px 0;border-top:1px solid var(--border);border-left:0}.snapshot__item:first-child{border-top:0}.snapshot__item:hover{background:transparent}.snapshot__desc{max-width:500px}.metric-strip{grid-template-columns:minmax(0,1fr)}.metric-strip__item,.metric-strip__item:first-child{display:flex;align-items:baseline;justify-content:space-between;gap:20px;padding:16px 0;border-top:1px solid var(--border);border-left:0}.metric-strip__item:first-child{border-top:0}.feature-grid,.architecture__flow{grid-template-columns:minmax(0,1fr)}.architecture__arrow{height:38px;border-top:1px solid var(--border);border-right:0;border-bottom:1px solid var(--border);border-left:0}.architecture__arrow svg{transform:rotate(90deg)}.architecture__external{align-items:flex-start}.details-item__content{padding-left:0}.award-entry{grid-template-columns:36px minmax(0,1fr);gap:14px 20px;align-items:start}.award-entry__seal{grid-column:2;justify-self:start;width:105px;margin-top:4px}.award-entry__seal-rank{font-size:1.8rem}.awards-head{display:block}.awards-note{max-width:100%;margin-top:11px;text-align:left}.role-card{grid-template-columns:minmax(0,1fr);gap:20px}.resume-grid{grid-template-columns:minmax(0,1fr);gap:0}.post-layout{padding-block:38px}.post-pager{grid-template-columns:minmax(0,1fr)}.post-pager__link--next{align-items:flex-start;text-align:left}.post-pager__empty{display:none}}@media(max-width:640px){:root{--header-h: 64px;--gutter: 18px;--section-y: 56px}.site-header__inner{gap:12px}.brand{gap:9px}.brand__mark{width:34px;height:32px;font-size:.72rem}.brand__text strong{font-size:.86rem}.brand__text small{font-size:.52rem;letter-spacing:.12em}.site-header__actions{gap:2px}.icon-button,.mobile-menu>summary{width:40px;height:40px}.mobile-menu__panel{top:calc(var(--header-h) + 1px)}.hero__inner{gap:32px;padding-block:36px 44px}.hero:after{display:none}.hero__status{margin-bottom:22px;font-size:.58rem;letter-spacing:.05em}.hero__title{font-size:clamp(3.6rem,18vw,5.2rem);letter-spacing:-.06em}.hero__title-en{margin-top:15px;font-size:.65rem;letter-spacing:.2em}.hero__statement{margin-top:22px;font-size:1.28rem;line-height:1.6}.hero__intro{font-size:.88rem;line-height:1.8}.hero__actions{gap:8px}.hero__actions .btn{flex:1 1 130px}.hero__contact{margin-top:20px;font-size:.6rem}.profile-card{display:grid;grid-template-columns:126px minmax(0,1fr);gap:0 12px;max-width:none;padding:11px}.profile-card__top{grid-column:1 / -1;padding-bottom:9px;font-size:.54rem}.profile-card__photo{grid-column:1;margin-top:11px}.profile-card__photo img{aspect-ratio:4 / 5}.profile-card__stamp{right:6px;bottom:6px;width:36px;height:36px;padding:3px}.profile-card__meta{grid-column:2;align-self:start;margin-top:11px}.profile-card__meta>div{display:block;padding:7px 0}.profile-card__meta dt{font-size:.52rem}.profile-card__meta dd{margin-top:2px;font-size:.69rem;line-height:1.5;text-align:left}.profile-card__foot{grid-column:1 / -1;padding-top:10px;font-size:.53rem}.profile-card__monogram{font-size:1rem}.page-hero{padding-top:38px}.page-hero__title{font-size:clamp(2.45rem,12.5vw,3.7rem)}.page-hero__title-en{margin-top:14px;font-size:.59rem;letter-spacing:.1em}.page-hero__description{margin-top:18px;font-size:.85rem;line-height:1.8}.page-hero__meta{grid-template-columns:minmax(0,1fr)}.page-hero__meta>div,.page-hero__meta>div:first-child,.page-hero__meta>div:nth-child(odd){padding:9px 0;border-top:1px solid var(--border);border-left:0}.page-hero__meta>div:first-child{border-top:0}.page-hero__meta>div:nth-child(2){border-top:1px solid var(--border)}.section-head{display:block;margin-bottom:26px}.section-head__title{font-size:clamp(1.6rem,8vw,2.15rem)}.section-head__description{font-size:.83rem}.section-head__link{margin-top:16px;font-size:.76rem}.eyebrow{font-size:.6rem;letter-spacing:.09em}.snapshot__item{padding:20px 0}.snapshot__value{margin-top:12px;font-size:1.45rem}.snapshot__desc{font-size:.75rem}.project-spotlight__copy{padding:23px 20px 25px}.project-spotlight h3{font-size:1.75rem}.project-spotlight__description{font-size:.84rem}.project-spotlight__visual{padding:16px}.project-console__footer{flex-direction:column;align-items:flex-start;gap:3px}.project-console__rows span{font-size:.56rem}.project-console__rows strong{font-size:.65rem}.split__panel{padding:22px 18px}.award-line{grid-template-columns:22px minmax(0,1fr) auto;gap:10px;padding:14px 0}.award-line strong{font-size:.84rem}.award-line__medal{font-size:.62rem}.post-row{grid-template-columns:minmax(0,1fr);gap:9px;padding:20px 0}.post-row__meta{padding-top:0;font-size:.57rem}.post-row__index{flex-basis:auto}.post-row__title{font-size:1.14rem}.post-row__description{font-size:.8rem}.post-row__foot{margin-top:12px}.post-row__arrow{width:28px;height:28px}.contact-panel{padding:24px 19px;gap:26px}.contact-panel__title{font-size:1.75rem}.contact-panel__description{font-size:.83rem}.project-overview h2{font-size:1.95rem}.project-overview__lead{font-size:.88rem}.metric-strip__item{padding:14px 0}.metric-strip__value{font-size:1.45rem}.metric-strip__label{text-align:right}.feature-card{padding:22px 18px}.architecture__node{padding:19px}.details-item summary{padding:17px 0}.details-item summary>span{gap:9px;align-items:flex-start;flex-direction:column}.details-item__hint{display:none}.details-item__content{font-size:.82rem}.award-entry{grid-template-columns:27px minmax(0,1fr);gap:20px;padding:26px 0}.award-entry h2{font-size:1.32rem}.award-entry__seal{width:92px}.award-entry__seal-rank{font-size:1.55rem}.award-entry__index{font-size:.61rem}.role-card{padding:22px 18px}.about-bio__lead{font-size:1.18rem}.about-bio>p:not(.about-bio__lead){font-size:.86rem}.resume-block{padding:22px 0 25px}.resume-list>div{grid-template-columns:82px minmax(0,1fr);gap:10px}.resume-awards li{gap:12px;font-size:.79rem}.about-english p{font-size:.96rem;line-height:1.9}.blog-toolbar{display:block}.blog-tags{justify-content:flex-start;margin-top:12px}.blog-subscribe{align-items:flex-start;flex-direction:column;padding:16px}.post-header{padding-top:30px}.post-header__title{margin-top:15px;font-size:clamp(1.9rem,9.4vw,2.7rem);line-height:1.22}.post-header__description{margin-top:16px;font-size:.88rem;line-height:1.8}.post-header__meta{font-size:.59rem}.prose{font-size:.96rem;line-height:1.92}.prose h2{margin-top:2.1em;font-size:1.35rem}.prose h3{font-size:1.12rem}.prose pre{margin-right:-18px;margin-left:-18px;padding:17px 18px;border-right:0;border-left:2px solid color-mix(in srgb,var(--accent) 55%,var(--border));border-radius:0;font-size:.75rem;line-height:1.7}.prose .katex{font-size:1em}.post-end{margin-top:34px}.post-author{align-items:flex-start;flex-wrap:wrap}.post-author__links{width:100%;margin-top:4px;margin-left:62px}.post-pager__link,.post-pager__empty{min-height:86px;padding:14px}.site-footer{padding-top:36px}.site-footer__top{grid-template-columns:minmax(0,1fr);gap:28px}.site-footer__contact{grid-column:auto;padding-top:22px}.site-footer__bottom{flex-direction:column;gap:8px;margin-top:28px}.site-footer__note{max-width:none}.not-found__code{font-size:clamp(5rem,26vw,8rem)}}@media(max-width:380px){.brand__text small{display:none}.hero__title{font-size:3.45rem}.hero__actions{flex-direction:column}.hero__actions .btn{width:100%;flex-basis:auto}.profile-card{grid-template-columns:112px minmax(0,1fr)}.profile-card__meta dd{font-size:.65rem}.page-hero__meta dd{font-size:.72rem}.project-spotlight__visual{padding:10px}.project-console__body,.project-console__head,.project-console__footer{padding-inline:11px}.post-header__title{font-size:1.82rem}.resume-list>div{grid-template-columns:minmax(0,1fr);gap:2px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.section-head__title--spaced{margin-top:15px}.section-head__title--spaced:first-child{margin-top:0}.text-link--spaced{margin-top:14px}.page-hero__meta dd{overflow-wrap:anywhere}.feature-card--wide{grid-column:1 / -1}.award-entry__medal-line .status-dot{background:currentColor;box-shadow:0 0 0 3px color-mix(in srgb,currentColor 13%,transparent)}.blog-subscribe__links{display:flex;flex-wrap:wrap;gap:18px}.not-found{background-image:linear-gradient(to right,var(--grid-line) 1px,transparent 1px),linear-gradient(to bottom,var(--grid-line) 1px,transparent 1px);background-size:48px 48px}@media(max-width:820px){.feature-card--wide{grid-column:auto}}.awards-contact{max-width:410px;text-align:right}.awards-contact p{color:var(--muted);font-size:.84rem;line-height:1.75}.awards-contact .btn{margin-top:12px}@media(max-width:820px){.awards-contact{max-width:100%;margin-top:18px;text-align:left}}.project-console__chrome{color:#7c92a9}.project-console__rows span{color:#8298ae}.project-console__caption{color:#687f95}.project-console__footer{color:#6f869c}.hero__contact{font-size:.7rem}@media(max-width:640px){.hero__contact{font-size:.62rem}}.split__panel--research{display:flex;flex-direction:column}.split__research-link{margin-top:auto;padding-top:24px}.research-simple{max-width:900px;padding-left:clamp(20px,3.5vw,44px);border-left:2px solid var(--accent)}.research-simple .eyebrow{margin-bottom:22px}.research-simple__statement{max-width:840px;color:var(--fg-strong);font-size:clamp(1.55rem,3.5vw,2.6rem);font-weight:500;letter-spacing:-.03em;line-height:1.65;text-wrap:balance}.resume-paragraph{max-width:560px;margin-top:18px;color:var(--fg);font-size:.86rem;line-height:1.85}@media(max-width:640px){.research-simple{padding-left:17px;border-left-width:1px}.research-simple__statement{font-size:1.32rem;line-height:1.7}.split__research-link{padding-top:20px}}
