
/* Final enhancement layer v3: layout, typography, bilingual polish */
:root{
  --v3-blue:#0b3c71; --v3-blue2:#155da5; --v3-cyan:#46a6df; --v3-ink:#12203a;
  --v3-muted:#607086; --v3-card:#fff; --v3-soft:#f4f8fd; --v3-line:rgba(11,60,113,.14);
  --v3-shadow:0 18px 46px rgba(18,48,84,.11); --v3-shadow2:0 10px 26px rgba(18,48,84,.08);
}
html{scroll-behavior:smooth;}
.content,.container,.gen{max-width:min(1180px,calc(100% - 56px))!important;}
.top{margin-top:24px!important;margin-bottom:18px!important;}
.title{margin-top:0!important;}
/* Homepage hero: move title away from the school logo and make text readable */
body.home-page .content>.top{margin:18px auto 14px!important;}
body.home-page .top .title{
  height:136px!important; min-height:136px!important; padding:0 clamp(30px,5vw,72px)!important;
  justify-content:flex-end!important; align-items:center!important;
  background-image:linear-gradient(90deg,rgba(4,25,54,.30),rgba(4,25,54,.65)),url(../img/sdbuilding.png)!important;
  background-position:center center!important; position:relative!important;
}
body.home-page .top .title::before{
  content:""; position:absolute; left:0; top:0; bottom:0; width:38%;
  background:linear-gradient(90deg,rgba(255,255,255,.10),rgba(255,255,255,0)); pointer-events:none;
}
body.home-page .top .title .word{
  position:relative; z-index:2; margin-left:auto!important; max-width:56%!important; padding:14px 22px!important;
  background:rgba(5,28,58,.52)!important; border:1px solid rgba(255,255,255,.22)!important;
  border-radius:18px!important; backdrop-filter:blur(4px); text-align:right!important; font-size:clamp(28px,3.1vw,42px)!important;
}
body.home-page .swipers{height:112px!important;margin-bottom:18px!important;}
body.home-page .swipers .swiper img{height:112px!important;width:168px!important;}
body.home-page .content .img-and-intr{margin-top:14px!important;margin-bottom:18px!important;grid-template-columns:156px minmax(0,1fr)!important;padding:20px!important;}
body.home-page .content .img-and-intr .my-img{width:156px!important;height:198px!important;}
body.home-page .news::before{content:none!important;display:none!important;}
.news-heading{font-size:24px;font-weight:900;color:var(--v3-blue);margin-bottom:14px;display:flex;align-items:center;gap:10px;}
.news-heading::before{content:"";width:8px;height:24px;border-radius:999px;background:linear-gradient(180deg,var(--v3-blue2),var(--v3-cyan));display:inline-block;}
.news-badge{display:inline-flex;align-items:center;justify-content:center;min-width:42px;padding:2px 8px;border-radius:999px;background:#e8f3ff;color:var(--v3-blue);font-size:12px;font-weight:800;border:1px solid rgba(21,93,165,.16);margin-right:6px;}
body.home-page .news li{border-left:0!important;border-radius:14px!important;background:#f8fbff!important;border:1px solid var(--v3-line)!important;padding:12px 14px!important;}
body.home-page .news .new{gap:8px!important;}
.highlight,.publication-tag{color:#b42318!important;background:#fff0ee;border:1px solid rgba(180,35,24,.12);border-radius:999px;padding:1px 6px;font-weight:800;}
/* Biography */
body.biography-page .content>.info{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;max-width:min(1040px,calc(100% - 56px))!important;}
.bio-profile{display:grid;gap:18px;}
.bio-lead{font-size:18px;line-height:1.82;background:linear-gradient(135deg,#fff,#f6fbff);border:1px solid var(--v3-line);border-radius:24px;box-shadow:var(--v3-shadow2);padding:26px 30px;color:var(--v3-ink);}
.bio-keywords{display:flex;flex-wrap:wrap;gap:10px;}
.bio-keywords .tag{display:inline-flex;padding:7px 12px;border-radius:999px;background:#eaf5ff;border:1px solid rgba(70,166,223,.25);color:var(--v3-blue);font-weight:800;font-size:14px;}
.bio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
.bio-card{background:#fff;border:1px solid var(--v3-line);border-radius:22px;box-shadow:var(--v3-shadow2);padding:24px;}
.bio-card.accent-card{background:linear-gradient(135deg,#0b3c71,#155da5);color:#fff;}
.bio-card.accent-card h2,.bio-card.accent-card strong{color:#fff!important;}
.bio-card h2{margin:0 0 10px!important;color:var(--v3-blue);font-size:22px;font-weight:900;}
.bio-card p{margin:0!important;line-height:1.78;font-size:16px;color:inherit;}
.bio-card strong{color:var(--v3-blue);font-weight:900;}
/* Publications */
.publication-overview,.project-overview{max-width:min(1040px,calc(100% - 56px));margin:0 auto 20px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;}
.publication-overview>div,.project-overview>div{background:linear-gradient(135deg,#fff,#f7fbff);border:1px solid var(--v3-line);border-radius:18px;box-shadow:var(--v3-shadow2);padding:18px 20px;display:flex;flex-direction:column;gap:4px;}
.publication-overview strong,.project-overview strong{font-size:28px;color:var(--v3-blue);font-weight:950;line-height:1;}
.publication-overview span,.project-overview span{font-size:14px;color:var(--v3-muted);font-weight:650;}
body.publications-page .papers,body.publications-page .patents,body.publications-page .software-copyrights{max-width:min(1100px,calc(100% - 56px));margin:0 auto 26px!important;background:#fff;border:1px solid var(--v3-line);border-radius:24px;box-shadow:var(--v3-shadow2);padding:22px 24px!important;}
body.publications-page .papers>.title,body.publications-page .patents>.title,body.publications-page .software-copyrights>.title{font-size:26px!important;font-weight:950!important;color:var(--v3-blue)!important;border-bottom:1px solid var(--v3-line);padding-bottom:12px;margin-bottom:16px!important;}
body.publications-page .info{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;}
body.publications-page li{background:#f8fbff!important;border:1px solid rgba(11,60,113,.10)!important;border-left:4px solid rgba(70,166,223,.55)!important;border-radius:0 14px 14px 0!important;margin-bottom:9px!important;line-height:1.58!important;}
/* Honors */
body.honor-and-awards-page .content>.info{max-width:min(1050px,calc(100% - 56px))!important;background:#fff!important;border-radius:24px!important;padding:26px!important;}
.award-lead{margin-bottom:18px;padding:18px 20px;border-radius:18px;background:linear-gradient(135deg,#edf7ff,#fff);border:1px solid var(--v3-line);color:var(--v3-blue);font-size:18px;font-weight:800;}
body.honor-and-awards-page .info ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0!important;padding:0!important;}
body.honor-and-awards-page .info li{list-style:none!important;background:#f8fbff!important;border:1px solid var(--v3-line)!important;border-radius:16px!important;padding:14px 16px!important;margin:0!important;display:flex;flex-direction:column;gap:6px;position:relative;overflow:hidden;}
body.honor-and-awards-page .info li::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:linear-gradient(180deg,var(--v3-blue2),var(--v3-cyan));}
body.honor-and-awards-page .info li em{font-style:normal!important;color:var(--v3-ink)!important;font-weight:850;font-size:15.5px;line-height:1.45;}
body.honor-and-awards-page .info li>span{color:var(--v3-muted);font-size:13.5px;font-weight:650;}
/* Research area */
body.research-area-page .container{max-width:min(1160px,calc(100% - 56px))!important;margin:0 auto!important;}
.research-intro-hero{margin:20px 0 22px;padding:28px 32px;border-radius:24px;background:linear-gradient(135deg,#0b3c71,#1b75bb);box-shadow:var(--v3-shadow);color:#fff;}
.research-intro-hero h1{margin:0 0 8px!important;font-size:34px!important;font-weight:950;}
.research-intro-hero p{margin:0!important;max-width:860px;color:rgba(255,255,255,.86);font-size:16px;line-height:1.65;}
body.research-area-page .research-area{display:grid!important;grid-template-columns:1fr!important;gap:20px!important;width:100%!important;}
body.research-area-page .project{display:grid!important;grid-template-columns:320px minmax(0,1fr)!important;gap:24px!important;align-items:stretch!important;background:#fff;border:1px solid var(--v3-line);border-radius:24px;box-shadow:var(--v3-shadow2);padding:18px!important;margin:0!important;}
body.research-area-page .project img{width:100%!important;height:220px!important;object-fit:cover!important;border-radius:18px!important;margin:0!important;box-shadow:none!important;}
body.research-area-page .project.intro-project img{height:260px!important;object-fit:contain!important;background:#f5f8fc;}
body.research-area-page .project .description{padding:4px 4px 4px 0!important;}
body.research-area-page .project h3{margin:0 0 10px!important;font-size:24px!important;color:var(--v3-blue)!important;font-weight:950;}
body.research-area-page .project p{margin:0!important;line-height:1.72!important;color:var(--v3-ink);}
body.research-area-page .separator{display:none!important;}
/* Research group students */
body.research-group-page .container{background:#fff;border:1px solid var(--v3-line);border-radius:24px;box-shadow:var(--v3-shadow2);padding:24px!important;margin:22px auto!important;}
body.research-group-page .container h1{color:var(--v3-blue);font-weight:950;margin:0 0 18px!important;font-size:30px!important;}
body.research-group-page .members,.graduate-group{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))!important;gap:18px!important;}
body.research-group-page .member,.graduate{background:#f8fbff!important;border:1px solid rgba(11,60,113,.12)!important;border-radius:18px!important;padding:14px!important;box-shadow:0 6px 16px rgba(18,48,84,.05);transition:transform .18s ease,box-shadow .18s ease;}
body.research-group-page .member:hover,.graduate:hover{transform:translateY(-3px);box-shadow:var(--v3-shadow2);}
body.research-group-page .member img,.graduate img{width:100%!important;height:180px!important;object-fit:cover!important;border-radius:14px!important;margin:0 0 10px!important;}
.graduate h3,body.research-group-page .member h3{font-size:16px!important;line-height:1.3!important;color:var(--v3-blue)!important;font-weight:900!important;text-align:center!important;margin:6px 0!important;}
.graduate p{font-size:13px!important;line-height:1.5!important;color:var(--v3-muted)!important;text-align:left!important;}
.graduate-level h2{font-size:22px!important;color:var(--v3-blue2);font-weight:900;margin:22px 0 12px!important;padding-bottom:8px;border-bottom:1px solid var(--v3-line);}
/* Projects */
body.projects-page .fundings{max-width:min(1100px,calc(100% - 56px));margin:0 auto!important;background:#fff;border:1px solid var(--v3-line);border-radius:24px;box-shadow:var(--v3-shadow2);padding:24px!important;}
body.projects-page .fundings>.title{font-size:28px!important;color:var(--v3-blue)!important;font-weight:950!important;border-bottom:1px solid var(--v3-line);padding-bottom:12px;margin-bottom:16px!important;}
body.projects-page .fundings .info{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;}
body.projects-page .fundings ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0!important;padding:0!important;}
body.projects-page .fundings li{list-style:none!important;background:#f8fbff!important;border:1px solid var(--v3-line)!important;border-radius:16px!important;padding:14px 16px!important;margin:0!important;line-height:1.58!important;position:relative;}
body.projects-page .fundings li::before{content:"Project";display:inline-flex;margin-right:8px;margin-bottom:6px;padding:2px 8px;border-radius:999px;background:#e8f3ff;color:var(--v3-blue);font-size:12px;font-weight:900;}
html[lang="zh-CN"] body.projects-page .fundings li::before{content:"项目";}
/* Research life */
body.research-life-page .container{max-width:min(1120px,calc(100% - 56px))!important;margin:0 auto!important;}
body.research-life-page .container>h1{color:var(--v3-blue);font-size:34px!important;font-weight:950;margin:24px 0 16px!important;}
.research-life-container{width:100%!important;max-width:100%!important;background:#fff;border:1px solid var(--v3-line);border-radius:24px;box-shadow:var(--v3-shadow2);padding:24px!important;}
.life-text-card h2{color:var(--v3-blue);font-size:26px!important;margin:0 0 10px!important;font-weight:950;}
.life-text-card p{font-size:16px;line-height:1.78;color:var(--v3-ink);margin:0 0 16px;}
.life-points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;}
.life-points>div{background:#f8fbff;border:1px solid var(--v3-line);border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:6px;}
.life-points strong{color:var(--v3-blue);font-size:17px;}
.life-points span:not(strong span){color:var(--v3-muted);line-height:1.56;}
body.research-life-page .swipers{width:100%!important;height:240px!important;margin:24px 0 0!important;border-radius:22px!important;box-shadow:none!important;}
body.research-life-page .swipers .swiper-item img{height:240px!important;width:320px!important;object-fit:cover!important;}
/* Teaching */
body.teaching-page .container{grid-template-columns:repeat(4,minmax(0,1fr))!important;max-width:min(1180px,calc(100% - 56px))!important;}
body.teaching-page .container .info{min-height:100%;}
body.teaching-page .container .info>div>span:first-child,body.teaching-page .container .info>div>span:nth-child(2){font-size:18px!important;display:block!important;}
body.teaching-page .container .info img{height:132px!important;}
.teaching-project-lead{max-width:min(1040px,calc(100% - 56px));margin:-24px auto 18px;background:linear-gradient(135deg,#fff,#f6fbff);border:1px solid var(--v3-line);border-radius:18px;box-shadow:var(--v3-shadow2);padding:18px 22px;color:var(--v3-blue);font-weight:800;line-height:1.6;text-align:center;}
body.teaching-page>.swipers{max-width:min(1100px,calc(100% - 56px))!important;width:min(1100px,calc(100% - 56px))!important;height:280px!important;margin:0 auto 30px!important;background:#fff;border:1px solid var(--v3-line);border-radius:24px;box-shadow:var(--v3-shadow2);padding:14px!important;}
body.teaching-page>.swipers .swiper-item{width:260px!important;height:250px!important;margin-right:14px!important;border-radius:18px!important;overflow:hidden!important;background:#f8fbff!important;position:relative!important;}
body.teaching-page>.swipers .swiper-item img{width:260px!important;height:250px!important;object-fit:cover!important;}
body.teaching-page>.swipers .hover-text{position:absolute!important;left:0;right:0;bottom:0;background:linear-gradient(180deg,transparent,rgba(0,0,0,.76));color:#fff!important;padding:50px 14px 14px!important;font-size:14px!important;line-height:1.35!important;}
/* Services */
body.services-page .gen{grid-template-columns:1fr 1fr 1fr!important;}
body.services-page .gen>.reviewer{grid-row:auto!important;}
body.services-page .gen .columns{grid-template-columns:1fr!important;}
/* Recruiting */
body.recruiting-page .content>.info{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;max-width:min(1100px,calc(100% - 56px))!important;}
.recruit-hero-card{background:linear-gradient(135deg,#0b3c71,#166ab3);color:#fff;border-radius:24px;box-shadow:var(--v3-shadow);padding:30px 34px;margin-bottom:18px;}
.recruit-hero-card h2{font-size:32px!important;font-weight:950!important;margin:0 0 8px!important;color:#fff!important;}
.recruit-hero-card p{margin:0!important;max-width:820px;color:rgba(255,255,255,.86);line-height:1.72;font-size:17px;}
.recruit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
.recruit-card,.contact-note{background:#fff;border:1px solid var(--v3-line);border-radius:20px;box-shadow:var(--v3-shadow2);padding:22px;}
.recruit-card h3{margin:0 0 12px!important;color:var(--v3-blue);font-size:21px!important;font-weight:950;}
.recruit-card ul{padding:0!important;margin:0!important;display:grid;gap:10px;}
.recruit-card li{list-style:none!important;margin:0!important;padding:10px 12px!important;border-radius:12px!important;background:#f8fbff!important;border-left:4px solid rgba(70,166,223,.56)!important;line-height:1.45!important;}
.contact-note{margin-top:16px;color:var(--v3-blue);font-weight:800;text-align:center;line-height:1.65;}
@media(max-width:1100px){body.teaching-page .container{grid-template-columns:repeat(2,minmax(0,1fr))!important;}body.services-page .gen{grid-template-columns:1fr!important;}.bio-grid,.publication-overview,.project-overview,body.projects-page .fundings ul,.life-points,.recruit-grid{grid-template-columns:1fr!important;}body.research-area-page .project{grid-template-columns:1fr!important;}body.honor-and-awards-page .info ul{grid-template-columns:1fr!important;}}
@media(max-width:700px){.content,.container,.gen{max-width:min(100% - 24px,760px)!important;}body.home-page .top .title{height:110px!important;min-height:110px!important;justify-content:center!important;padding:0 14px!important;}body.home-page .top .title .word{max-width:92%!important;text-align:center!important;font-size:24px!important;padding:12px 16px!important;}body.home-page .content .img-and-intr{grid-template-columns:1fr!important;}body.home-page .content .img-and-intr .my-img{justify-self:center!important;}body.teaching-page .container{grid-template-columns:1fr!important;}body.research-area-page .project img{height:190px!important;}.publication-overview,.project-overview{max-width:calc(100% - 24px);}body.publications-page .papers,body.publications-page .patents,body.publications-page .software-copyrights,body.projects-page .fundings{max-width:calc(100% - 24px);padding:18px!important;}}
