@font-face{
  font-family:"Smiley Sans";
  src:url("fonts/SmileySans-Oblique.woff2") format("woff2");
  font-display:swap;
  font-style:normal;
  font-weight:400;
}

/*
 * Kexi research journal — v3
 * Layout references: Fuwari (MIT), Hexo Theme Reimu (MIT),
 * and Hexo Theme Butterfly (Apache-2.0). See THIRD_PARTY_NOTICES.md.
 */

:root{
  --page:#f4f0ec;
  --paper:#fffdf9;
  --card:rgba(255,253,249,.94);
  --ink:#232530;
  --muted:#686b78;
  --line:rgba(59,49,54,.14);
  --primary:#e95f72;
  --primary-dark:#c94358;
  --primary-soft:#ffe7eb;
  --cyan:#3e94aa;
  --cyan-soft:#e1f4f7;
  --amber:#c98a32;
  --amber-soft:#fff0d2;
  --blue:#2c5d9f;
  --shadow:0 14px 38px rgba(67,45,51,.09),0 2px 5px rgba(67,45,51,.05);
  --shadow-hover:0 24px 55px rgba(67,45,51,.16),0 8px 18px rgba(67,45,51,.08);
  --inset:inset 0 1px 0 rgba(255,255,255,.9);
  --radius:22px;
  --shell:min(1220px,calc(100% - 44px));
  --sans:Inter,"Noto Sans SC","Source Han Sans SC","PingFang SC","Microsoft YaHei",system-ui,sans-serif;
  --display:"Smiley Sans",Inter,"Noto Sans SC","PingFang SC",sans-serif;
  --serif:"Source Han Serif SC","Noto Serif CJK SC","Songti SC",Georgia,serif;
  --mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace;
}

[data-theme="dark"]{
  --page:#17171d;
  --paper:#242329;
  --card:rgba(36,35,41,.95);
  --ink:#f7f3f1;
  --muted:#b7b0b8;
  --line:rgba(255,255,255,.12);
  --primary:#ff8795;
  --primary-dark:#ff9ca7;
  --primary-soft:#4b3038;
  --cyan:#83c9d5;
  --cyan-soft:#233c41;
  --amber:#edbd73;
  --amber-soft:#4a3b27;
  --blue:#9bbcf0;
  --shadow:0 16px 42px rgba(0,0,0,.28),0 2px 5px rgba(0,0,0,.2);
  --shadow-hover:0 24px 58px rgba(0,0,0,.4);
  --inset:inset 0 1px 0 rgba(255,255,255,.06);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--page)}
body{
  min-height:100vh;
  margin:0;
  color:var(--ink);
  background:
    radial-gradient(circle at 7% 2%,rgba(233,95,114,.11),transparent 27rem),
    radial-gradient(circle at 96% 25%,rgba(62,148,170,.1),transparent 31rem),
    var(--page);
  font:16.5px/1.75 var(--sans);
  letter-spacing:.006em;
  transition:background .25s,color .25s;
}
body:before{
  content:"";
  position:fixed;
  z-index:-2;
  inset:0;
  pointer-events:none;
  opacity:.18;
  background-image:linear-gradient(rgba(55,49,57,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(55,49,57,.08) 1px,transparent 1px);
  background-size:48px 48px;
  mask-image:linear-gradient(to bottom,#000,transparent 82%);
}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
button{color:inherit}
::selection{background:var(--primary);color:#fff}

.skip-link{position:fixed;z-index:200;left:18px;top:-60px;padding:10px 16px;border-radius:12px;background:var(--ink);color:var(--paper);transition:.2s}
.skip-link:focus{top:18px}
.site-shell,.wrap{width:var(--shell);margin-inline:auto}
.wrap{padding-bottom:74px}
.shell-card,.about-aside,.about-main,.archive-item,.archive-tools,.article-shell,.now-page{
  border:1px solid var(--line);
  background:var(--card);
  box-shadow:var(--shadow),var(--inset);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}
.shell-card{border-radius:var(--radius)}

/* Navigation */
.topbar{
  position:sticky;
  z-index:80;
  top:12px;
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  width:var(--shell);
  min-height:64px;
  margin:12px auto 18px;
  padding:7px 12px 7px 18px;
  border:1px solid color-mix(in srgb,var(--primary) 18%,var(--line));
  border-radius:999px;
  background:color-mix(in srgb,var(--paper) 91%,transparent);
  box-shadow:0 9px 30px rgba(57,38,45,.11),var(--inset);
  backdrop-filter:blur(20px);
}
.wordmark{display:inline-flex;align-items:center;gap:2px;font:850 25px/1 var(--sans);letter-spacing:-.055em}
.wordmark>span:last-child{color:var(--primary)}
.wordmark-spark{display:grid;place-items:center;width:28px;height:28px;margin-right:7px;border-radius:9px;background:linear-gradient(145deg,var(--primary-soft),var(--cyan-soft));color:var(--primary)!important;font-size:14px;box-shadow:inset 0 1px rgba(255,255,255,.7),0 4px 10px rgba(201,67,88,.15);transition:.3s}
.wordmark:hover .wordmark-spark{transform:rotate(18deg) scale(1.06)}
.topbar nav{display:flex;justify-content:center;gap:3px;padding:4px}
.topbar nav a{position:relative;padding:8px 15px;border-radius:999px;color:var(--muted);font-size:14px;font-weight:650;transition:.22s}
.topbar nav a:hover,.topbar nav a[aria-current="page"]{background:var(--primary-soft);color:var(--primary-dark);box-shadow:var(--inset)}
.topbar nav a[aria-current="page"]:after{content:"";position:absolute;left:18px;right:18px;bottom:4px;height:2px;border-radius:2px;background:var(--primary)}
.top-actions{display:flex;align-items:center;gap:8px}
.top-actions>a{padding:8px 10px;color:var(--muted);font-size:13px;font-weight:650}
.theme-toggle{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--line);border-radius:50%;background:linear-gradient(145deg,var(--paper),var(--primary-soft));box-shadow:0 5px 12px rgba(57,38,45,.1),var(--inset);cursor:pointer;transition:.22s}
.theme-toggle:hover{transform:rotate(18deg) translateY(-1px)}
.theme-toggle:active{transform:translateY(1px);box-shadow:inset 0 2px 5px rgba(57,38,45,.14)}

/* Shared type and controls */
.eyebrow,.section-kicker{font:750 11px/1.35 var(--mono);letter-spacing:.14em;color:var(--primary-dark)}
.status-dot{display:inline-block;width:8px;height:8px;margin-right:8px;border-radius:50%;background:#4bd181;box-shadow:0 0 0 4px rgba(75,209,129,.15);animation:pulse 2s ease-in-out infinite}
@keyframes pulse{50%{box-shadow:0 0 0 8px rgba(75,209,129,0)}}
.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:10px 22px;border:1px solid var(--line);border-radius:999px;font-size:14px;font-weight:750;transition:transform .2s,box-shadow .2s,background .2s}
.button.primary{border-color:var(--primary);background:linear-gradient(180deg,color-mix(in srgb,var(--primary) 85%,#fff),var(--primary));color:#fff;box-shadow:0 9px 18px color-mix(in srgb,var(--primary) 28%,transparent),inset 0 1px rgba(255,255,255,.35)}
.button.secondary{background:linear-gradient(180deg,var(--paper),color-mix(in srgb,var(--paper) 88%,var(--page)));box-shadow:0 7px 15px rgba(57,38,45,.08),var(--inset)}
.button:hover{transform:translateY(-2px);box-shadow:var(--shadow-hover)}
.button:active{transform:translateY(1px);box-shadow:inset 0 3px 8px rgba(57,38,45,.15)}
.arrow-link{color:var(--primary-dark);font-weight:750}

/* Home hero */
.hero-grid{display:grid;grid-template-columns:minmax(0,1.55fr) 360px;gap:22px;padding:28px 0 22px}
.hero-copy{position:relative;isolation:isolate;min-height:440px;overflow:hidden;padding:60px 58px 48px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(138deg,color-mix(in srgb,var(--paper) 94%,transparent),color-mix(in srgb,var(--primary-soft) 60%,var(--paper)));box-shadow:var(--shadow),var(--inset)}
.hero-copy:before{content:"研究ノート";position:absolute;z-index:-1;right:-8px;top:28px;color:color-mix(in srgb,var(--primary) 11%,transparent);font:850 clamp(58px,7vw,98px)/1 var(--sans);letter-spacing:-.08em;transform:rotate(-4deg)}
.hero-copy:after{content:"";position:absolute;z-index:-1;width:270px;height:270px;right:-82px;bottom:-115px;border:36px solid color-mix(in srgb,var(--cyan) 12%,transparent);border-radius:50%;box-shadow:0 0 0 18px color-mix(in srgb,var(--primary) 8%,transparent)}
.hero-copy h1{margin:35px 0 18px;font:400 clamp(76px,9vw,108px)/.9 var(--display);letter-spacing:-.055em}
.hero-copy h1 em{color:var(--primary);font-style:normal;text-shadow:0 4px 0 color-mix(in srgb,var(--paper) 50%,transparent)}
.hero-mark{color:var(--ink)}
.hero-role{margin:0 0 14px;font-size:20px;font-weight:680;letter-spacing:-.02em}
.hero-role b{color:var(--primary)}
.hero-summary{max-width:670px;margin:0;color:var(--muted);font-size:17px;line-height:1.9}
.hero-facts{display:flex;flex-wrap:wrap;gap:9px;margin:20px 0 27px}
.hero-facts span{padding:7px 12px;border:1px solid color-mix(in srgb,var(--primary) 18%,var(--line));border-radius:999px;background:color-mix(in srgb,var(--paper) 82%,transparent);color:var(--muted);font-size:13px;font-weight:650;box-shadow:var(--inset)}
.hero-actions{display:flex;flex-wrap:wrap;gap:11px}
.manga-note{position:absolute;right:36px;bottom:27px;display:grid;justify-items:end;transform:rotate(-5deg);opacity:.86}
.manga-note span{padding:4px 10px;border-radius:999px;background:var(--ink);color:var(--paper);font:700 10px var(--mono)}
.manga-note b{margin-top:5px;color:var(--primary);font:850 11px/1.15 var(--mono);text-align:right;letter-spacing:.08em}

.profile-card{position:relative;align-self:stretch;overflow:hidden;padding:47px 27px 28px;text-align:center;border-color:color-mix(in srgb,var(--primary) 18%,var(--line))}
.profile-card:before{content:"";position:absolute;inset:0 0 auto;height:138px;background:radial-gradient(circle at 18% 30%,rgba(255,255,255,.75) 0 3px,transparent 4px),radial-gradient(circle at 80% 38%,rgba(255,255,255,.65) 0 5px,transparent 6px),linear-gradient(135deg,var(--primary-soft),var(--cyan-soft));clip-path:polygon(0 0,100% 0,100% 70%,0 100%)}
.profile-tape{position:absolute;z-index:2;top:12px;left:50%;width:76px;height:20px;transform:translateX(-50%) rotate(-2deg);background:rgba(255,230,174,.68);box-shadow:0 1px 2px rgba(80,60,45,.12)}
.avatar-wrap{position:relative;z-index:1;width:132px;height:132px;margin:18px auto 20px}
.avatar-wrap img{width:100%;height:100%;object-fit:cover;border:7px solid var(--paper);border-radius:50%;box-shadow:0 13px 30px rgba(54,42,49,.2)}
.avatar-status{position:absolute;right:3px;bottom:10px;width:25px;height:25px;border:5px solid var(--paper);border-radius:50%;background:#4bd181}
.profile-card h2{margin:0;font-size:31px;letter-spacing:-.05em}
.profile-title{margin:5px 0 12px;color:var(--muted);font-size:14px;font-weight:650}
.profile-affiliation{display:flex;align-items:center;justify-content:center;gap:10px;margin:6px 0 0;font-size:13px;font-weight:750;text-align:left}
.profile-affiliation>span:last-child{display:grid}
.profile-affiliation small{color:var(--muted);font-size:12px;font-weight:550}
.brand-frame{display:grid;place-items:center;flex:0 0 auto;overflow:hidden;border:1px solid rgba(31,70,130,.12);background:#fff;box-shadow:0 4px 12px rgba(41,49,66,.08)}
.brand-frame img{width:100%;height:100%;object-fit:contain}
.brand-frame-buaa{width:48px;height:48px;padding:3px;border-radius:50%}
.brand-frame-buaa img{border-radius:50%;object-fit:cover}
.brand-frame-round{width:48px;height:48px;padding:3px;border-radius:50%}
.profile-stats{display:grid;grid-template-columns:repeat(3,1fr);margin:21px 0 18px;padding:17px 0;border-block:1px solid var(--line)}
.profile-stats div+div{border-left:1px solid var(--line)}
.profile-stats b{display:block;font-size:23px}
.profile-stats span{color:var(--muted);font-size:12px}
.social-row{display:flex;justify-content:center;gap:8px}
.social-row a{padding:8px 12px;border:1px solid transparent;border-radius:999px;background:var(--page);color:var(--muted);font-size:13px;font-weight:750;box-shadow:var(--inset);transition:.2s}
.social-row a:hover{border-color:color-mix(in srgb,var(--primary) 28%,transparent);color:var(--primary-dark);transform:translateY(-2px)}

.magazine-strip{position:relative;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:19px;min-height:100px;margin-bottom:30px;padding:17px 25px;overflow:hidden;background:linear-gradient(105deg,var(--paper),color-mix(in srgb,var(--primary-soft) 65%,var(--paper)) 54%,color-mix(in srgb,var(--cyan-soft) 75%,var(--paper)))}
.magazine-strip:after{content:"";position:absolute;right:18%;top:-63px;width:195px;height:195px;border:1px solid color-mix(in srgb,var(--primary) 28%,transparent);border-radius:50%}
.strip-index{display:grid;place-items:center;width:58px;height:58px;border:1px solid color-mix(in srgb,var(--primary) 28%,var(--line));border-radius:17px;background:var(--paper);color:var(--primary-dark);font:800 11px var(--mono);box-shadow:0 7px 14px rgba(67,45,51,.08),var(--inset)}
.magazine-strip>div:nth-child(2){display:grid}.magazine-strip span{font:750 10px var(--mono);letter-spacing:.15em;color:var(--primary-dark)}
.magazine-strip strong{font-size:19px}.magazine-strip p{z-index:1;margin:0;color:var(--muted);font:700 10px var(--mono);letter-spacing:.1em}

/* Feed and sidebar */
.content-grid{display:grid;grid-template-columns:286px minmax(0,1fr);gap:22px;padding-bottom:78px}
.sidebar{position:sticky;top:92px;align-self:start;display:grid;gap:15px}
.widget{padding:21px;overflow:hidden}
.widget header{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.widget header:before{content:"";width:4px;height:20px;border-radius:4px;background:linear-gradient(var(--primary) 0 65%,var(--cyan) 65%)}
.widget h2{margin:0;font-size:17px}
.widget-icon{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:var(--primary-soft);color:var(--primary-dark);font-weight:800}
.category-row{display:flex;align-items:center;justify-content:space-between;padding:10px 4px;border-bottom:1px dashed var(--line);color:var(--muted);font-size:14px;transition:.2s}
.category-row:hover{padding-left:9px;color:var(--ink)}
.category-row>span{display:flex;align-items:center;gap:9px}
.category-row b{font-size:12px}
.cat-icon{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;font:800 11px var(--mono);font-style:normal;color:#fff}
.cat-icon.violet{background:var(--primary)}.cat-icon.cyan{background:var(--cyan)}.cat-icon.amber{background:var(--amber)}
.tag-cloud,.interest-list{display:flex;flex-wrap:wrap;gap:8px}
.tag-cloud a,.interest-list span{padding:6px 10px;border:1px solid var(--line);border-radius:999px;background:var(--page);color:var(--muted);font-size:12px;font-weight:650;transition:.2s}
.tag-cloud a:hover{border-color:var(--primary);color:var(--primary-dark);transform:translateY(-1px)}
.affiliation-list{display:grid;gap:9px}
.affiliation-list a{display:flex;align-items:center;gap:10px;min-height:66px;padding:8px;border:1px solid transparent;border-radius:14px;background:var(--page);transition:.2s}
.affiliation-list a:hover{border-color:color-mix(in srgb,var(--primary) 24%,var(--line));transform:translateX(3px)}
.affiliation-list a>span:last-child{display:grid;min-width:0}.affiliation-list b{font-size:13px}.affiliation-list small{color:var(--muted);font-size:11px}
.widget-more{display:inline-block;margin-top:14px;color:var(--primary-dark);font-size:12px;font-weight:750}
.contact-widget>a{font-size:13px;color:var(--primary-dark);overflow-wrap:anywhere}
.main-feed{min-width:0}
.feed-section,.research-section{margin-bottom:52px}
.feed-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:17px;padding-bottom:13px;border-bottom:1px solid var(--line)}
.feed-heading h2{margin:3px 0 0;font-size:31px;letter-spacing:-.035em}
.feed-heading>a{color:var(--primary-dark);font-size:13px;font-weight:750}

.post-card{position:relative;overflow:hidden;transition:transform .24s,box-shadow .24s,border-color .24s}
.post-card:hover{transform:translateY(-5px) rotate(-.15deg);border-color:color-mix(in srgb,var(--primary) 35%,var(--line));box-shadow:var(--shadow-hover)}
.featured-post{display:grid;grid-template-columns:minmax(250px,36%) 1fr;margin-bottom:18px}
.post-cover{position:relative;min-height:245px;overflow:hidden;background:var(--cyan-soft)}
.featured-post .post-cover{min-height:340px}
.post-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(155deg,transparent 38%,rgba(22,27,48,.55))}
.post-cover img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.post-card:hover .post-cover img{transform:scale(1.055)}
.cover-sticker{background:linear-gradient(145deg,#8ac7f6,#ffd7e9)}
.cover-sticker img{object-fit:cover}
.cover-avatar{background:linear-gradient(145deg,#f7c2ce,#78345d)}
.cover-avatar img{object-fit:cover}
.cover-index{position:absolute;z-index:2;left:18px;top:16px;display:grid;place-items:center;min-width:39px;height:32px;padding:0 9px;border:1px solid rgba(255,255,255,.65);border-radius:10px;background:rgba(255,255,255,.78);color:#2e3344;font:800 12px var(--mono);box-shadow:0 5px 14px rgba(25,31,54,.12);backdrop-filter:blur(8px)}
.cover-caption{position:absolute;z-index:2;left:18px;right:18px;bottom:16px;color:#fff;font:750 10px var(--mono);letter-spacing:.12em}
.post-copy{display:flex;flex-direction:column;padding:28px 30px 25px}
.post-meta{display:flex;align-items:center;gap:12px;color:var(--muted);font:650 12px var(--mono)}
.post-meta span{padding:5px 8px;border-radius:8px;background:var(--primary-soft);color:var(--primary-dark)}
.post-meta small{margin-left:auto}
.post-copy h3{margin:18px 0 11px;font-size:clamp(21px,2vw,27px);line-height:1.4;letter-spacing:-.025em}
.post-copy h3 a:hover{color:var(--primary-dark)}
.post-copy>p{margin:0 0 24px;color:var(--muted);font-size:15px;line-height:1.8}
.post-footer{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:16px;border-top:1px solid var(--line);color:var(--muted);font-size:12px;font-weight:700}
.post-footer a{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;background:linear-gradient(145deg,var(--paper),var(--primary-soft));color:var(--primary-dark);box-shadow:0 5px 12px rgba(57,38,45,.08),var(--inset)}
.post-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}
.post-grid .post-card{display:grid;grid-template-rows:190px 1fr;min-height:455px}
.post-grid .post-cover{min-height:0}
.post-grid .post-copy{padding:23px 24px}
.post-grid .post-copy h3{font-size:21px}

.research-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}
.research-card{display:grid;grid-template-columns:78px 1fr;gap:18px;align-items:start;padding:25px;transition:.24s}
.research-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover)}
.research-orb{display:grid;place-items:center;width:67px;height:67px;border-radius:22px;color:#fff;font:850 15px var(--mono);box-shadow:inset 0 1px rgba(255,255,255,.35),0 9px 18px rgba(50,45,70,.14)}
.orb-violet{background:linear-gradient(145deg,var(--primary),#a54ea8)}.orb-cyan{background:linear-gradient(145deg,var(--cyan),#3372a4)}
.research-card>div:last-child>span{font:700 10px var(--mono);letter-spacing:.08em;color:var(--muted)}
.research-card h3{margin:5px 0 8px;font-size:22px}.research-card p{margin:0 0 14px;color:var(--muted);font-size:14px}.research-card b{color:var(--primary-dark);font-size:12px}
.publications-preview{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:30px 34px;background:linear-gradient(125deg,var(--paper),color-mix(in srgb,var(--cyan-soft) 55%,var(--paper)))}
.publications-preview h2{margin:4px 0;font-size:27px}.publications-preview p{max-width:650px;margin:0;color:var(--muted);font-size:14px}

/* Page headers and article archive */
.page-head{padding:62px 0 36px}
.compact-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.6fr);align-items:end;gap:30px}
.compact-head .eyebrow{grid-column:1/-1}
.compact-head h1{margin:0;font:400 clamp(48px,6vw,76px)/1.03 var(--display);letter-spacing:-.035em}
.compact-head p{margin:0 0 7px;color:var(--muted);font-size:17px;line-height:1.85}
.archive-tools{position:sticky;z-index:35;top:90px;display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:25px;padding:13px 15px;border-radius:20px;background:color-mix(in srgb,var(--paper) 92%,transparent)}
.search-box{position:relative;min-width:270px;flex:1}.search-box input{width:100%;height:44px;padding:0 42px 0 16px;border:1px solid var(--line);border-radius:13px;outline:0;background:var(--page);color:var(--ink);font-size:14px}.search-box input:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 14%,transparent)}.search-box span{position:absolute;right:15px;top:9px;color:var(--muted)}
.filters{display:flex;flex-wrap:wrap;gap:7px}.filter-btn{padding:8px 12px;border:1px solid var(--line);border-radius:999px;background:var(--paper);color:var(--muted);font-size:13px;font-weight:700;cursor:pointer;transition:.2s}.filter-btn:hover,.filter-btn.active{border-color:var(--primary);background:var(--primary-soft);color:var(--primary-dark)}
.archive{display:grid;gap:20px}
.archive-item{display:grid;grid-template-columns:270px 1fr;min-height:245px;overflow:hidden;border-radius:var(--radius);transition:transform .25s,box-shadow .25s,border-color .25s}
.archive-item:hover{transform:translateY(-5px);border-color:color-mix(in srgb,var(--primary) 30%,var(--line));box-shadow:var(--shadow-hover)}
.archive-cover{position:relative;min-height:245px;overflow:hidden;background:var(--cyan-soft)}
.archive-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(145deg,transparent 35%,rgba(22,27,48,.48))}
.archive-cover img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.archive-item:hover .archive-cover img{transform:scale(1.06)}
.archive-cover>span{position:absolute;z-index:2;left:17px;top:16px;display:grid;place-items:center;width:40px;height:34px;border:1px solid rgba(255,255,255,.7);border-radius:10px;background:rgba(255,255,255,.82);color:#2d3346;font:850 12px var(--mono);box-shadow:0 5px 14px rgba(25,31,54,.13);backdrop-filter:blur(8px)}
.archive-copy{display:flex;flex-direction:column;padding:27px 30px}
.archive-meta{display:flex;align-items:center;gap:13px;color:var(--muted);font:650 12px var(--mono)}
.archive-meta .tag{padding:5px 9px;border-radius:8px;background:var(--primary-soft);color:var(--primary-dark)}
.archive-meta small{margin-left:auto}
.archive-item h2{margin:18px 0 9px;font-size:26px;line-height:1.4;letter-spacing:-.025em}.archive-item h2 a:hover{color:var(--primary-dark)}
.archive-item p{margin:0 0 19px;color:var(--muted);font-size:15px;line-height:1.8}
.archive-read{align-self:flex-start;margin-top:auto;color:var(--primary-dark);font-size:13px;font-weight:750}.archive-read span{display:inline-block;transition:.2s}.archive-read:hover span{transform:translate(3px,-2px)}
[hidden]{display:none!important}

/* Research page */
.research-page{padding-top:25px}
.research-hero{position:relative;display:grid;grid-template-columns:minmax(0,.85fr) minmax(420px,1.15fr);min-height:520px;overflow:hidden;margin-bottom:64px}
.research-hero-copy{z-index:2;align-self:center;padding:48px}
.research-hero h1{margin:18px 0;font:400 clamp(48px,5vw,72px)/1.05 var(--display);letter-spacing:-.035em}.research-hero h1 i{color:var(--primary);font-style:normal}.research-hero-copy>p{max-width:520px;color:var(--muted);font-size:17px;line-height:1.9}
.research-hero figure{position:relative;min-height:520px;margin:0;overflow:hidden}.research-hero figure:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--paper),transparent 35%),linear-gradient(0deg,rgba(26,30,48,.35),transparent 42%)}.research-hero figure>img{width:100%;height:100%;object-fit:cover}.research-hero figcaption{position:absolute;z-index:2;right:20px;bottom:16px;color:#fff;font:700 10px var(--mono);letter-spacing:.12em}
.anime-sticker{position:absolute;z-index:4;right:31px;top:28px;width:94px;height:94px;border:5px solid #fff;border-radius:30px;object-fit:cover;box-shadow:0 12px 28px rgba(35,38,60,.25);transform:rotate(5deg);transition:.35s}.anime-sticker:hover{transform:rotate(-3deg) scale(1.05)}
.research-track{scroll-margin-top:105px;margin-bottom:68px}
.research-detail-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:20px}.research-detail-grid.reverse{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
.research-overview{position:relative;overflow:hidden;padding:38px}.research-overview:after{content:"";position:absolute;right:-70px;bottom:-70px;width:210px;height:210px;border:34px solid color-mix(in srgb,var(--primary) 10%,transparent);border-radius:50%}.field-number{display:grid;place-items:center;width:58px;height:58px;border-radius:18px;background:linear-gradient(145deg,var(--primary),#a34d9e);color:#fff;font:850 14px var(--mono);box-shadow:0 9px 18px rgba(164,77,158,.2)}
.embodied-card .field-number{background:linear-gradient(145deg,var(--cyan),#3372a4)}
.research-overview h3{margin:27px 0 9px;font-size:28px}.research-overview p{position:relative;z-index:1;color:var(--muted);font-size:15px;line-height:1.85}.research-overview .interest-list{position:relative;z-index:1;margin-top:22px}
.question-stack{display:grid;gap:12px}.question-card{display:grid;grid-template-columns:55px 1fr;gap:17px;align-items:start;padding:21px 23px;transition:.22s}.question-card:hover{transform:translateX(5px);box-shadow:var(--shadow-hover)}.question-card>span{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:var(--primary-soft);color:var(--primary-dark);font:800 12px var(--mono)}.question-card h3{margin:0 0 4px;font-size:18px}.question-card p{margin:0;color:var(--muted);font-size:14px;line-height:1.75}
.reading-shelf{display:grid;grid-template-columns:auto repeat(3,1fr);align-items:center;gap:12px;margin-top:18px;padding:17px 20px}.reading-shelf>span{font:750 10px var(--mono);color:var(--primary-dark)}.reading-shelf a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border-radius:13px;background:var(--page);transition:.2s}.reading-shelf a:hover{transform:translateY(-2px);background:var(--primary-soft)}.reading-shelf b{font-size:13px}.reading-shelf small{color:var(--muted);font-size:11px}
.research-status{display:flex;align-items:center;gap:22px;margin-top:18px;padding:23px 28px}.research-status>span{font:750 10px var(--mono);color:var(--primary-dark)}.research-status strong{font-size:18px}.research-status p{margin:0;color:var(--muted);font-size:14px}
.method-note{margin-bottom:70px;padding:34px}.method-note h2{margin:4px 0 22px;font-size:29px}.method-note>div{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.method-note p{margin:0;padding:18px;border-radius:16px;background:var(--page);color:var(--muted);font-size:14px}.method-note b{color:var(--ink);font-size:16px}

/* About */
.about-page{background:radial-gradient(circle at 8% 4%,rgba(233,95,114,.13),transparent 29rem),radial-gradient(circle at 94% 26%,rgba(62,148,170,.12),transparent 34rem),linear-gradient(115deg,color-mix(in srgb,var(--page) 94%,var(--primary-soft)),var(--page) 48%,color-mix(in srgb,var(--page) 95%,var(--cyan-soft)))}
.about-page .compact-head{position:relative;isolation:isolate;overflow:hidden;margin:28px 0 24px;padding:38px 42px;border:1px solid color-mix(in srgb,var(--primary) 18%,var(--line));border-radius:28px;background:linear-gradient(145deg,color-mix(in srgb,var(--paper) 97%,var(--primary-soft)),color-mix(in srgb,var(--paper) 91%,var(--cyan-soft)));box-shadow:0 18px 45px rgba(67,45,51,.11),inset 0 2px 1px color-mix(in srgb,#fff 82%,transparent),inset 0 -3px 8px rgba(67,45,51,.035)}
.about-page .compact-head:before{content:"PROFILE";position:absolute;z-index:-1;right:24px;bottom:-24px;color:color-mix(in srgb,var(--primary) 7%,transparent);font:900 clamp(68px,10vw,128px)/1 var(--mono);letter-spacing:-.09em;pointer-events:none}.about-page .compact-head:after{content:"";position:absolute;right:27px;top:24px;width:13px;height:13px;border-radius:50%;background:radial-gradient(circle at 34% 28%,#fff 0 12%,#ff9eac 26%,var(--primary) 67%,#a93448 100%);box-shadow:0 4px 8px rgba(117,42,55,.25),inset 0 -1px 2px rgba(91,27,40,.3)}
.about-layout{display:grid;grid-template-columns:310px minmax(0,1fr);gap:24px;align-items:start}
.about-aside{position:sticky;top:96px;overflow:hidden;padding:31px 25px;border:1px solid color-mix(in srgb,var(--primary) 13%,var(--line));border-radius:26px;background:linear-gradient(150deg,color-mix(in srgb,var(--paper) 98%,var(--primary-soft)),color-mix(in srgb,var(--paper) 91%,var(--page)));box-shadow:0 18px 42px rgba(67,45,51,.12),inset 2px 2px 1px color-mix(in srgb,#fff 82%,transparent),inset -3px -3px 8px rgba(67,45,51,.04);text-align:center}.about-aside:before{content:"";position:absolute;inset:7px;border:1px solid color-mix(in srgb,#fff 78%,transparent);border-radius:20px;pointer-events:none}.about-aside>*{position:relative;z-index:1}
.about-avatar{width:142px;height:142px;margin:0 auto 18px;padding:6px;border-radius:50%;background:linear-gradient(145deg,#fff,color-mix(in srgb,var(--paper) 65%,var(--primary-soft)));box-shadow:0 13px 30px rgba(54,42,49,.18),inset 0 1px 2px #fff,inset 0 -3px 7px rgba(67,45,51,.08)}.about-avatar img{width:100%;height:100%;object-fit:cover;border:1px solid color-mix(in srgb,var(--primary) 12%,var(--line));border-radius:50%;box-shadow:inset 0 2px 6px rgba(54,42,49,.12)}
.about-aside>div:nth-child(2)>b{font-size:27px}.about-aside>div:nth-child(2)>p{margin:3px 0 20px;color:var(--muted);font-size:14px}
.aside-affiliation{display:flex;align-items:center;gap:10px;padding:11px;border:1px solid color-mix(in srgb,var(--primary) 7%,var(--line));border-radius:15px;background:linear-gradient(145deg,color-mix(in srgb,var(--page) 94%,var(--paper)),color-mix(in srgb,var(--paper) 86%,var(--page)));box-shadow:inset 0 3px 8px rgba(67,45,51,.07),inset 0 -1px color-mix(in srgb,#fff 72%,transparent);text-align:left;font-size:13px;font-weight:750}.aside-affiliation>span:last-child{display:grid}.aside-affiliation small{color:var(--muted);font-size:11px;font-weight:550}
.aside-links{display:flex;justify-content:center;gap:7px;margin-top:17px}.aside-links a{padding:8px 11px;border:1px solid color-mix(in srgb,var(--primary) 11%,var(--line));border-radius:999px;background:linear-gradient(180deg,color-mix(in srgb,var(--paper) 55%,var(--primary-soft)),var(--primary-soft));box-shadow:0 5px 10px rgba(67,45,51,.07),inset 0 1px color-mix(in srgb,#fff 72%,transparent);color:var(--primary-dark);font-size:12px;font-weight:750;transition:.2s}.aside-links a:hover{transform:translateY(-2px);box-shadow:0 9px 16px rgba(67,45,51,.11),inset 0 1px color-mix(in srgb,#fff 76%,transparent)}.aside-links a:active{transform:translateY(1px);box-shadow:inset 0 3px 7px rgba(67,45,51,.13)}
.about-main{position:relative;overflow:hidden;padding:38px 42px;border:1px solid color-mix(in srgb,var(--primary) 12%,var(--line));border-radius:28px;background:linear-gradient(150deg,color-mix(in srgb,var(--paper) 98%,var(--primary-soft)),color-mix(in srgb,var(--paper) 94%,var(--page)));box-shadow:0 20px 48px rgba(67,45,51,.12),inset 2px 2px 1px color-mix(in srgb,#fff 84%,transparent),inset -3px -3px 8px rgba(67,45,51,.035)}.about-main:before{content:"";position:absolute;left:14px;top:30px;bottom:30px;width:4px;border-radius:99px;background:linear-gradient(var(--primary),color-mix(in srgb,var(--primary) 22%,transparent) 18%,color-mix(in srgb,var(--cyan) 22%,transparent) 82%,var(--cyan));box-shadow:inset 1px 0 color-mix(in srgb,#fff 50%,transparent),0 0 10px color-mix(in srgb,var(--primary) 10%,transparent)}
.profile-note{position:relative;padding:20px 22px 19px 26px;border:1px solid color-mix(in srgb,var(--cyan) 13%,var(--line));border-radius:18px;background:linear-gradient(145deg,color-mix(in srgb,var(--page) 84%,var(--paper)),color-mix(in srgb,var(--paper) 92%,var(--cyan-soft)));box-shadow:inset 0 4px 12px rgba(67,45,51,.065),inset 0 -1px color-mix(in srgb,#fff 75%,transparent)}.profile-note:before{content:"";position:absolute;left:10px;top:15px;bottom:15px;width:4px;border-radius:4px;background:linear-gradient(var(--primary),var(--cyan));box-shadow:inset 0 1px rgba(255,255,255,.55)}.profile-note p{margin:0;color:var(--muted);font-size:15px;line-height:1.9}.profile-note p:first-child{margin-bottom:5px;color:var(--ink);font-size:18px;font-weight:720}
.about-section{scroll-margin-top:105px;margin-top:48px}
.section-title-row{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:14px;padding:10px 13px 10px 16px;border:1px solid color-mix(in srgb,var(--primary) 8%,var(--line));border-radius:15px;background:linear-gradient(145deg,color-mix(in srgb,var(--page) 88%,var(--paper)),color-mix(in srgb,var(--paper) 84%,var(--page)));box-shadow:inset 0 3px 9px rgba(67,45,51,.065),inset 0 -1px color-mix(in srgb,#fff 70%,transparent)}.section-title-row span{padding:5px 8px;border-radius:8px;background:color-mix(in srgb,var(--primary-soft) 82%,var(--paper));box-shadow:inset 0 1px color-mix(in srgb,#fff 75%,transparent);font:750 11px var(--mono);letter-spacing:.12em;color:var(--primary-dark)}.section-title-row h2{margin:0;font-size:25px;text-shadow:0 1px color-mix(in srgb,#fff 75%,transparent)}
.experience-card{position:relative;isolation:isolate;display:grid;grid-template-columns:190px 165px minmax(0,1fr);gap:20px;align-items:center;min-height:126px;margin-top:14px;padding:20px 22px;border:1px solid color-mix(in srgb,var(--primary) 13%,var(--line));border-radius:20px;background:linear-gradient(145deg,color-mix(in srgb,var(--paper) 96%,var(--primary-soft)),color-mix(in srgb,var(--page) 38%,var(--paper)));box-shadow:0 12px 25px rgba(67,45,51,.08),inset 0 1px 0 color-mix(in srgb,#fff 84%,transparent),inset 0 -2px 4px rgba(77,54,60,.04);transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}
.experience-card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--primary) 24%,var(--line));box-shadow:0 19px 36px rgba(67,45,51,.13),inset 0 1px 0 color-mix(in srgb,#fff 86%,transparent),inset 0 -2px 4px rgba(77,54,60,.035)}
.experience-card:before{content:"";position:absolute;z-index:0;inset:5px;border:1px solid color-mix(in srgb,#fff 72%,transparent);border-radius:16px;pointer-events:none}.experience-card:after{content:"";position:absolute;z-index:2;right:16px;top:13px;width:11px;height:11px;border-radius:50%;background:radial-gradient(circle at 34% 28%,#fff 0 12%,#ff9eac 26%,var(--primary) 67%,#a93448 100%);box-shadow:0 3px 7px rgba(117,42,55,.28),inset 0 -1px 2px rgba(91,27,40,.3)}.experience-card>*{position:relative;z-index:1}
.team-card{grid-template-columns:190px minmax(0,1fr)}
.org-logo-box{display:grid;place-items:center;width:180px;height:72px;padding:9px;border:1px solid rgba(50,60,80,.12);border-radius:15px;background:linear-gradient(145deg,#fff,#f3f4f7);box-shadow:0 9px 18px rgba(37,45,79,.1),inset 1px 1px 0 rgba(255,255,255,.95),inset -2px -2px 4px rgba(38,49,77,.08)}
.org-logo-box img{width:100%;height:100%;object-fit:contain}
.org-logo-box.logo-buaa{width:72px;height:72px;margin-left:52px;padding:3px;border-radius:50%;background:radial-gradient(circle at 35% 28%,#fff 0 28%,#edf5fb 72%,#d4e6f3 100%)}.org-logo-box.logo-buaa img{border-radius:50%;object-fit:cover}.org-logo-box.logo-round{width:72px;height:72px;margin-left:52px;padding:4px;border-radius:50%;background:radial-gradient(circle at 35% 28%,#fff 0 25%,#e9f8fb 68%,#ccebf1 100%)}.org-logo-box.logo-round img{border-radius:50%;clip-path:circle(49%);object-fit:cover}.org-logo-box.logo-lecheng{width:72px;height:72px;margin-left:52px;padding:3px;overflow:hidden;border-radius:50%;background:radial-gradient(circle at 35% 28%,#fff 0 28%,#eef6fb 72%,#d9e7f0 100%)}.org-logo-box.logo-lecheng img{width:100%;height:100%;border-radius:50%;object-fit:cover;transform:none}
.internship-card .org-logo-box.logo-company{width:165px;height:68px;margin-left:5px;padding:0;border:0;border-radius:0;background:none;box-shadow:none}.internship-card .org-logo-box.logo-company img{width:auto;height:auto;max-width:154px;max-height:60px;object-fit:contain;filter:drop-shadow(0 4px 5px rgba(38,49,77,.13));transition:transform .24s ease,filter .24s ease}.internship-card:hover .org-logo-box.logo-company img{transform:translateY(-2px) scale(1.025);filter:drop-shadow(0 7px 8px rgba(38,49,77,.18))}.internship-card .logo-baidu img{max-height:52px;mix-blend-mode:multiply}.internship-card .logo-meituan img{max-height:57px}
[data-theme="dark"] .internship-card .logo-baidu img{padding:5px 8px;border-radius:10px;background:#fff;mix-blend-mode:normal;filter:drop-shadow(0 5px 7px rgba(0,0,0,.22))}
.experience-card time{justify-self:start;padding:3px 0;border:0;background:none;box-shadow:none;font:800 16px var(--mono);letter-spacing:.015em;color:var(--primary-dark);text-shadow:0 1px color-mix(in srgb,#fff 72%,transparent);white-space:nowrap}.experience-card h3{margin:0 0 2px;font-size:21px}.experience-card b{display:block;font-size:14px}.experience-card p{margin:7px 0 0;color:var(--muted);font-size:14px}

/* Publications */
.publications-page{padding-bottom:85px}.publication-hero{display:grid;grid-template-columns:minmax(0,.85fr) minmax(390px,1.15fr);overflow:hidden;margin-bottom:52px}.publication-status{align-self:center;padding:48px}.publication-status h2{margin:14px 0 8px;font-size:28px;letter-spacing:-.03em}.publication-status p{margin-bottom:25px;color:var(--muted);font-size:15px;line-height:1.85}
.publication-metrics{display:flex;align-items:flex-end;gap:28px;margin:19px 0 9px}.publication-metric{display:grid;grid-template-columns:auto auto;align-items:end;column-gap:9px}.publication-metric strong{color:var(--primary);font:820 64px/.92 var(--sans);letter-spacing:-.07em}.publication-metric span{padding-bottom:7px;color:var(--muted);font-size:13px;font-weight:750}.publication-metric+.publication-metric{padding-left:28px;border-left:1px solid var(--line)}
.publication-visual{position:relative;min-height:450px;margin:0;overflow:hidden}.publication-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--paper),transparent 31%),linear-gradient(0deg,rgba(26,30,48,.55),transparent 42%)}.publication-visual>img{width:100%;height:100%;object-fit:cover}.publication-visual figcaption{position:absolute;z-index:2;left:20%;right:25px;bottom:27px;display:grid;color:#fff}.publication-visual figcaption span{font:750 10px var(--mono);letter-spacing:.14em}.publication-visual figcaption strong{font-size:28px}.publication-visual figcaption small{margin-top:3px;font:650 9px var(--mono);letter-spacing:.08em}
.publication-index{margin-bottom:46px}.output-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.output-card{min-height:230px;padding:27px}.output-card>span{font:800 12px var(--mono);color:var(--primary-dark)}.output-card h3{margin:30px 0 9px;font-size:20px}.output-card p{color:var(--muted);font-size:14px}.output-card b{display:inline-block;margin-top:17px;color:var(--muted);font-size:12px}
.patent-section{margin-bottom:46px}.patent-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.patent-card{position:relative;display:flex;min-height:390px;overflow:hidden;padding:28px 30px;flex-direction:column;transition:transform .24s,box-shadow .24s}.patent-card:after{content:"PATENT";position:absolute;right:-7px;bottom:-22px;color:color-mix(in srgb,var(--primary) 7%,transparent);font:850 64px/1 var(--mono);letter-spacing:-.08em}.patent-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover)}.patent-card header{display:flex;align-items:center;justify-content:space-between;gap:15px}.patent-card header span{padding:6px 10px;border-radius:999px;background:var(--primary-soft);color:var(--primary-dark);font-size:12px;font-weight:750}.patent-card header small{color:var(--muted);font:650 11px var(--mono)}.patent-card .patent-number{position:relative;z-index:1;margin:27px 0 9px;color:var(--primary-dark);font:800 15px/1.4 var(--mono);letter-spacing:.025em}.patent-card h3{position:relative;z-index:1;margin:0 0 12px;font:800 clamp(20px,1.65vw,25px)/1.45 var(--sans);letter-spacing:-.025em}.patent-card p{position:relative;z-index:1;margin:0 0 24px;color:var(--muted);font-size:14px;line-height:1.85}.patent-card a{position:relative;z-index:1;margin-top:auto;color:var(--primary-dark);font-size:13px;font-weight:750}
.research-agenda{display:grid;grid-template-columns:.8fr 1.2fr;gap:36px;padding:34px}.research-agenda h2{margin:5px 0 0;font-size:28px}.agenda-list{display:grid;gap:11px}.agenda-list article{display:flex;align-items:center;gap:14px;padding:14px;border-radius:15px;background:var(--page)}.agenda-list i{display:grid;place-items:center;width:43px;height:43px;border-radius:13px;background:var(--primary-soft);color:var(--primary-dark);font:800 13px var(--mono);font-style:normal}.agenda-list h3{margin:0;font-size:17px}.agenda-list p{margin:3px 0 0;color:var(--muted);font-size:13px}

/* Long-form article */
.reading-progress{position:fixed;z-index:120;left:0;top:0;width:100%;height:4px;transform:scaleX(0);transform-origin:left;background:linear-gradient(90deg,var(--primary),var(--cyan));box-shadow:0 1px 8px color-mix(in srgb,var(--primary) 45%,transparent)}
.article-shell{width:min(940px,calc(100% - 44px));margin:35px auto 78px;padding:35px 58px 60px;border-radius:26px;background:var(--paper)}
.article-back{display:inline-flex;margin-bottom:34px;color:var(--muted);font-size:14px;font-weight:700}.article-back:hover{color:var(--primary-dark)}
.article-header{position:relative;padding-bottom:33px;border-bottom:1px solid var(--line)}
.article-header h1{max-width:850px;margin:17px 0 15px;font:400 clamp(36px,5vw,58px)/1.22 var(--display);letter-spacing:-.025em}
.article-header .lead{max-width:780px;color:var(--muted);font-size:19px;line-height:1.8}
.article-meta{display:flex;flex-wrap:wrap;gap:9px;margin-top:23px}.article-meta span,.article-meta time{padding:7px 11px;border:1px solid var(--line);border-radius:999px;background:var(--page);color:var(--muted);font-size:12px;font-weight:700}
.source-link{display:inline-flex;margin-top:18px;color:var(--primary-dark);font-size:14px;font-weight:800}
.article-body{display:block!important;height:auto!important;max-height:none!important;overflow:visible!important;contain:none!important;padding-top:45px;color:var(--ink);font:18px/2 var(--serif);word-break:break-word;overflow-wrap:anywhere;text-align:justify}
.article-body>*{max-height:none!important}.article-body>p:first-child{margin-top:0}.article-body h1{margin:58px 0 19px;font:780 34px/1.4 var(--sans)}
.article-body h2{position:relative;scroll-margin-top:100px;margin:60px 0 21px;padding-left:18px;font:780 30px/1.4 var(--sans);letter-spacing:-.025em}.article-body h2:before{content:"";position:absolute;left:0;top:.24em;width:6px;height:1em;border-radius:4px;background:linear-gradient(var(--primary) 0 65%,var(--cyan) 65%)}
.article-body h3{scroll-margin-top:100px;margin:43px 0 15px;font:730 23px/1.45 var(--sans)}.article-body h4{margin-top:33px;font:720 19px var(--sans)}
.article-body p,.article-body li{color:color-mix(in srgb,var(--ink) 90%,var(--muted))}.article-body li+li{margin-top:7px}.article-body a{color:var(--primary-dark);text-decoration:underline;text-underline-offset:3px}
.article-body blockquote{margin:30px 0;padding:20px 24px;border-left:5px solid var(--primary);border-radius:0 14px 14px 0;background:color-mix(in srgb,var(--primary-soft) 65%,var(--paper));box-shadow:var(--inset)}
.article-body pre{max-width:100%;overflow:auto!important;padding:22px 23px;border:1px solid color-mix(in srgb,var(--primary) 17%,var(--line));border-left:4px solid color-mix(in srgb,var(--primary) 74%,var(--amber));border-radius:14px;background:linear-gradient(180deg,color-mix(in srgb,var(--paper) 86%,var(--primary-soft)),color-mix(in srgb,var(--page) 48%,var(--paper)));color:var(--ink);font:14px/1.85 var(--mono);white-space:pre;box-shadow:0 8px 20px rgba(67,45,51,.06),inset 0 1px color-mix(in srgb,#fff 78%,transparent)}.article-body pre code{color:inherit}
.article-body code:not(pre code){padding:3px 6px;border-radius:6px;background:var(--primary-soft);color:var(--primary-dark);font:13px var(--mono)}
.article-body figure{margin:36px 0}.article-body img{height:auto;margin:auto;border-radius:14px;box-shadow:var(--shadow)}.article-body figcaption{margin-top:9px;color:var(--muted);font:13px var(--sans);text-align:center}
.article-body table{display:block;width:100%;overflow-x:auto;margin:32px 0;border-collapse:collapse;font:14px/1.65 var(--sans)}.article-body th,.article-body td{padding:12px;border:1px solid var(--line);text-align:left}.article-body th{background:var(--primary-soft)}
.math-display{display:block;box-sizing:border-box;max-width:100%;margin:30px 0;padding:20px 14px;overflow-x:auto;border:1px solid var(--line);border-radius:15px;background:color-mix(in srgb,var(--primary-soft) 44%,var(--paper));text-align:center;box-shadow:var(--inset);overscroll-behavior-inline:contain}.math-inline{display:inline-block;max-width:100%;overflow-x:auto;vertical-align:middle;white-space:nowrap}
.article-body mjx-container{max-width:100%!important;color:var(--ink)}.article-body mjx-container[display="true"]{display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;margin:.45em 0!important;padding:4px 0;overflow-x:auto!important;overflow-y:hidden!important;text-align:center!important;-webkit-overflow-scrolling:touch}.article-body mjx-container[display="true"] mjx-math{max-width:none}
.article-end{display:flex;align-items:center;justify-content:space-between;margin-top:68px;padding-top:24px;border-top:1px solid var(--line)}.article-end p{color:var(--muted);font-size:13px}
.article-toc{position:fixed;right:max(18px,calc((100vw - 1340px)/2));top:110px;width:190px;max-height:calc(100vh - 160px);overflow:auto;padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--card);box-shadow:var(--shadow);backdrop-filter:blur(18px);font-size:12px}.article-toc strong{display:block;margin-bottom:9px}.article-toc a{display:block;padding:5px 0;color:var(--muted)}.article-toc a:hover{color:var(--primary-dark)}.article-toc a.toc-h3{padding-left:11px}

/* Footer, effects, and utilities */
.site-footer{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:28px;margin-bottom:35px;padding:27px 30px;border-radius:var(--radius)}.site-footer>div:first-child>p{margin:5px 0 0;color:var(--muted);font-size:13px}.footer-links{display:flex;flex-wrap:wrap;gap:15px}.footer-links a{color:var(--muted);font-size:13px;font-weight:650}.footer-links a:hover{color:var(--primary-dark)}.copyright{margin:0;color:var(--muted);font-size:12px}
.now-page{width:min(800px,calc(100% - 44px));margin:70px auto;padding:44px;border-radius:var(--radius)}
.now-page h1{font-size:46px}.now-page .lead{color:var(--muted);font-size:18px}
.reveal{opacity:1;transform:none;animation:reveal-in .45s ease both}@keyframes reveal-in{from{opacity:1;transform:translateY(10px)}to{opacity:1;transform:none}}
.back-to-top{position:fixed;z-index:65;right:22px;bottom:22px;display:grid;place-items:center;width:46px;height:46px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(145deg,var(--paper),var(--primary-soft));color:var(--primary-dark);font-size:21px;font-weight:850;box-shadow:var(--shadow),var(--inset);cursor:pointer;opacity:0;pointer-events:none;transform:translateY(12px);transition:.25s}.back-to-top.visible{opacity:1;pointer-events:auto;transform:none}.back-to-top:hover{transform:translateY(-3px)}
.sakura-layer{position:fixed;z-index:95;inset:0;pointer-events:none;overflow:hidden}.sakura-layer i{position:absolute;left:var(--petal-left);top:-28px;width:var(--petal-size,9px);height:auto;aspect-ratio:9/13;border-radius:70% 20% 70% 20%;background:linear-gradient(145deg,#ffc4ce,#ef7186 72%,#d94d67);opacity:var(--petal-opacity);animation:petal-fall var(--petal-duration) var(--petal-delay) linear infinite;filter:blur(var(--petal-blur,0)) drop-shadow(0 2px 2px rgba(196,66,87,.18))}@keyframes petal-fall{to{transform:translate(var(--petal-drift),110vh) rotate(720deg)}}
.cursor-star{position:fixed;z-index:151;left:0;top:0;color:var(--primary);font-size:15px;line-height:1;pointer-events:none;filter:drop-shadow(0 0 6px color-mix(in srgb,var(--primary) 55%,transparent));transform:translate(-50%,-50%) rotate(10deg);transition:color .2s,scale .14s;mix-blend-mode:multiply}.cursor-star.is-active{color:var(--cyan);scale:1.35}[data-theme="dark"] .cursor-star{mix-blend-mode:screen}
.cursor-trail{position:fixed;z-index:150;left:0;top:0;color:var(--trail-color,var(--primary));font-size:var(--trail-size,10px);line-height:1;pointer-events:none;transform:translate(-50%,-50%);animation:star-trail .72s ease-out forwards}@keyframes star-trail{to{opacity:0;transform:translate(calc(-50% + var(--trail-x)),calc(-50% + var(--trail-y))) rotate(150deg) scale(.25)}}
.click-ripple{position:fixed;z-index:149;left:0;top:0;width:18px;height:18px;border:2px solid var(--ripple-color,var(--primary));border-radius:50%;pointer-events:none;transform:translate(-50%,-50%) scale(.2);animation:click-ripple .62s ease-out forwards;box-shadow:0 0 12px color-mix(in srgb,var(--primary) 30%,transparent)}.click-ripple.secondary{animation-delay:.08s;opacity:.7}@keyframes click-ripple{to{opacity:0;transform:translate(-50%,-50%) scale(4)}}.click-star{position:fixed;z-index:152;left:0;top:0;color:var(--primary);font-size:19px;line-height:1;pointer-events:none;transform:translate(-50%,-50%);animation:click-star .55s ease-out forwards}@keyframes click-star{to{opacity:0;transform:translate(-50%,-50%) rotate(100deg) scale(1.9)}}

@media(max-width:1180px){.article-toc{display:none}.hero-grid{grid-template-columns:minmax(0,1.35fr) 340px}.content-grid{grid-template-columns:264px minmax(0,1fr)}.post-grid .post-card{min-height:475px}.experience-card{grid-template-columns:180px 150px minmax(0,1fr)}.team-card{grid-template-columns:180px minmax(0,1fr)}}

@media(max-width:940px){
  .topbar nav a{padding-inline:10px}
  .hero-grid{grid-template-columns:1fr}.profile-card{max-width:540px;width:100%;justify-self:center}
  .content-grid{grid-template-columns:1fr}.sidebar{position:static;grid-template-columns:1fr 1fr}.contact-widget{display:none}
  .featured-post{grid-template-columns:280px 1fr}.post-grid{grid-template-columns:1fr 1fr}
  .compact-head{grid-template-columns:1fr}.archive-item{grid-template-columns:235px 1fr}
  .about-layout{grid-template-columns:1fr}.about-aside{position:static;display:grid;grid-template-columns:150px 1fr;align-items:center;text-align:left}.about-avatar{grid-row:1/4;margin:0}.aside-links{justify-content:flex-start}.aside-affiliation{max-width:390px}
  .publication-hero{grid-template-columns:1fr}.publication-visual{min-height:380px;grid-row:1}.publication-visual:after{background:linear-gradient(0deg,var(--paper),transparent 35%),linear-gradient(0deg,rgba(26,30,48,.42),transparent 55%)}
  .research-hero{grid-template-columns:1fr}.research-hero-copy{background:linear-gradient(var(--paper),color-mix(in srgb,var(--paper) 92%,transparent))}.research-hero figure{min-height:360px}.research-hero figure:after{background:linear-gradient(0deg,var(--paper),transparent 42%),linear-gradient(0deg,rgba(26,30,48,.32),transparent 60%)}
  .research-detail-grid,.research-detail-grid.reverse{grid-template-columns:1fr}.reading-shelf{grid-template-columns:1fr 1fr}.reading-shelf>span{grid-column:1/-1}.method-note>div{grid-template-columns:1fr 1fr}
}

@media(max-width:700px){
  body{padding-bottom:80px;font-size:16px}
  .topbar{grid-template-columns:1fr auto;top:8px;width:calc(100% - 24px);min-height:58px;margin:8px auto 12px;padding:6px 10px 6px 15px}
  .topbar nav{position:fixed;z-index:90;left:10px;right:10px;bottom:8px;display:grid;grid-template-columns:repeat(5,1fr);gap:3px;padding:6px;border:1px solid var(--line);border-radius:18px;background:color-mix(in srgb,var(--paper) 94%,transparent);box-shadow:0 12px 35px rgba(24,28,48,.22),var(--inset);backdrop-filter:blur(20px)}
  .topbar nav a{padding:9px 2px;text-align:center;font-size:11px}.topbar nav a[aria-current="page"]:after{display:none}
  .top-actions>a{display:none}.theme-toggle{width:38px;height:38px}
  .site-shell,.wrap{width:calc(100% - 24px)}.wrap{padding-bottom:40px}
  .hero-grid{padding-top:12px}.hero-copy{min-height:490px;padding:43px 25px 120px}.hero-copy:before{right:-12px;top:24px;font-size:55px}.hero-copy h1{font-size:74px}.hero-role{font-size:18px}.hero-summary{font-size:16px}.manga-note{right:24px;bottom:26px}
  .profile-card{padding-inline:20px}.magazine-strip{grid-template-columns:52px 1fr;padding:14px 16px}.strip-index{width:50px;height:50px}.magazine-strip p{display:none}.magazine-strip strong{font-size:16px}
  .sidebar{grid-template-columns:1fr}.feed-heading h2{font-size:28px}
  .featured-post{grid-template-columns:1fr}.featured-post .post-cover{min-height:250px}.post-grid{grid-template-columns:1fr}.post-grid .post-card{grid-template-rows:200px 1fr;min-height:0}.post-copy{padding:22px}.post-copy h3,.post-grid .post-copy h3{font-size:21px}
  .research-grid{grid-template-columns:1fr}.research-card{grid-template-columns:65px 1fr;padding:21px}.research-orb{width:58px;height:58px}.publications-preview{align-items:flex-start;flex-direction:column;padding:25px}
  .site-footer{grid-template-columns:1fr;margin-bottom:90px;padding:23px}.footer-links{gap:12px}.copyright{justify-self:start}
  .page-head{padding:45px 0 27px}.compact-head h1{font-size:48px}.compact-head p{font-size:15px}
  .archive-tools{top:73px;align-items:stretch;flex-direction:column;border-radius:18px}.search-box{min-width:0}.filters{overflow-x:auto;flex-wrap:nowrap;padding-bottom:2px}.filter-btn{white-space:nowrap}
  .archive{gap:15px}.archive-item{grid-template-columns:125px 1fr;min-height:190px}.archive-cover{min-height:190px}.archive-copy{padding:18px}.archive-meta{gap:8px;font-size:10px}.archive-meta small{display:none}.archive-item h2{margin:13px 0 7px;font-size:18px}.archive-item p{display:-webkit-box;overflow:hidden;margin-bottom:12px;font-size:13px;-webkit-line-clamp:2;-webkit-box-orient:vertical}.archive-read{font-size:12px}
  .about-page .compact-head{margin:16px 0 18px;padding:29px 24px}.about-page .compact-head:before{right:14px;bottom:-13px;font-size:66px}.about-page .compact-head:after{right:18px;top:18px}.about-aside{display:block;text-align:center}.about-avatar{margin:0 auto 18px}.aside-links{justify-content:center}.aside-affiliation{margin-inline:auto}.about-main{padding:24px 18px}.about-main:before{left:8px}.profile-note{padding:17px 16px 16px 21px}.profile-note p:first-child{font-size:17px}.section-title-row{align-items:flex-end;padding:9px 10px}.section-title-row h2{font-size:22px}
  .experience-card{grid-template-columns:115px 1fr;gap:12px;min-height:0;padding:16px}.org-logo-box{width:105px;height:58px;margin:0;padding:7px}.org-logo-box.logo-round,.org-logo-box.logo-buaa,.org-logo-box.logo-lecheng{width:58px;height:58px;margin-left:24px}.internship-card .org-logo-box.logo-company{width:105px;height:58px;margin:0;padding:0}.internship-card .org-logo-box.logo-company img{max-width:101px;max-height:51px}.internship-card .logo-baidu img{max-height:43px}.experience-card time{grid-column:2}.experience-card>div{grid-column:1/-1}.team-card{grid-template-columns:115px minmax(0,1fr)}.team-card>div{grid-column:2}.experience-card h3{font-size:19px}
  .publication-status{padding:29px}.publication-metrics{gap:16px}.publication-metric strong{font-size:52px}.publication-metric+.publication-metric{padding-left:16px}.publication-visual{min-height:290px}.output-grid,.patent-grid{grid-template-columns:1fr}.research-agenda{grid-template-columns:1fr;padding:24px}
  .research-hero{min-height:0;margin-bottom:48px}.research-hero-copy{padding:35px 24px}.research-hero h1{font-size:48px}.research-hero figure{min-height:270px}.anime-sticker{right:18px;top:18px;width:72px;height:72px;border-width:4px;border-radius:23px}.research-detail-grid{gap:14px}.research-overview{padding:27px}.reading-shelf{grid-template-columns:1fr}.reading-shelf>span{grid-column:auto}.research-status{align-items:flex-start;flex-direction:column;gap:7px}.method-note{padding:25px}.method-note>div{grid-template-columns:1fr}
  .article-shell{width:calc(100% - 20px);margin:18px auto 90px;padding:27px 19px 42px;border-radius:20px}.article-header h1{font-size:36px}.article-header .lead{font-size:17px}.article-body{padding-top:35px;font-size:17px;line-height:1.95;text-align:left}.article-body h1{font-size:29px}.article-body h2{margin-top:48px;font-size:26px}.article-body h3{font-size:21px}.math-display{margin-inline:-3px;padding:16px 8px}.article-end{align-items:flex-start;flex-direction:column;gap:12px}
  .back-to-top{right:16px;bottom:90px}.cursor-star{display:none}
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;animation:none}.status-dot,.sakura-layer i,.cursor-trail,.click-ripple,.click-star{animation:none}.sakura-layer,.cursor-star,.cursor-trail,.click-ripple,.click-star{display:none}.post-cover img{transition:none}}
