@font-face{font-family:'JetBrains Mono';src:url('assets/fonts/jetbrains-mono.woff2') format('woff2');font-display:swap}
:root{--bg:#050505;--panel:#171319;--pink:#ef7ab4;--bright:#ef4cac;--text:#f4eff4;--muted:#b0a4b2;--subtle:#8c7f91;--line:#ffffff16;--sidebar:196px;--mono:'JetBrains Mono',monospace;--sans:'Microsoft YaHei','PingFang SC','Noto Sans SC',Arial,sans-serif;color-scheme:dark;font-family:var(--sans);background:var(--bg);color:var(--text)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{min-width:320px;min-height:100vh;margin:0;overflow-x:clip;isolation:isolate;font-size:14px;line-height:1.7;-webkit-font-smoothing:antialiased}body::before{content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 9% 32%,#cf2e9221,transparent 38%),radial-gradient(ellipse at 98% 7%,#e955a31c,transparent 37%),radial-gradient(ellipse at 70% 105%,#a9368b15,transparent 38%);animation:breathe 8s ease-in-out infinite alternate}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,label,summary{-webkit-tap-highlight-color:transparent}a,button,label{touch-action:manipulation}img{display:block;max-width:100%}svg{flex-shrink:0}h1,h2,h3,p,figure{margin:0}h1,h2,h3{overflow-wrap:anywhere}a:focus-visible,button:focus-visible,summary:focus-visible,label:has(input:focus-visible){outline:2px solid var(--pink);outline-offset:4px}::selection{color:#160b13;background:#f4a1c9}
/* Persistent navigation. */
.sidebar{position:fixed;inset:0 auto 0 0;z-index:70;width:var(--sidebar);padding:34px 20px 24px;display:flex;flex-direction:column;border-right:1px solid var(--line);background:#100d12f5}.brand{display:flex;align-items:center;gap:10px;min-height:42px;padding:0 11px;font:700 17px/1.4 var(--mono);letter-spacing:-.03em}.brand-mark{display:grid;grid-template-columns:repeat(2,5px);gap:3px;transform:rotate(-8deg)}.brand-mark i{width:5px;height:5px;background:var(--bright)}.brand small{display:block;color:var(--subtle);font-size:10px;font-weight:400;letter-spacing:.05em}.side-nav{display:flex;flex-direction:column;gap:9px;margin-top:47px}.side-nav a{display:flex;align-items:center;gap:13px;min-width:0;min-height:62px;padding:12px 15px;border:1px solid transparent;border-radius:12px;color:#b8acbd;transition:background .2s,color .2s,border-color .2s}.side-nav a:hover{color:#f6d5e8;background:#ffffff05}.side-nav a.active{color:var(--pink);background:#ef5da512;border-color:#ef5da51c}.nav-icon{display:grid;place-items:center;width:21px;height:24px;flex-shrink:0;font-size:20px;line-height:1}.nav-icon svg{width:21px;height:21px}.nav-words{min-width:0}.nav-words strong{display:block;font-size:14px;line-height:1.5;font-weight:600;letter-spacing:.06em}.nav-words small{display:block;margin-top:3px;color:var(--subtle);font:8px/1.4 var(--mono);letter-spacing:.02em}.side-nav a.active small{color:#b78ba7}.side-bottom{margin-top:auto;padding:30px 12px 0;color:var(--subtle);font-size:10px;line-height:2}.side-bottom strong{color:#c4b2c9;font-weight:500}.side-bottom a:hover{color:var(--pink)}
.topbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:76px;margin-left:var(--sidebar);padding:20px 40px;background:#100c12e8;border-bottom:1px solid #ffffff0b;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.breadcrumb{color:#d3c5d7;font-size:12px;letter-spacing:.03em}.breadcrumb span,.breadcrumb small{color:var(--subtle)}.breadcrumb a:hover{color:var(--pink)}.top-links{display:flex;align-items:center;gap:25px;color:#b4a5bb;font-size:11px}.top-links a{transition:color .2s}.top-links a:hover{color:var(--pink)}
.page-content{width:calc(100% - var(--sidebar));max-width:1320px;margin-left:calc(var(--sidebar) + max(0px,(100vw - var(--sidebar) - 1320px)/2));padding:32px 40px 58px;min-width:0}.page-footer{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px 24px;width:calc(100% - var(--sidebar));max-width:1320px;margin-left:calc(var(--sidebar) + max(0px,(100vw - var(--sidebar) - 1320px)/2));padding:25px 40px 34px;border-top:1px solid var(--line);color:var(--subtle);font-size:10px;letter-spacing:.04em}.page-footer a:hover{color:var(--pink)}.page-footer b,.page-footer strong{font-weight:400;color:#bda8c6}
/* The personal introduction leads the page. */
.profile-hero{position:relative;overflow:hidden;min-height:512px;padding:46px 48px 36px;border:1px solid #e085b725;border-radius:24px;background:radial-gradient(ellipse at 90% 40%,#66334d30,transparent 65%),linear-gradient(115deg,#1c131d,#100d13 70%)}.hero-copy{position:relative;z-index:3;max-width:58%}.eyebrow{color:#c9a1ba;font:10px/1.8 var(--mono);letter-spacing:.13em}.eyebrow .pink,.pink{color:var(--pink)}.name-title{margin:12px 0 6px;font-size:clamp(60px,6vw,88px);line-height:1.25;font-weight:800;letter-spacing:.045em;color:#fff4fa}.major-title{margin-bottom:20px;color:#e2b9d1;font-size:23px;font-weight:400;line-height:1.6;letter-spacing:.16em}.hero-intro{max-width:420px;color:#bfaec7;font-size:13px;line-height:2}.hero-tags{display:flex;flex-wrap:wrap;gap:7px;margin:21px 0 0}.pill{display:inline-flex;align-items:center;padding:4px 11px;border:1px solid #d29dbc28;border-radius:30px;color:#d9bbd2;font-size:10px;line-height:1.7;background:#ef7ab406}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:11px;margin-top:25px}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:42px;padding:10px 20px;border:1px solid #b995b43d;border-radius:24px;font-size:12px;font-weight:500;line-height:1.6;transition:border-color .2s,background .2s,color .2s,transform .2s}.button.primary{color:#250e1b;background:#ef84b8;border-color:#ef84b8}.button.primary:hover{background:#ffa4d1;border-color:#ffa4d1;transform:translateY(-1px)}.button.ghost{color:#e2c6d9;background:#100a1130}.button.ghost:hover{color:#ffe4f3;border-color:#e489bb94;background:#ef7ab410}.hero-floral{position:absolute;top:-7%;right:-1%;z-index:1;width:48%;height:113%;pointer-events:none}.hero-floral>img{width:100%;height:100%;object-fit:contain;opacity:.94;filter:drop-shadow(0 0 20px #ef4cac14)}.flower-frame{position:absolute;z-index:2;top:21%;right:13%;width:59%;height:31%;border:1px solid #eec9e769}.flower-frame i{position:absolute;width:6px;height:6px;border:1px solid #eec9e7a1;background:#1a101bcc}.flower-frame i:nth-child(1){left:-3px;top:-3px}.flower-frame i:nth-child(2){right:-3px;top:-3px}.flower-frame i:nth-child(3){left:-3px;bottom:-3px}.flower-frame i:nth-child(4){right:-3px;bottom:-3px}.hero-stats{position:relative;z-index:3;display:flex;flex-wrap:wrap;gap:34px;width:fit-content;max-width:100%;margin-top:33px;padding-top:22px;border-top:1px solid #e9a8cc25}.stat strong{display:block;font:500 24px/1.3 var(--mono);letter-spacing:-.06em;color:#e9c2d9}.stat span{display:block;margin-top:6px;color:#9d8ba6;font-size:10px;line-height:1.6}
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:40px 0 20px}.section-heading h2{font-size:24px;font-weight:600;letter-spacing:.015em;line-height:1.5}.section-heading h2 small{margin-left:11px;color:var(--subtle);font:9px var(--mono);letter-spacing:.06em}.section-heading>small,.section-heading>div>small{display:block;color:#b78ca7;font:9px/1.8 var(--mono);letter-spacing:.1em;margin-bottom:4px}.section-heading p{color:var(--muted);font-size:12px;line-height:1.8}.text-link{display:inline-flex;align-items:center;gap:9px;color:#d89dbd;font-size:12px;line-height:1.8;white-space:nowrap}.text-link:hover{color:#ffd5eb}.page-heading,.page-intro{margin:12px 0 32px}.page-heading h1,.page-intro h1{font-size:38px;line-height:1.5;font-weight:600;letter-spacing:-.02em}.page-heading p,.page-intro p{max-width:660px;margin-top:10px;color:var(--muted);font-size:14px;line-height:1.9}
.honor-preview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.honor-preview-card{display:flex;flex-direction:column;min-width:0;padding:22px 24px;border:1px solid #c99eb325;border-radius:16px;background:linear-gradient(140deg,#241822,#171319);transition:border-color .25s,background .25s}a.honor-preview-card:hover{border-color:#ef7ab466;background:#251a25}.level-label{color:#d699ba;font-size:10px;line-height:1.8;letter-spacing:.06em}.honor-preview-card h3{margin:15px 0 8px;font-size:15px;line-height:1.7;font-weight:600}.honor-preview-card p{color:#ba9db4;font-size:12px;line-height:1.8}.honor-preview-card small{display:block;margin-top:18px;color:#8e7a95;font:9px/1.6 var(--mono)}
/* Natural image ratios are preserved in every waterfall card. */
.filter-bar{position:sticky;top:76px;z-index:35;display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin:25px 0 24px;padding:14px 0;border-bottom:1px solid var(--line);background:#100c12f2;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.filter-bar label,.award-filter label{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:37px;padding:7px 15px;border:1px solid transparent;border-radius:24px;color:#b4a5ba;font-size:12px;line-height:1.7;cursor:pointer;transition:color .2s,background .2s,border-color .2s}.filter-bar label:hover,.award-filter label:hover{color:#ebc5df;background:#ffffff06}.filter-bar label:has(input:checked),.award-filter label:has(input:checked){color:#f3a6ce;background:#ef7ab415;border-color:#ef7ab42e}.filter-bar input,.award-filter input{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.filter-label{display:inline-flex;align-items:center;gap:5px}.filter-label small,.filter-bar sup{color:#93768b;font:9px var(--mono)}.masonry{column-count:4;column-gap:18px;min-width:0}.note-card{display:inline-block;width:100%;min-width:0;margin:0 0 20px;overflow:hidden;break-inside:avoid;page-break-inside:avoid;border:1px solid #ffffff13;border-radius:15px;vertical-align:top;background:var(--panel);transition:border-color .25s,box-shadow .25s,transform .25s}.note-card:hover{transform:translateY(-2px);border-color:#ef7ab449;box-shadow:0 9px 28px #00000021}.note-image{position:relative;display:block;width:100%;height:auto!important;min-height:0;aspect-ratio:auto;background:#201b23}.note-image>a{display:block;width:100%}.note-image img,img.note-image{display:block;width:100%;height:auto!important;max-height:none;aspect-ratio:auto;object-fit:contain}.note-body{padding:12px 13px 13px}.note-body h3{font-size:14px;font-weight:600;line-height:1.7;white-space:normal;overflow-wrap:anywhere}.note-body>p{margin-top:7px;color:#9e8fa7;font-size:11px;line-height:1.85;overflow-wrap:anywhere}.card-meta{display:flex;align-items:center;flex-wrap:wrap;gap:5px 10px;margin:8px 0 0;color:#9f80a4;font-size:10px;line-height:1.6}.card-meta span{min-width:0}.author-line{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:11px;color:#b09cb7;font-size:10px;line-height:1.6}.author-line strong{font-size:inherit;font-weight:400}.avatar{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:22px;height:22px;overflow:hidden;border:1px solid #ffffff1f;border-radius:50%;background:#261c2b}.avatar img,img.avatar{width:22px;height:22px;object-fit:cover;object-position:50% 30%}.image-count,.new-badge,.media-badge{position:absolute;z-index:3;display:inline-flex;align-items:center;gap:4px;padding:4px 7px;border:1px solid #ffffff23;border-radius:7px;background:#0d0810b8;color:#f6eaf3;font:9px/1.5 var(--mono);backdrop-filter:blur(8px)}.image-count{top:10px;right:10px}.new-badge{top:10px;left:10px;color:#2e1221;border-color:#ffb4d94d;background:#f5a6cb}.media-badge{bottom:10px;left:10px}
/* Certificates and factual award records. */
.honors-intro{max-width:800px;margin:8px 0 30px}.honors-intro h1,.honors-intro h2{margin:8px 0 10px;font-size:36px;font-weight:600;line-height:1.5}.honors-intro p{color:var(--muted);font-size:14px;line-height:1.9}.award-filter{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-bottom:26px;padding:0 0 17px;border-bottom:1px solid var(--line)}.awards-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:24px 20px}.award-card{min-width:0;overflow:hidden;border:1px solid #d9b5cb21;border-radius:16px;background:var(--panel);transition:border-color .2s,transform .2s}.award-card:hover{border-color:#e993bd61;transform:translateY(-2px)}.award-cover{display:block;width:100%;height:auto;overflow:hidden;border-bottom:1px solid var(--line);background:#e9e2e9}.award-cover img{display:block;width:100%;height:auto;max-height:none;object-fit:contain}.award-body{padding:20px}.award-type{color:#c18fac;font-size:10px;line-height:1.8;letter-spacing:.03em}.award-body h3{margin:9px 0;font-size:16px;font-weight:600;line-height:1.7}.award-body p{color:#a994ae;font-size:12px;line-height:1.8}.award-result{display:block;margin-top:14px;color:#f3abcf;font-size:15px;font-weight:500;line-height:1.7}.award-date{display:block;margin-top:14px;color:#8d7c97;font:10px/1.6 var(--mono)}.honors-table{margin-top:35px;border:1px solid var(--line);border-radius:15px;background:#171219c4}.honors-table summary{padding:20px 24px;color:#d2bccd;font-size:14px;cursor:pointer}.honors-table summary::marker{color:var(--pink)}.honors-table[open] summary{border-bottom:1px solid var(--line)}.honor-record{display:grid;grid-template-columns:100px minmax(0,1fr) 165px;align-items:start;gap:22px;margin:0 24px;padding:18px 0;border-bottom:1px solid var(--line);font-size:12px;line-height:1.8}.honor-record:last-child{border-bottom:0}.honor-record>:first-child{color:#9c839e;font:10px/2.15 var(--mono)}.honor-record>:last-child{color:#d59cbd;text-align:right}
.experience-list{margin-top:20px}.experience-list article{display:grid;grid-template-columns:135px minmax(0,1fr);gap:28px;padding:26px 0;border-bottom:1px solid var(--line)}.exp-date{color:#bb90b0;font:11px/2 var(--mono)}.exp-copy h3{margin-bottom:8px;font-size:19px;font-weight:500;line-height:1.7}.exp-copy p{max-width:760px;color:#b3a3bd;font-size:13px;line-height:2}.role-label{display:inline-flex;margin:0 0 8px;color:#d49bbb;font-size:11px;line-height:1.8}.project-spotlights{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:30px 0}.project-spotlights article{min-width:0;padding:25px;border:1px solid var(--line);border-radius:16px;background:#1a141dcc}.project-spotlights h3{margin:9px 0;font-size:17px;font-weight:500;line-height:1.7}.project-spotlights p{color:#a995b2;font-size:12px;line-height:1.9}
.about-grid{display:grid;grid-template-columns:minmax(0,285px) minmax(0,1fr);align-items:start;gap:48px;margin:12px 0 35px}.about-photo{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:19px;background:#211a25}.about-photo img{width:100%;height:auto;object-fit:contain}.about-copy{min-width:0;padding-top:5px}.about-copy h1,.about-copy h2{margin:10px 0 12px;font-size:36px;font-weight:600;line-height:1.5}.about-copy .english-name{color:#bc8cac;font:10px/1.8 var(--mono);letter-spacing:.08em}.about-copy>p,.about-copy .intro{margin:18px 0;color:#b8a7c0;font-size:13px;line-height:2.1}.skills{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0}.tag{display:inline-flex;align-items:center;min-height:31px;padding:5px 10px;border:1px solid #b58fb92c;border-radius:8px;color:#c5adcb;font-size:10px;line-height:1.7}.facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:26px 0;padding:21px 0;border-block:1px solid var(--line)}.fact b,.fact strong,.facts>div>strong{display:block;color:#e4bfd8;font:400 27px/1.4 var(--mono);letter-spacing:-.05em}.fact span,.facts>div>span{display:block;margin-top:5px;color:#9f8aa9;font-size:11px;line-height:1.7}
.contact-panel{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);align-items:center;gap:45px;min-height:500px;overflow:hidden;padding:55px 45px;border:1px solid #d4a3c12a;border-radius:24px;background:#171019}.contact-floral{position:absolute;inset:0;z-index:-1;width:100%;height:100%;object-fit:cover;opacity:.2;mask-image:linear-gradient(90deg,#000 30%,transparent 90%)}.contact-main,.contact-list{position:relative;min-width:0}.contact-main h1,.contact-main h2{margin:16px 0 22px;font-size:42px;line-height:1.5;font-weight:600;letter-spacing:-.025em}.contact-main h2 em{color:var(--pink);font-family:Georgia,serif;font-weight:400}.contact-main>p{margin-bottom:25px;color:#c1abc8;font-size:13px;line-height:2}.contact-list{border-top:1px solid #d4a3c12d}.contact-list>a,.contact-list .contact-item{display:block;padding:23px 0;border-bottom:1px solid #d4a3c12d}.contact-list small{display:block;margin-bottom:8px;color:#a38cab;font:9px/1.8 var(--mono);letter-spacing:.04em}.contact-list strong{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:17px;font-weight:400;line-height:1.6;overflow-wrap:anywhere}.contact-list strong span{color:var(--pink)}.contact-list a:hover strong{color:#f4b4d5}
/* Detail images remain complete, with a separate reading column. */
.note-detail,.certificate-detail{display:grid;grid-template-columns:minmax(0,1fr) 350px;align-items:start;gap:28px;margin:7px 0 30px}.detail-media{min-width:0}.gallery{min-width:0}.gallery-stage{position:relative;width:100%;height:min(76vh,820px);min-height:360px;overflow:hidden;border:1px solid #d4b1ca1c;border-radius:18px;background:#151117}.gallery-stage figure{position:absolute;inset:0;display:none;align-items:center;justify-content:center;width:100%;height:100%;margin:0;scroll-margin-top:110px}.gallery-stage figure:first-child{display:flex}.gallery-stage:has(figure:target) figure:first-child{display:none}.gallery-stage:has(figure:target) figure:target{display:flex}.gallery-stage figure>a{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.gallery-stage figure img{display:block;width:100%;height:100%;object-fit:contain}.gallery-choices{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:13px}.gallery-choices>a,.gallery-choices>label{position:relative;display:flex;align-items:center;justify-content:center;width:52px;height:52px;overflow:hidden;border:1px solid #b594bd39;border-radius:8px;background:#1c1520;transition:border-color .2s}.gallery-choices>a:hover,.gallery-choices>label:hover{border-color:var(--pink)}.gallery-choices img{width:100%;height:100%;object-fit:contain}.gallery-choices input{position:absolute;width:1px;height:1px;opacity:0}.gallery-choices label:has(input:checked){border-color:var(--pink)}.detail-copy{position:sticky;top:100px;min-width:0;padding:25px;border:1px solid #c79fbd24;border-radius:18px;background:#1a141c}.detail-author{display:flex;align-items:center;gap:11px;margin-bottom:24px;color:#d3bfdc;font-size:12px;line-height:1.7}.detail-author .avatar,.detail-author img.avatar,.detail-author .avatar img{width:36px;height:36px}.detail-author strong{display:block;font-size:13px;font-weight:500}.detail-author small{display:block;color:#947e9b;font-size:10px}.detail-copy h1{margin:11px 0 17px;font-size:26px;font-weight:600;line-height:1.55;letter-spacing:-.015em}.detail-copy>p{margin:13px 0;color:#b7a2c0;font-size:12px;line-height:2}.detail-meta{display:grid;gap:6px;margin:24px 0;padding:18px 0;border-block:1px solid var(--line);color:#a78baf;font-size:11px;line-height:1.9}.detail-meta>div{display:flex;justify-content:space-between;gap:14px}.detail-meta strong{color:#cdb4d2;font-weight:400}.detail-back{margin-top:24px}.detail-back .button{width:100%}.video-stage{display:flex;align-items:center;justify-content:center;width:100%;height:min(76vh,820px);min-height:340px;overflow:hidden;border:1px solid #d4b1ca1c;border-radius:18px;background:#110d13}.video-stage video{display:block;width:100%;height:100%;object-fit:contain}video.stage{display:block;width:100%;height:auto;max-height:80vh;object-fit:contain}.media-fallback{margin-top:14px;color:var(--muted);font-size:11px}.media-fallback a{color:#d19dbc;border-bottom:1px solid #c37ca54d}.certificate-image{min-width:0;overflow:hidden;border:1px solid #ffffff1c;border-radius:16px;background:#eee9ed}.certificate-image img{display:block;width:100%;height:auto;max-height:none;object-fit:contain}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}@keyframes breathe{from{opacity:.45}to{opacity:1}}
@media(min-width:1700px){.topbar{padding-inline:max(40px,calc((100vw - var(--sidebar) - 1240px)/2))}.profile-hero{padding-inline:55px}}
@media(max-width:1270px){.masonry{column-count:3}.page-content{padding-inline:30px}.topbar,.page-footer{padding-inline:30px}.profile-hero{padding:38px 36px 32px}.name-title{font-size:68px}.major-title{font-size:21px}.hero-copy{max-width:61%}.hero-stats{gap:26px}.honor-preview-card{padding:20px}.note-detail,.certificate-detail{grid-template-columns:minmax(0,1fr) 300px;gap:22px}.detail-copy{padding:22px}.about-grid{grid-template-columns:240px minmax(0,1fr);gap:34px}.contact-panel{padding:42px 32px;gap:28px}.contact-list strong{font-size:15px}}
@media(max-width:1060px) and (min-width:901px){.profile-hero{min-height:485px;padding:34px 30px}.hero-copy{max-width:66%}.hero-floral{right:-12%;width:55%;opacity:.65}.name-title{font-size:62px}.major-title{font-size:19px}.hero-intro{font-size:12px}.hero-stats{gap:22px}.stat strong{font-size:21px}.stat span{font-size:9px}.honor-preview{gap:12px}.honor-preview-card{padding:17px}.honor-preview-card h3{font-size:13px}.awards-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.note-detail,.certificate-detail{grid-template-columns:minmax(0,1fr) 260px;gap:20px}.detail-copy{padding:20px}.detail-copy h1{font-size:22px}.about-grid{grid-template-columns:210px minmax(0,1fr);gap:28px}.about-copy h1,.about-copy h2{font-size:29px}.honor-record{grid-template-columns:85px minmax(0,1fr) 120px;gap:15px}}
@media(max-width:900px){:root{--sidebar:0px}html{scroll-padding-top:88px}.sidebar{inset:auto 0 0;width:auto;height:74px;padding:5px max(14px,env(safe-area-inset-right)) max(9px,env(safe-area-inset-bottom));border-right:0;border-top:1px solid #c09ab32a;background:#160f19f5;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.sidebar .brand,.side-bottom{display:none}.side-nav{flex-direction:row;align-items:stretch;gap:3px;height:100%;margin:0}.side-nav a{flex:1;flex-direction:column;justify-content:center;gap:4px;min-width:0;min-height:0;padding:5px 3px;border:0;border-radius:9px}.nav-icon{width:22px;height:22px;font-size:20px}.nav-icon svg{width:20px;height:20px}.nav-words strong{font-size:10px;line-height:1.5;letter-spacing:.03em;text-align:center;white-space:nowrap}.nav-words small{display:none}.topbar{min-height:66px;margin:0;padding:17px 25px;gap:16px}.breadcrumb{font-size:11px}.top-links{gap:18px;font-size:10px}.page-content{width:100%;max-width:780px;margin-inline:auto;padding:26px 25px 44px}.page-footer{width:100%;max-width:780px;margin-inline:auto;padding:24px 25px 110px;font-size:9px}.filter-bar{top:66px}.profile-hero{min-height:490px;padding:35px}.hero-copy{max-width:62%}.hero-floral{width:47%;right:-2%}.hero-stats{gap:32px}.honor-preview{gap:15px}.honor-preview-card{padding:18px}.honor-preview-card h3{font-size:14px}.masonry{column-count:3;column-gap:15px}.note-card{margin-bottom:16px}.note-body{padding:11px}.note-body h3{font-size:13px}.note-detail,.certificate-detail{grid-template-columns:minmax(0,1fr) 265px;gap:22px}.detail-copy{top:86px;padding:21px}.detail-copy h1{font-size:23px}.gallery-stage,.video-stage{height:min(70vh,720px)}.honor-record{grid-template-columns:85px minmax(0,1fr) 140px;gap:17px}}
@media(max-width:600px){.topbar{min-height:61px;padding:17px 18px;gap:12px}.breadcrumb{font-size:11px}.top-links{gap:13px;font-size:10px}.top-links .desktop-only,.desktop-only{display:none}.page-content{padding:20px 17px 35px}.page-footer{align-items:flex-start;flex-direction:column;gap:7px;padding:22px 20px 105px;font-size:9px}.profile-hero{min-height:0;padding:29px 25px 27px;border-radius:20px}.hero-copy{max-width:100%}.eyebrow{font-size:8px;letter-spacing:.1em}.name-title{position:relative;margin:17px 0 6px;font-size:58px;line-height:1.25;letter-spacing:.035em}.major-title{margin-bottom:20px;font-size:19px;letter-spacing:.12em}.hero-intro{max-width:280px;color:#cbb8d0;font-size:12px;line-height:2}.hero-tags{gap:6px;margin-top:19px}.pill{padding:4px 9px;font-size:9px}.hero-actions{gap:9px;margin-top:24px}.button{min-height:40px;padding:9px 17px;font-size:11px}.hero-floral{top:-2%;right:-23%;width:95%;height:105%;opacity:.3;mask-image:linear-gradient(90deg,transparent 10%,#000 55%)}.flower-frame{right:6%;opacity:.5}.hero-stats{width:100%;gap:0;flex-wrap:nowrap;justify-content:space-between;margin-top:28px;padding-top:19px}.stat{min-width:0}.stat strong{font-size:21px;line-height:1.4}.stat span{font-size:9px;margin-top:5px}.section-heading{gap:14px;margin:31px 0 16px}.section-heading h2{font-size:21px;line-height:1.5}.section-heading h2 small{display:block;margin:3px 0 0;font-size:8px}.section-heading p{font-size:11px}.section-heading .text-link{font-size:10px}.text-link{font-size:11px}.page-heading,.page-intro{margin:6px 0 25px}.page-heading h1,.page-intro h1{font-size:29px}.page-heading p,.page-intro p{margin-top:9px;font-size:12px;line-height:1.9}.honor-preview{grid-template-columns:1fr;gap:10px}.honor-preview-card{display:grid;grid-template-columns:1fr auto;column-gap:15px;align-items:center;padding:17px 19px;border-radius:14px}.honor-preview-card .level-label{grid-column:1/-1;font-size:9px}.honor-preview-card h3{grid-column:1;margin:7px 0 2px;font-size:14px}.honor-preview-card p{grid-column:1;font-size:11px}.honor-preview-card small{grid-column:2;grid-row:2/4;align-self:center;margin:0;font-size:9px}.filter-bar{top:61px;gap:3px;margin:20px 0 18px;padding:12px 0}.filter-bar label,.award-filter label{min-height:33px;padding:6px 11px;font-size:11px}.filter-label small,.filter-bar sup{font-size:8px}.masonry{column-count:2;column-gap:12px}.note-card{margin-bottom:14px;border-radius:13px}.note-body{padding:10px 10px 11px}.note-body h3{font-size:12px;line-height:1.65;font-weight:500}.note-body>p{margin-top:6px;font-size:10px;line-height:1.8}.card-meta{margin-top:7px;gap:3px 6px;font-size:9px}.author-line{gap:5px;margin-top:10px;font-size:9px}.avatar,.avatar img,img.avatar{width:19px;height:19px}.image-count,.new-badge,.media-badge{padding:3px 5px;border-radius:6px;font-size:8px}.image-count{top:8px;right:8px}.new-badge{top:8px;left:8px}.media-badge{bottom:8px;left:8px}.honors-intro{margin:4px 0 22px}.honors-intro h1,.honors-intro h2{font-size:29px}.honors-intro p{font-size:12px}.award-filter{gap:3px;margin-bottom:20px;padding-bottom:14px}.awards-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 12px}.award-card{border-radius:13px}.award-body{padding:13px}.award-type{font-size:9px;line-height:1.7}.award-body h3{margin:7px 0;font-size:12px;line-height:1.8;font-weight:500}.award-body p{font-size:10px;line-height:1.8}.award-result{margin-top:10px;font-size:12px}.award-date{margin-top:11px;font-size:8px}.honors-table{margin-top:26px;border-radius:13px}.honors-table summary{padding:17px;font-size:12px}.honor-record{grid-template-columns:63px minmax(0,1fr);gap:5px 12px;margin-inline:17px;padding:15px 0;font-size:11px;line-height:1.8}.honor-record>:first-child{grid-row:1/3;font-size:8px;line-height:2.4}.honor-record>:last-child{grid-column:2;text-align:left;font-size:10px}.experience-list article{grid-template-columns:1fr;gap:10px;padding:23px 0}.exp-date{font-size:10px;line-height:1.8}.exp-copy h3{font-size:17px;line-height:1.65}.exp-copy p{font-size:12px;line-height:1.95}.role-label{margin-bottom:5px;font-size:10px}.project-spotlights{grid-template-columns:1fr;gap:14px;margin:25px 0}.project-spotlights article{padding:21px;border-radius:14px}.project-spotlights h3{font-size:16px}.project-spotlights p{font-size:12px}.about-grid{grid-template-columns:1fr;gap:25px;margin:5px 0 25px}.about-photo{width:55%;max-width:230px;border-radius:17px}.about-copy{padding:0}.about-copy h1,.about-copy h2{font-size:29px}.about-copy .english-name{font-size:9px}.about-copy>p,.about-copy .intro{margin:17px 0;font-size:12px;line-height:2.05}.skills{gap:7px;margin:20px 0}.tag{min-height:29px;padding:5px 9px;font-size:9px}.facts{gap:16px;margin:23px 0;padding:19px 0}.fact b,.fact strong,.facts>div>strong{font-size:24px}.fact span,.facts>div>span{font-size:10px}.contact-panel{grid-template-columns:1fr;gap:28px;min-height:0;padding:30px 25px;border-radius:20px}.contact-main h1,.contact-main h2{margin:15px 0 18px;font-size:32px}.contact-main>p{margin-bottom:20px;font-size:12px}.contact-floral{opacity:.25;mask-image:linear-gradient(180deg,#000,transparent 85%)}.contact-list>a,.contact-list .contact-item{padding:18px 0}.contact-list small{margin-bottom:7px;font-size:8px}.contact-list strong{font-size:15px}.note-detail,.certificate-detail{grid-template-columns:1fr;gap:21px;margin-top:0}.detail-copy{position:static;padding:23px;border-radius:16px}.detail-author{margin-bottom:19px}.detail-copy h1{font-size:25px;margin:10px 0 15px}.detail-copy>p{font-size:12px;line-height:2}.detail-meta{margin:21px 0;padding:16px 0;font-size:11px}.detail-back{margin-top:22px}.gallery-stage{height:min(69vh,620px);min-height:300px;border-radius:15px}.gallery-stage figure{scroll-margin-top:82px}.gallery-choices{gap:7px;margin-top:11px}.gallery-choices>a,.gallery-choices>label{width:45px;height:45px;border-radius:7px}.video-stage{height:min(68vh,600px);min-height:280px;border-radius:15px}.certificate-image{border-radius:14px}}
@media(max-width:359px){.page-content{padding-inline:13px}.profile-hero{padding:26px 20px}.name-title{font-size:52px}.major-title{font-size:17px}.hero-stats{gap:12px}.stat strong{font-size:19px}.stat span{font-size:8px}.top-links{gap:9px;font-size:9px}.masonry{column-gap:10px}.note-body{padding-inline:9px}.note-body h3{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
/* Original pale glass flower inside the windows; sparse white particles outside. */
.botanical-filter-defs{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}
.hero-floral.botanical-study{top:1%;right:0;width:46%;height:98%;opacity:1;mask-image:none;overflow:visible}
.botanical-canvas{position:absolute;inset:3% 5%;isolation:isolate;background:transparent;overflow:visible}
.botanical-study{container-type:size}
@supports(width:1cqw){.botanical-canvas{inset:auto;top:50%;left:50%;width:min(92cqw,61.333cqh);height:auto;aspect-ratio:2/3;transform:translate(-50%,-50%)}}
.floral-layer{position:absolute;inset:0;pointer-events:none}
.floral-layer>img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;max-width:none}
.botanical-study .floral-halo{z-index:0;opacity:.1;filter:grayscale(1) brightness(1.25) blur(7px)}
.floral-color{z-index:4;filter:none;opacity:1;background:#100c12}
.particle-cloud{position:absolute;inset:0;z-index:2;pointer-events:none;transform-origin:50% 48%}
.particle-cloud i{position:absolute;left:var(--x);top:var(--y);width:var(--s);height:var(--s);border-radius:50%;background:#f7f4f7;opacity:var(--a);box-shadow:0 0 2.5px #fff6;pointer-events:none}
.dust-core{opacity:.92}.dust-near{animation:particle-drift 14s ease-in-out infinite alternate}.dust-far{animation:particle-scatter 18s ease-in-out infinite alternate}
@keyframes particle-drift{from{transform:translate(0,0);opacity:.65}to{transform:translate(3px,-5px);opacity:.95}}
@keyframes particle-scatter{from{transform:scale(1) translate(0,0);opacity:.42}to{transform:scale(1.035) translate(4px,-8px);opacity:.75}}
@media(prefers-reduced-motion:reduce){.particle-cloud{animation:none!important;transform:none!important}}
.floral-color.select-one{clip-path:inset(12% 6% 58% 40%)}
.floral-color.select-two{clip-path:inset(40% 41% 29% 1%)}
.floral-color.select-three{clip-path:inset(67% 11% 12% 50%)}
.selection-window{position:absolute;z-index:5;border:1px solid #f2f0f3ce;pointer-events:none}
.selection-window.window-one{left:40%;top:12%;width:54%;height:30%}
.selection-window.window-two{left:1%;top:40%;width:58%;height:31%}
.selection-window.window-three{left:50%;top:67%;width:39%;height:21%}
.selection-window i{position:absolute;width:7px;height:7px;border:1px solid #faf6fbdd;background:#100c12d9}
.selection-window i:nth-child(1){top:-4px;left:-4px}.selection-window i:nth-child(2){top:-4px;right:-4px}.selection-window i:nth-child(3){bottom:-4px;left:-4px}.selection-window i:nth-child(4){bottom:-4px;right:-4px}
.window-label{position:absolute;left:0;top:-19px;white-space:nowrap;color:#d2c4cf;font:7px/1.8 var(--mono);letter-spacing:.08em}
.window-three .window-label{top:auto;bottom:-19px}
.specimen-link{position:absolute;z-index:3;height:1px;background:#eee6f36e;transform-origin:left center}
.link-one{left:58%;top:40%;width:29%;transform:rotate(-30deg)}.link-two{left:38%;top:70%;width:36%;transform:rotate(22deg)}
.specimen-cross{position:absolute;z-index:5;color:#d0bccb;font:16px/1 var(--mono)}.cross-one{left:14%;top:13%}.cross-two{left:88%;top:53%}
.study-note{position:absolute;bottom:0;left:2%;z-index:6;color:#d0b7c6;font-size:10px;letter-spacing:.1em;line-height:1.8;text-shadow:0 0 8px #050505}
.study-note small{display:block;color:#8c7988;font:6px/1.8 var(--mono);letter-spacing:.08em}
.contact-panel{background:#100c12;isolation:isolate}.contact-panel::before{content:'';position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(90deg,#100c1255,#100c12c7 50%,#100c12 80%)}
.contact-botanical{position:absolute;inset:2% auto 2% -6%;width:62%;height:96%;z-index:-1;pointer-events:none;opacity:.48;mask-image:linear-gradient(90deg,#000 50%,transparent 100%)}
.contact-main,.contact-list{z-index:2}.contact-botanical .study-note{display:none}
.contact-list strong.career-interests{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:8px;margin-top:13px;font-size:11px;line-height:1.8;font-weight:400}
.contact-list strong.career-interests span{display:inline-block;color:#e0c8d6;padding:5px 10px;border:1px solid #d5a4bf36;border-radius:7px;background:#241720b3}
.project-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.project-kind{padding:3px 8px;border:1px solid #d5a4bf25;border-radius:6px;color:#aa8fa4;font-size:9px;line-height:1.7;white-space:nowrap}.design-projects article:first-child{border-color:#d797b94a;background:linear-gradient(135deg,#2b1927,#18121b)}.design-projects article:first-child .role-label{color:#f3bbd7}
@media(max-width:1060px) and (min-width:901px){.hero-floral.botanical-study{width:45%;right:-4%;opacity:.75}}
@media(max-width:900px) and (min-width:601px){.hero-floral.botanical-study{width:44%;right:-3%;opacity:.85}}
@media(max-width:600px){.hero-floral.botanical-study{top:5px;right:-13%;width:75%;height:365px;opacity:.55;mask-image:linear-gradient(90deg,transparent 5%,#000 48%)}.hero-floral .study-note{display:none}.window-label{font-size:6px;top:-15px}.selection-window i{width:5px;height:5px}.selection-window i:nth-child(1){left:-3px;top:-3px}.selection-window i:nth-child(2){right:-3px;top:-3px}.selection-window i:nth-child(3){left:-3px;bottom:-3px}.selection-window i:nth-child(4){right:-3px;bottom:-3px}.floral-halo{filter:grayscale(1) brightness(3) blur(7px)}.contact-botanical{inset:0 -15% auto auto;width:95%;height:390px;opacity:.35;mask-image:linear-gradient(180deg,#000,transparent 100%)}.contact-panel::before{background:linear-gradient(180deg,#100c1255,#100c12c7 45%,#100c12 80%)}.contact-list strong.career-interests{font-size:10px;gap:7px}.contact-list strong.career-interests span{padding:5px 8px}}
/* Supporting labels match the completed page markup. */
.hero-awards{margin-top:15px;color:#e0adc8;font-size:11px;line-height:1.9;max-width:440px}
.brand{font-family:var(--sans)}.brand>span:last-child{min-width:0}.brand .brand-mark{display:block;width:22px;flex-shrink:0;font:400 26px/1 var(--sans);color:var(--bright)}.brand small{font:8px/1.6 var(--mono);letter-spacing:.01em;margin-top:4px}.status-dot{display:inline-block;width:5px;height:5px;margin:0 6px 2px 0;border-radius:50%;background:var(--pink);box-shadow:0 0 10px #ef7ab46b}.name-title>span{color:var(--bright);margin-left:-.08em}.major-title small{display:block;margin-top:4px;color:#9f7d9a;font:9px/1.8 var(--mono);letter-spacing:.09em}.stat strong span{display:inline;margin:0 0 0 3px;color:#b590a8;font:11px/1.4 var(--sans);letter-spacing:0}.flower-frame.frame-two{top:59%;right:40%;width:45%;height:24%;border-color:#eec9e74a}.floral-annotation{position:absolute;right:8%;bottom:11%;color:#c5a0bb;font-size:12px;letter-spacing:.12em;line-height:2}.floral-annotation small{display:block;color:#a17d99;font:7px/1.8 var(--mono);letter-spacing:.04em}.note-body .card-meta{margin:0 0 5px}.author-line small{margin-left:auto;color:#7f6d8a;font-size:9px}.feed-divider{display:flex;align-items:center;gap:10px;margin:26px 0 24px;padding-bottom:16px;border-bottom:1px solid var(--line);color:#b6a3bf;font-size:14px;line-height:1.8}.feed-divider small{color:#806b8d;font:9px var(--mono)}.award-filter{display:block;padding:0;border:0}.award-filter>.filter-bar{width:100%;margin:18px 0 24px}.awards-grid{width:100%}.honors-intro{color:var(--muted);font-size:13px;line-height:1.95}.honor-record strong{font-weight:500}.gallery-choices>a>span{position:absolute;right:2px;bottom:2px;padding:0 3px;border-radius:3px;background:#0e0812bd;color:#f4ddec;font:7px/1.7 var(--mono)}.gallery-hint{margin-top:12px;color:#937e9d;font-size:10px;line-height:1.8}.archive-note{margin:25px 0;color:#9984a2;font-size:11px;line-height:1.9}.organization{margin:-2px 0 9px;color:#c290b1;font-size:11px;line-height:1.8}.experience-summary{margin-top:35px;padding:25px 28px;border:1px solid var(--line);border-radius:16px;background:#21162380}.experience-summary h3{margin-bottom:11px;font-size:17px;font-weight:500}.experience-summary p{margin-bottom:16px;color:#ac96b6;font-size:12px;line-height:2}.campus-roles{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 42px}.about-photo>span{display:block;padding:12px 15px;color:#ba9fc2;font-size:10px;line-height:1.7}.contact-list>div{display:block;padding:23px 0;border-bottom:1px solid #d4a3c12d}.award-callout{display:block;margin:20px 0;padding:13px 15px;border:1px solid #d878b637;border-radius:10px;background:#bd438012;color:#e6b3d0;font-size:11px;line-height:1.9}.award-callout:hover{border-color:#ef7ab47a;color:#ffcee8}.certificate-work{padding:12px 14px;border-radius:9px;background:#c45e9c0c;color:#d0a4c1!important}
@media(max-width:600px){.brand small{font-size:8px}.major-title small{font-size:8px;margin-top:5px}.stat strong span{font-size:10px}.floral-annotation{display:none}.author-line small{font-size:8px}.gallery-hint{font-size:9px}.archive-note{font-size:10px}.experience-summary{padding:22px;margin-top:27px}.experience-summary h3{font-size:16px}.experience-summary p{font-size:12px}.campus-roles{gap:7px;margin-bottom:30px}.contact-list>div{padding:18px 0}.award-filter>.filter-bar{margin:16px 0 20px}.note-body .card-meta{margin-bottom:4px}}
