﻿[data-dark="false"]{--primary: #0795d9;--secondary: #7dd3fc;--text: #000000;--background: #ffffff;--background-alt: #fafafa;--light-gray: #e0e0e0;--gray: #808080;--dark-gray: #404040;--overlay: #00000020}[data-dark="true"]{--primary: #0795d9;--secondary: #075985;--text: #ffffff;--background: #181818;--background-alt: #1c1c1c;--light-gray: #404040;--gray: #808080;--dark-gray: #b0b0b0;--overlay: #ffffff10}:root{--title: "Barlow", sans-serif;--heading: "Barlow", sans-serif;--body: "Barlow", sans-serif;--code: "Roboto Mono", monospace;--large: 1.2rem;--xl: 1.4rem;--xxl: 1.6rem;--thin: 200;--regular: 400;--semi-bold: 500;--bold: 600;--spacing: 2;--compact: 1.5;--rounded: 3px;--shadow: 0 0 10px 0 var(--overlay);--transition: 0.2s ease}body{display:flex;flex-direction:column;margin:0;padding:0;min-height:100vh;background:var(--background);color:var(--text);font-family:var(--body);text-align:center;line-height:var(--compact)}*,::before,::after{box-sizing:border-box;-moz-text-size-adjust:none;-webkit-text-size-adjust:none;text-size-adjust:none}.pi-container{display:flex;justify-content:center;margin:40px 0}.portrait.pi{width:100%;max-width:800px;background:#f0f7ff;border:2px solid #4299e1;box-shadow:0 4px 12px rgba(66,153,225,0.2);padding:30px;border-radius:15px}.portrait.pi .portrait-image{width:200px;height:200px;border:3px solid #2b6cb0}.portrait.pi .portrait-name{font-size:2rem;color:#2b6cb0}.portrait.pi .portrait-description{font-weight:bold;font-size:1.2rem}.member-bio{margin-top:30px;padding:20px;background:#f8f9fa;border-radius:10px;box-shadow:0 2px 8px rgba(0,0,0,0.1)}.member-bio h2{border-bottom:2px solid #4299e1;padding-bottom:10px;margin-bottom:20px}.role-navigation{display:flex;justify-content:center;flex-wrap:wrap;gap:15px;margin:30px 0;padding:15px 0;border-bottom:2px solid var(--primary-light);border-top:2px solid var(--primary-light)}.role-link{padding:10px 20px;border-radius:30px;font-weight:var(--semi-bold);transition:all 0.3s ease;text-decoration:none;display:flex;align-items:center;gap:8px}.role-link:hover{transform:translateY(-3px);box-shadow:0 5px 15px rgba(0,0,0,0.1)}.role-link.pi-link{background:#f0f7ff;color:#2b6cb0;border:2px solid #4299e1}.role-link.associate-link{background:#fff5f0;color:#c05621;border:2px solid #ed8936}.role-link.postdoc-link{background:#f8f0ff;color:#6b46c1;border:2px solid #9f7aea}.role-link.assistant-link{background:#f0fff4;color:#276749;border:2px solid #48bb78}.role-link.student-link{background:#fffaf0;color:#b7791f;border:2px solid #ed8936}.role-header{position:relative;padding-bottom:15px;margin-bottom:30px}.role-header:after{content:"";position:absolute;bottom:0;left:0;width:100px;height:3px;background:var(--primary)}html{scroll-behavior:smooth}@keyframes highlight{0%{background-color:rgba(66,153,225,0.1)}50%{background-color:rgba(66,153,225,0.3)}100%{background-color:rgba(66,153,225,0)}}section:target{animation:highlight 2s}.anchor{display:inline-block;position:relative;top:-0.15em;left:0.5em;width:0;margin:0 !important;color:var(--primary) !important;opacity:0;font-size:0.75em !important;text-decoration:none;transition:opacity var(--transition),color var(--transition)}:hover>.anchor,.anchor:focus{opacity:1}.anchor:hover{color:var(--text) !important}.background{position:relative;background:var(--background);color:var(--text);z-index:1}.background:before{content:"";position:absolute;inset:0;background-image:var(--image);background-size:cover;background-repeat:no-repeat;background-position:50% 50%;opacity:0.25;z-index:-1}b,strong{font-weight:var(--bold)}button{cursor:pointer}.button-wrapper{display:contents}.button{display:inline-flex;justify-content:center;align-items:center;gap:10px;max-width:calc(100% - 5px - 5px);margin:5px;padding:8px 15px;border:none;border-radius:var(--rounded);background:var(--primary);color:var(--background);text-align:center;font:inherit;font-family:var(--heading);font-weight:var(--semi-bold);text-decoration:none;vertical-align:middle;appearance:none;transition:background var(--transition),color var(--transition)}.button:hover{background:var(--text);color:var(--background)}.button[data-style="bare"]{padding:5px;background:none;color:var(--primary)}.button[data-style="bare"]:hover{color:var(--text)}.button[data-flip]{flex-direction:row-reverse}.card{display:inline-flex;justify-content:stretch;align-items:center;flex-direction:column;width:350px;max-width:calc(100% - 20px - 20px);margin:20px;background:var(--background);border-radius:var(--rounded);overflow:hidden;box-shadow:var(--shadow);vertical-align:top}.card.pi{width:100%;max-width:800px;background:#f0f7ff;border:2px solid #4299e1;box-shadow:0 4px 12px rgba(66,153,225,0.2)}.card.pi .card-title{font-size:1.5rem;color:#2b6cb0}.card.pi .card-text{padding:30px;gap:15px}.card[data-style="small"]{width:250px}.card-image img{aspect-ratio:3 / 2;object-fit:cover;width:100%}.card-text{display:inline-flex;justify-content:flex-start;align-items:center;flex-direction:column;gap:20px;max-width:100%;padding:20px}.card-text>*{margin:0 !important}.card-title{font-family:var(--heading);font-weight:var(--semi-bold)}.card-subtitle{margin-top:-10px !important;font-style:italic}.citation-container{container-type:inline-size}.citation{display:flex;margin:20px 0;border-radius:var(--rounded);background:var(--background);overflow:hidden;box-shadow:var(--shadow)}.citation-image{position:relative;width:180px;flex-shrink:0}.citation-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.citation-text{position:relative;display:inline-flex;flex-wrap:wrap;gap:10px;max-width:100%;height:min-content;padding:20px;padding-left:30px;text-align:left;overflow-wrap:break-word;z-index:0}.citation-title,.citation-authors,.citation-details,.citation-description{width:100%}.citation-title{font-weight:var(--semi-bold)}.citation-text>.icon{position:absolute;top:20px;right:20px;color:var(--light-gray);opacity:0.5;font-size:30px;z-index:-1}.citation-publisher{text-transform:capitalize}.citation-description{color:var(--gray)}.citation-buttons{display:flex;flex-wrap:wrap;gap:10px}.citation-buttons .button{margin:0}.citation-text>.tags{display:inline-flex;justify-content:flex-start;margin:0}@container (max-width: 800px){.citation{flex-direction:column}.citation-image{width:unset;height:180px}}pre,code,pre *,code *{font-family:var(--code)}code.highlighter-rouge{padding:2px 6px;background:var(--light-gray);border-radius:var(--rounded)}div.highlighter-rouge{width:100%;margin:40px 0;border-radius:var(--rounded);overflow-x:auto;overflow-y:auto;text-align:left}div.highlighter-rouge div.highlight{display:contents}div.highlighter-rouge div.highlight pre.highlight{width:fit-content;min-width:100%;margin:0;padding:20px;color:var(--white)}.cols{display:grid;--repeat: min(3, var(--cols));grid-template-columns:repeat(var(--repeat), 1fr);align-items:flex-start;gap:40px;margin:40px 0}.cols>*{min-width:0;min-height:0}.cols>div>:first-child{margin-top:0 !important}.cols>div>:last-child{margin-bottom:0 !important}@media (max-width: 750px){.cols{--repeat: min(2, var(--cols))}}@media (max-width: 500px){.cols{--repeat: min(1, var(--cols))}}details{margin:20px 0;padding:0 20px;border-radius:var(--rounded);background:var(--theme-light);border:solid 1px var(--light-gray);text-align:left;overflow:hidden}summary{list-style:none;margin:0 -20px;padding:10px;line-height:var(--compact);transition:background var(--transition);cursor:pointer}summary:hover{background:var(--light-gray)}details[open] summary{background:var(--light-gray)}summary::before{content:"❯";display:inline-flex;justify-content:center;align-items:center;margin-right:5px;width:1em;height:1em}details[open] summary::before{transform:rotate(90deg)}.feature{display:flex;justify-content:center;align-items:center;gap:40px;margin:40px 0}.feature-image{flex-shrink:0;width:40%;aspect-ratio:3 / 2;border-radius:var(--rounded);overflow:hidden;box-shadow:var(--shadow)}.feature-image img{width:100%;height:100%;object-fit:cover}.feature-text{flex-grow:1}.feature-title{font-size:var(--large);text-align:center;font-family:var(--heading);font-weight:var(--semi-bold)}.feature[data-flip]{flex-direction:row-reverse}@media (max-width: 800px){.feature{flex-direction:column !important}.feature-image{width:100%;max-width:calc($wrap / 2)}}.figure{display:flex;justify-content:center;align-items:center;flex-direction:column;gap:10px;margin:40px 0}.figure-image{display:contents}.figure-image img{border-radius:var(--rounded);overflow:hidden;box-shadow:var(--shadow)}.figure-caption{font-style:italic;text-align:center}.float{margin-bottom:20px;max-width:50%}.float>*{margin:0 !important}.float:not([data-flip]){float:left;margin-right:40px}.float[data-flip]{float:right;margin-left:40px}.float[data-clear]{float:unset;clear:both;margin:0}@media (max-width: 600px){.float{float:unset !important;clear:both !important;margin:auto !important;max-width:unset}}footer{display:flex;justify-content:center;align-items:center;flex-direction:column;gap:20px;padding:40px;line-height:var(--spacing);box-shadow:var(--shadow)}footer a{color:var(--text) !important}footer a:hover{color:var(--primary) !important}footer .icon{font-size:var(--xl)}form{display:flex;justify-content:center;align-items:center;gap:10px}.grid{display:grid;--repeat: 3;grid-template-columns:repeat(var(--repeat), 1fr);justify-content:center;align-items:flex-start;gap:40px;margin:40px 0}.grid.pi{--repeat: 1;justify-items:center}.grid>*{min-width:0;min-height:0;width:100%;margin:0 !important}@media (max-width: 750px){.grid{--repeat: 2}}@media (max-width: 500px){.grid{--repeat: 1}}.grid[data-style="square"]{align-items:center}.grid[data-style="square"]>*{aspect-ratio:1 / 1}.grid[data-style="square"] img{aspect-ratio:1 / 1;object-fit:cover;max-width:unset;max-height:unset}.grid>:where(h1, h2, h3, h4, h5, h6){display:none}header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px;padding:20px;box-shadow:var(--shadow);position:sticky !important;top:0;z-index:10 !important}header a{color:var(--text);text-decoration:none}.home{display:flex;justify-content:flex-start;align-items:center;gap:10px;flex-basis:0;flex-grow:1;max-width:100%}.logo{height:40px}.logo>*{width:unset;height:100%}.title-text{display:flex;justify-content:flex-start;align-items:baseline;flex-wrap:wrap;gap:5px;min-width:0;font-family:var(--title);text-align:left}.title{font-size:var(--large)}.subtitle{opacity:0.65;font-weight:var(--thin)}.nav-toggle{display:none;position:relative;width:30px;height:30px;margin:0;color:var(--text);appearance:none;transition:background var(--transition)}.nav-toggle:after{content:"\f0c9";position:absolute;left:50%;top:50%;color:var(--text);font-size:15px;font-family:"Font Awesome 6 Free";font-weight:900;transform:translate(-50%, -50%)}.nav-toggle:checked:after{content:"\f00d"}nav{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:10px;font-family:var(--heading);text-transform:uppercase}nav>a{padding:5px}nav>a:hover{color:var(--primary)}@media (max-width: 700px){header:not([data-big]){justify-content:flex-end}header:not([data-big]) .nav-toggle{display:flex}header:not([data-big]) .nav-toggle:not(:checked)+nav{display:none}header:not([data-big]) nav{align-items:flex-end;flex-direction:column;width:100%}}header[data-big]{justify-content:center;align-items:center;flex-direction:column;padding:100px 20px;top:unset}header[data-big] .home{flex-direction:column;flex-grow:0}header[data-big] .logo{height:80px;flex-shrink:0}header[data-big] .title-text{flex-direction:column;align-items:center;text-align:center}header[data-big] .title{font-size:var(--xxl)}header[data-big] .subtitle{font-size:var(--large)}h1,h2,h3,h4,h5,h6{margin:40px 0 20px 0;font-family:var(--heading);font-weight:var(--semi-bold);text-align:left;letter-spacing:1px}h1{margin:40px 0;font-size:1.6rem;font-weight:var(--regular);text-transform:uppercase;text-align:center}h2{font-size:1.6rem;padding-bottom:5px;border-bottom:solid 1px var(--light-gray);font-weight:var(--regular)}h3{font-size:1.5rem}h4{font-size:1.3rem}h5{font-size:1.15rem}h6{font-size:1rem}:where(h1, h2, h3, h4, h5, h6)>.icon{margin-right:1em;color:var(--light-gray)}.icon{font-size:1em}span.icon{line-height:1}span.icon>svg{position:relative;top:0.1em;height:1em}img{max-width:100%;max-height:100%}a{color:var(--primary);transition:color var(--transition);overflow-wrap:break-word}a:hover{color:var(--text)}a:not([href]){color:var(--text)}ul,ol{margin:20px 0;padding-left:40px}ul{list-style-type:square}li{margin:5px 0;padding-left:10px;text-align:justify;line-height:var(--spacing)}li ul,li ol{margin:0}p{margin:20px 0;text-align:justify;line-height:var(--spacing)}.portrait-wrapper{display:contents}.portrait{position:relative;display:inline-flex;justify-content:center;align-items:center;flex-direction:column;margin:20px;width:175px;max-width:calc(100% - 20px - 20px);text-decoration:none;transition:transform 0.2s, box-shadow 0.2s}.portrait:hover{transform:translateY(-5px)}.portrait[data-style="small"]{width:100px}.portrait[data-style="tiny"]{flex-direction:row;gap:15px;width:unset;text-align:left}.portrait .icon{position:absolute;left:0;top:0;display:flex;justify-content:center;align-items:center;width:calc(20px + 10%);aspect-ratio:1 / 1;border-radius:999px;background:var(--background);box-shadow:var(--shadow);transform:translate(14%, 14%)}.portrait[data-style="small"] .icon{left:-2px;top:-2px}.portrait[data-style="tiny"] .icon{display:none}.portrait-image{width:100%;margin-bottom:20px;aspect-ratio:1 / 1;border-radius:999px;object-fit:cover;box-shadow:var(--shadow);border:2px solid transparent}.portrait[data-style="tiny"] .portrait-image{width:50px;margin:0}.portrait-name{font-family:var(--heading);font-weight:var(--semi-bold)}.portrait[data-style="tiny"] .portrait-description,.portrait[data-style="tiny"] .portrait-affiliation{display:none}.portrait.pi{width:100%;max-width:800px;background:#f0f7ff;border-radius:var(--rounded);padding:2rem;box-shadow:0 4px 12px rgba(66,153,225,0.2);margin:2rem auto}.portrait.pi .icon{left:2rem;top:2rem;width:40px}.portrait.pi .portrait-image{width:250px;border-color:#4299e1}.portrait.pi .portrait-name{font-size:1.5rem;color:#2b6cb0;margin-top:1rem}.portrait.pi .portrait-description{font-size:1.1rem;color:#2b6cb0;margin-bottom:0.5rem}.portrait.pi .portrait-affiliation{font-size:1rem;margin-bottom:1rem}.portrait-bio{text-align:left;line-height:1.6;color:var(--text);margin-top:1rem}.post-excerpt-container{container-type:inline-size}.post-excerpt{display:flex;margin:20px 0;border-radius:var(--rounded);background:var(--background);overflow:hidden;box-shadow:var(--shadow)}.post-excerpt-image{position:relative;width:200px;flex-shrink:0}.post-excerpt-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.post-excerpt-text{display:flex;flex-wrap:wrap;gap:20px;padding:20px 30px;text-align:left}.post-excerpt-text>*{margin:0 !important}.post-excerpt-text>a:first-child{width:100%;font-weight:var(--semi-bold)}.post-excerpt-text>div{justify-content:flex-start}.post-excerpt-text>p{width:100%}@container (max-width: 800px){.post-excerpt{flex-direction:column}.post-excerpt-image{width:unset;height:200px}}.post-info{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:20px;margin:20px 0;color:var(--dark-gray)}.post-info .portrait{margin:0}.post-info .icon{margin-right:0.5em}.post-info a{color:inherit}.post-info a:hover{color:var(--primary)}.post-info>span{text-align:center;white-space:nowrap}.post-nav{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;color:var(--gray)}.post-nav>:first-child{text-align:left}.post-nav>:last-child{text-align:right}.post-nav>:first-child .icon{margin-right:0.5em}.post-nav>:last-child .icon{margin-left:0.5em}@media (max-width: 600px){.post-nav{align-items:center;flex-direction:column}.post-nav>*{text-align:center !important}}blockquote{margin:20px 0;padding:10px 20px;border-left:solid 4px var(--light-gray)}blockquote>:first-child{margin-top:0}blockquote>:last-child{margin-bottom:0}hr{margin:40px 0;background:var(--light-gray);border:none;height:1px}section{padding:40px calc(max($padding, (100% - $page) / 2));transition:background var(--transition),color var(--transition)}section[data-size="wide"]{padding:40px}section[data-size="full"]{padding:0}section[data-size="full"]>*{margin:0;border-radius:0}section[data-size="full"] img{border-radius:0}main>section:last-of-type{flex-grow:1}main>section:nth-of-type(odd){background:var(--background)}main>section:nth-of-type(even){background:var(--background-alt)}table{margin:40px auto;border-collapse:collapse;overflow-wrap:anywhere}th{font-weight:var(--semi-bold)}th,td{padding:10px 15px;border:solid 1px var(--light-gray)}.tags{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:10px;max-width:100%;margin:20px 0}.tag{max-width:100%;margin:0;padding:5px 10px;border-radius:999px;background:var(--secondary);color:var(--text);text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:background var(--transition),color var(--transition)}.tag:hover{background:var(--light-gray)}.tag[data-active]{background:var(--light-gray)}input[type="text"]{width:100%;height:40px;margin:0;padding:5px 10px;border:solid 1px var(--light-gray);border-radius:var(--rounded);background:var(--background);color:var(--text);font-family:inherit;font-size:inherit;appearance:none;box-shadow:var(--shadow)}.tippy-box{background:var(--background);color:var(--text);padding:7.5px;text-align:left;box-shadow:var(--shadow)}.tippy-arrow{width:30px;height:30px}.tippy-arrow:before{width:10px;height:10px;background:var(--background);box-shadow:var(--shadow)}.tippy-arrow{overflow:hidden;pointer-events:none}.tippy-box[data-placement="top"] .tippy-arrow{inset:unset;top:100%}.tippy-box[data-placement="bottom"] .tippy-arrow{inset:unset;bottom:100%}.tippy-box[data-placement="left"] .tippy-arrow{inset:unset;left:100%}.tippy-box[data-placement="right"] .tippy-arrow{inset:unset;right:100%}.tippy-arrow:before{border:unset !important;transform-origin:center !important;transform:translate(-50%, -50%) rotate(45deg) !important}.tippy-box[data-placement="top"] .tippy-arrow:before{left:50% !important;top:0 !important}.tippy-box[data-placement="bottom"] .tippy-arrow:before{left:50% !important;top:100% !important}.tippy-box[data-placement="left"] .tippy-arrow:before{left:0 !important;top:50% !important}.tippy-box[data-placement="right"] .tippy-arrow:before{left:100% !important;top:50% !important}.left{text-align:left}.center{text-align:center}.right{text-align:right}.alert{position:relative;display:flex;gap:20px;align-items:center;margin:20px 0;padding:20px;border-radius:var(--rounded);overflow:hidden;text-align:left;line-height:var(--spacing)}.alert:before{content:"";position:absolute;inset:0;opacity:0.1;background:var(--color);z-index:-1}.alert>.icon{color:var(--color);font-size:var(--large)}.alert-content>:first-child{margin-top:0}.alert-content>:last-child{margin-bottom:0}input[type="checkbox"]{cursor:pointer}.dark-toggle{position:relative;width:40px;height:25px;margin:0;border-radius:999px;background:var(--primary);appearance:none;transition:background var(--transition)}.dark-toggle:after{content:"\f185";position:absolute;left:12px;top:50%;color:var(--text);font-size:15px;font-family:"Font Awesome 6 Free";font-weight:900;transform:translate(-50%, -50%);transition:left var(--transition)}.dark-toggle:checked:after{content:"\f186";left:calc(100% - 12px)}mark{background:#fef08a;color:#000000}.search-box{position:relative;height:40px}.search-box .search-input{width:100%;height:100%;padding-right:40px}.search-box button{position:absolute;inset:0 0 0 auto;display:flex;justify-content:center;align-items:center;padding:0;aspect-ratio:1 / 1;background:none;color:var(--black);border:none}.search-info{margin:20px 0;text-align:center;font-style:italic;line-height:var(--spacing)}
﻿[data-dark="false"]{--primary: #0795d9;--secondary: #7dd3fc;--text: #000000;--background: #ffffff;--background-alt: #fafafa;--light-gray: #e0e0e0;--gray: #808080;--dark-gray: #404040;--overlay: #00000020}[data-dark="true"]{--primary: #0795d9;--secondary: #075985;--text: #ffffff;--background: #181818;--background-alt: #1c1c1c;--light-gray: #404040;--gray: #808080;--dark-gray: #b0b0b0;--overlay: #ffffff10}:root{--title: "Barlow", sans-serif;--heading: "Barlow", sans-serif;--body: "Barlow", sans-serif;--code: "Roboto Mono", monospace;--large: 1.2rem;--xl: 1.4rem;--xxl: 1.6rem;--thin: 200;--regular: 400;--semi-bold: 500;--bold: 600;--spacing: 2;--compact: 1.5;--rounded: 3px;--shadow: 0 0 10px 0 var(--overlay);--transition: 0.2s ease}body{display:flex;flex-direction:column;margin:0;padding:0;min-height:100vh;background:var(--background);color:var(--text);font-family:var(--body);text-align:center;line-height:var(--compact)}*,::before,::after{box-sizing:border-box;-moz-text-size-adjust:none;-webkit-text-size-adjust:none;text-size-adjust:none}.pi-container{display:flex;justify-content:center;margin:40px 0}.portrait.pi{width:100%;max-width:800px;background:#f0f7ff;border:2px solid #4299e1;box-shadow:0 4px 12px rgba(66,153,225,0.2);padding:30px;border-radius:15px}.portrait.pi .portrait-image{width:200px;height:200px;border:3px solid #2b6cb0}.portrait.pi .portrait-name{font-size:2rem;color:#2b6cb0}.portrait.pi .portrait-description{font-weight:bold;font-size:1.2rem}.member-bio{margin-top:30px;padding:20px;background:#f8f9fa;border-radius:10px;box-shadow:0 2px 8px rgba(0,0,0,0.1)}.member-bio h2{border-bottom:2px solid #4299e1;padding-bottom:10px;margin-bottom:20px}.role-navigation{display:flex;justify-content:center;flex-wrap:wrap;gap:15px;margin:30px 0;padding:15px 0;border-bottom:2px solid var(--primary-light);border-top:2px solid var(--primary-light)}.role-link{padding:10px 20px;border-radius:30px;font-weight:var(--semi-bold);transition:all 0.3s ease;text-decoration:none;display:flex;align-items:center;gap:8px}.role-link:hover{transform:translateY(-3px);box-shadow:0 5px 15px rgba(0,0,0,0.1)}.role-link.pi-link{background:#f0f7ff;color:#2b6cb0;border:2px solid #4299e1}.role-link.associate-link{background:#fff5f0;color:#c05621;border:2px solid #ed8936}.role-link.postdoc-link{background:#f8f0ff;color:#6b46c1;border:2px solid #9f7aea}.role-link.assistant-link{background:#f0fff4;color:#276749;border:2px solid #48bb78}.role-link.student-link{background:#fffaf0;color:#b7791f;border:2px solid #ed8936}.role-header{position:relative;padding-bottom:15px;margin-bottom:30px}.role-header:after{content:"";position:absolute;bottom:0;left:0;width:100px;height:3px;background:var(--primary)}html{scroll-behavior:smooth}@keyframes highlight{0%{background-color:rgba(66,153,225,0.1)}50%{background-color:rgba(66,153,225,0.3)}100%{background-color:rgba(66,153,225,0)}}section:target{animation:highlight 2s}.anchor{display:inline-block;position:relative;top:-0.15em;left:0.5em;width:0;margin:0 !important;color:var(--primary) !important;opacity:0;font-size:0.75em !important;text-decoration:none;transition:opacity var(--transition),color var(--transition)}:hover>.anchor,.anchor:focus{opacity:1}.anchor:hover{color:var(--text) !important}.background{position:relative;background:var(--background);color:var(--text);z-index:1}.background:before{content:"";position:absolute;inset:0;background-image:var(--image);background-size:cover;background-repeat:no-repeat;background-position:50% 50%;opacity:0.25;z-index:-1}b,strong{font-weight:var(--bold)}button{cursor:pointer}.button-wrapper{display:contents}.button{display:inline-flex;justify-content:center;align-items:center;gap:10px;max-width:calc(100% - 5px - 5px);margin:5px;padding:8px 15px;border:none;border-radius:var(--rounded);background:var(--primary);color:var(--background);text-align:center;font:inherit;font-family:var(--heading);font-weight:var(--semi-bold);text-decoration:none;vertical-align:middle;appearance:none;transition:background var(--transition),color var(--transition)}.button:hover{background:var(--text);color:var(--background)}.button[data-style="bare"]{padding:5px;background:none;color:var(--primary)}.button[data-style="bare"]:hover{color:var(--text)}.button[data-flip]{flex-direction:row-reverse}.card{display:inline-flex;justify-content:stretch;align-items:center;flex-direction:column;width:350px;max-width:calc(100% - 20px - 20px);margin:20px;background:var(--background);border-radius:var(--rounded);overflow:hidden;box-shadow:var(--shadow);vertical-align:top}.card.pi{width:100%;max-width:800px;background:#f0f7ff;border:2px solid #4299e1;box-shadow:0 4px 12px rgba(66,153,225,0.2)}.card.pi .card-title{font-size:1.5rem;color:#2b6cb0}.card.pi .card-text{padding:30px;gap:15px}.card[data-style="small"]{width:250px}.card-image img{aspect-ratio:3 / 2;object-fit:cover;width:100%}.card-text{display:inline-flex;justify-content:flex-start;align-items:center;flex-direction:column;gap:20px;max-width:100%;padding:20px}.card-text>*{margin:0 !important}.card-title{font-family:var(--heading);font-weight:var(--semi-bold)}.card-subtitle{margin-top:-10px !important;font-style:italic}.citation-container{container-type:inline-size}.citation{display:flex;margin:20px 0;border-radius:var(--rounded);background:var(--background);overflow:hidden;box-shadow:var(--shadow)}.citation-image{position:relative;width:180px;flex-shrink:0}.citation-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.citation-text{position:relative;display:inline-flex;flex-wrap:wrap;gap:10px;max-width:100%;height:min-content;padding:20px;padding-left:30px;text-align:left;overflow-wrap:break-word;z-index:0}.citation-title,.citation-authors,.citation-details,.citation-description{width:100%}.citation-title{font-weight:var(--semi-bold)}.citation-text>.icon{position:absolute;top:20px;right:20px;color:var(--light-gray);opacity:0.5;font-size:30px;z-index:-1}.citation-publisher{text-transform:capitalize}.citation-description{color:var(--gray)}.citation-buttons{display:flex;flex-wrap:wrap;gap:10px}.citation-buttons .button{margin:0}.citation-text>.tags{display:inline-flex;justify-content:flex-start;margin:0}@container (max-width: 800px){.citation{flex-direction:column}.citation-image{width:unset;height:180px}}pre,code,pre *,code *{font-family:var(--code)}code.highlighter-rouge{padding:2px 6px;background:var(--light-gray);border-radius:var(--rounded)}div.highlighter-rouge{width:100%;margin:40px 0;border-radius:var(--rounded);overflow-x:auto;overflow-y:auto;text-align:left}div.highlighter-rouge div.highlight{display:contents}div.highlighter-rouge div.highlight pre.highlight{width:fit-content;min-width:100%;margin:0;padding:20px;color:var(--white)}.cols{display:grid;--repeat: min(3, var(--cols));grid-template-columns:repeat(var(--repeat), 1fr);align-items:flex-start;gap:40px;margin:40px 0}.cols>*{min-width:0;min-height:0}.cols>div>:first-child{margin-top:0 !important}.cols>div>:last-child{margin-bottom:0 !important}@media (max-width: 750px){.cols{--repeat: min(2, var(--cols))}}@media (max-width: 500px){.cols{--repeat: min(1, var(--cols))}}details{margin:20px 0;padding:0 20px;border-radius:var(--rounded);background:var(--theme-light);border:solid 1px var(--light-gray);text-align:left;overflow:hidden}summary{list-style:none;margin:0 -20px;padding:10px;line-height:var(--compact);transition:background var(--transition);cursor:pointer}summary:hover{background:var(--light-gray)}details[open] summary{background:var(--light-gray)}summary::before{content:"❯";display:inline-flex;justify-content:center;align-items:center;margin-right:5px;width:1em;height:1em}details[open] summary::before{transform:rotate(90deg)}.feature{display:flex;justify-content:center;align-items:center;gap:40px;margin:40px 0}.feature-image{flex-shrink:0;width:40%;aspect-ratio:3 / 2;border-radius:var(--rounded);overflow:hidden;box-shadow:var(--shadow)}.feature-image img{width:100%;height:100%;object-fit:cover}.feature-text{flex-grow:1}.feature-title{font-size:var(--large);text-align:center;font-family:var(--heading);font-weight:var(--semi-bold)}.feature[data-flip]{flex-direction:row-reverse}@media (max-width: 800px){.feature{flex-direction:column !important}.feature-image{width:100%;max-width:calc($wrap / 2)}}.figure{display:flex;justify-content:center;align-items:center;flex-direction:column;gap:10px;margin:40px 0}.figure-image{display:contents}.figure-image img{border-radius:var(--rounded);overflow:hidden;box-shadow:var(--shadow)}.figure-caption{font-style:italic;text-align:center}.float{margin-bottom:20px;max-width:50%}.float>*{margin:0 !important}.float:not([data-flip]){float:left;margin-right:40px}.float[data-flip]{float:right;margin-left:40px}.float[data-clear]{float:unset;clear:both;margin:0}@media (max-width: 600px){.float{float:unset !important;clear:both !important;margin:auto !important;max-width:unset}}footer{display:flex;justify-content:center;align-items:center;flex-direction:column;gap:20px;padding:40px;line-height:var(--spacing);box-shadow:var(--shadow)}footer a{color:var(--text) !important}footer a:hover{color:var(--primary) !important}footer .icon{font-size:var(--xl)}form{display:flex;justify-content:center;align-items:center;gap:10px}.grid{display:grid;--repeat: 3;grid-template-columns:repeat(var(--repeat), 1fr);justify-content:center;align-items:flex-start;gap:40px;margin:40px 0}.grid.pi{--repeat: 1;justify-items:center}.grid>*{min-width:0;min-height:0;width:100%;margin:0 !important}@media (max-width: 750px){.grid{--repeat: 2}}@media (max-width: 500px){.grid{--repeat: 1}}.grid[data-style="square"]{align-items:center}.grid[data-style="square"]>*{aspect-ratio:1 / 1}.grid[data-style="square"] img{aspect-ratio:1 / 1;object-fit:cover;max-width:unset;max-height:unset}.grid>:where(h1, h2, h3, h4, h5, h6){display:none}header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px;padding:20px;box-shadow:var(--shadow);position:sticky !important;top:0;z-index:10 !important}header a{color:var(--text);text-decoration:none}.home{display:flex;justify-content:flex-start;align-items:center;gap:10px;flex-basis:0;flex-grow:1;max-width:100%}.logo{height:40px}.logo>*{width:unset;height:100%}.title-text{display:flex;justify-content:flex-start;align-items:baseline;flex-wrap:wrap;gap:5px;min-width:0;font-family:var(--title);text-align:left}.title{font-size:var(--large)}.subtitle{opacity:0.65;font-weight:var(--thin)}.nav-toggle{display:none;position:relative;width:30px;height:30px;margin:0;color:var(--text);appearance:none;transition:background var(--transition)}.nav-toggle:after{content:"\f0c9";position:absolute;left:50%;top:50%;color:var(--text);font-size:15px;font-family:"Font Awesome 6 Free";font-weight:900;transform:translate(-50%, -50%)}.nav-toggle:checked:after{content:"\f00d"}nav{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:10px;font-family:var(--heading);text-transform:uppercase}nav>a{padding:5px}nav>a:hover{color:var(--primary)}@media (max-width: 700px){header:not([data-big]){justify-content:flex-end}header:not([data-big]) .nav-toggle{display:flex}header:not([data-big]) .nav-toggle:not(:checked)+nav{display:none}header:not([data-big]) nav{align-items:flex-end;flex-direction:column;width:100%}}header[data-big]{justify-content:center;align-items:center;flex-direction:column;padding:100px 20px;top:unset}header[data-big] .home{flex-direction:column;flex-grow:0}header[data-big] .logo{height:80px;flex-shrink:0}header[data-big] .title-text{flex-direction:column;align-items:center;text-align:center}header[data-big] .title{font-size:var(--xxl)}header[data-big] .subtitle{font-size:var(--large)}h1,h2,h3,h4,h5,h6{margin:40px 0 20px 0;font-family:var(--heading);font-weight:var(--semi-bold);text-align:left;letter-spacing:1px}h1{margin:40px 0;font-size:1.6rem;font-weight:var(--regular);text-transform:uppercase;text-align:center}h2{font-size:1.6rem;padding-bottom:5px;border-bottom:solid 1px var(--light-gray);font-weight:var(--regular)}h3{font-size:1.5rem}h4{font-size:1.3rem}h5{font-size:1.15rem}h6{font-size:1rem}:where(h1, h2, h3, h4, h5, h6)>.icon{margin-right:1em;color:var(--light-gray)}.icon{font-size:1em}span.icon{line-height:1}span.icon>svg{position:relative;top:0.1em;height:1em}img{max-width:100%;max-height:100%}a{color:var(--primary);transition:color var(--transition);overflow-wrap:break-word}a:hover{color:var(--text)}a:not([href]){color:var(--text)}ul,ol{margin:20px 0;padding-left:40px}ul{list-style-type:square}li{margin:5px 0;padding-left:10px;text-align:justify;line-height:var(--spacing)}li ul,li ol{margin:0}p{margin:20px 0;text-align:justify;line-height:var(--spacing)}.portrait-wrapper{display:contents}.portrait{position:relative;display:inline-flex;justify-content:center;align-items:center;flex-direction:column;margin:20px;width:175px;max-width:calc(100% - 20px - 20px);text-decoration:none;transition:transform 0.2s, box-shadow 0.2s}.portrait:hover{transform:translateY(-5px)}.portrait[data-style="small"]{width:100px}.portrait[data-style="tiny"]{flex-direction:row;gap:15px;width:unset;text-align:left}.portrait .icon{position:absolute;left:0;top:0;display:flex;justify-content:center;align-items:center;width:calc(20px + 10%);aspect-ratio:1 / 1;border-radius:999px;background:var(--background);box-shadow:var(--shadow);transform:translate(14%, 14%)}.portrait[data-style="small"] .icon{left:-2px;top:-2px}.portrait[data-style="tiny"] .icon{display:none}.portrait-image{width:100%;margin-bottom:20px;aspect-ratio:1 / 1;border-radius:999px;object-fit:cover;box-shadow:var(--shadow);border:2px solid transparent}.portrait[data-style="tiny"] .portrait-image{width:50px;margin:0}.portrait-name{font-family:var(--heading);font-weight:var(--semi-bold)}.portrait[data-style="tiny"] .portrait-description,.portrait[data-style="tiny"] .portrait-affiliation{display:none}.portrait.pi{width:100%;max-width:800px;background:#f0f7ff;border-radius:var(--rounded);padding:2rem;box-shadow:0 4px 12px rgba(66,153,225,0.2);margin:2rem auto}.portrait.pi .icon{left:2rem;top:2rem;width:40px}.portrait.pi .portrait-image{width:250px;border-color:#4299e1}.portrait.pi .portrait-name{font-size:1.5rem;color:#2b6cb0;margin-top:1rem}.portrait.pi .portrait-description{font-size:1.1rem;color:#2b6cb0;margin-bottom:0.5rem}.portrait.pi .portrait-affiliation{font-size:1rem;margin-bottom:1rem}.portrait-bio{text-align:left;line-height:1.6;color:var(--text);margin-top:1rem}.post-excerpt-container{container-type:inline-size}.post-excerpt{display:flex;margin:20px 0;border-radius:var(--rounded);background:var(--background);overflow:hidden;box-shadow:var(--shadow)}.post-excerpt-image{position:relative;width:200px;flex-shrink:0}.post-excerpt-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.post-excerpt-text{display:flex;flex-wrap:wrap;gap:20px;padding:20px 30px;text-align:left}.post-excerpt-text>*{margin:0 !important}.post-excerpt-text>a:first-child{width:100%;font-weight:var(--semi-bold)}.post-excerpt-text>div{justify-content:flex-start}.post-excerpt-text>p{width:100%}@container (max-width: 800px){.post-excerpt{flex-direction:column}.post-excerpt-image{width:unset;height:200px}}.post-info{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:20px;margin:20px 0;color:var(--dark-gray)}.post-info .portrait{margin:0}.post-info .icon{margin-right:0.5em}.post-info a{color:inherit}.post-info a:hover{color:var(--primary)}.post-info>span{text-align:center;white-space:nowrap}.post-nav{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;color:var(--gray)}.post-nav>:first-child{text-align:left}.post-nav>:last-child{text-align:right}.post-nav>:first-child .icon{margin-right:0.5em}.post-nav>:last-child .icon{margin-left:0.5em}@media (max-width: 600px){.post-nav{align-items:center;flex-direction:column}.post-nav>*{text-align:center !important}}blockquote{margin:20px 0;padding:10px 20px;border-left:solid 4px var(--light-gray)}blockquote>:first-child{margin-top:0}blockquote>:last-child{margin-bottom:0}hr{margin:40px 0;background:var(--light-gray);border:none;height:1px}section{padding:40px calc(max($padding, (100% - $page) / 2));transition:background var(--transition),color var(--transition)}section[data-size="wide"]{padding:40px}section[data-size="full"]{padding:0}section[data-size="full"]>*{margin:0;border-radius:0}section[data-size="full"] img{border-radius:0}main>section:last-of-type{flex-grow:1}main>section:nth-of-type(odd){background:var(--background)}main>section:nth-of-type(even){background:var(--background-alt)}table{margin:40px auto;border-collapse:collapse;overflow-wrap:anywhere}th{font-weight:var(--semi-bold)}th,td{padding:10px 15px;border:solid 1px var(--light-gray)}.tags{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:10px;max-width:100%;margin:20px 0}.tag{max-width:100%;margin:0;padding:5px 10px;border-radius:999px;background:var(--secondary);color:var(--text);text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:background var(--transition),color var(--transition)}.tag:hover{background:var(--light-gray)}.tag[data-active]{background:var(--light-gray)}input[type="text"]{width:100%;height:40px;margin:0;padding:5px 10px;border:solid 1px var(--light-gray);border-radius:var(--rounded);background:var(--background);color:var(--text);font-family:inherit;font-size:inherit;appearance:none;box-shadow:var(--shadow)}.tippy-box{background:var(--background);color:var(--text);padding:7.5px;text-align:left;box-shadow:var(--shadow)}.tippy-arrow{width:30px;height:30px}.tippy-arrow:before{width:10px;height:10px;background:var(--background);box-shadow:var(--shadow)}.tippy-arrow{overflow:hidden;pointer-events:none}.tippy-box[data-placement="top"] .tippy-arrow{inset:unset;top:100%}.tippy-box[data-placement="bottom"] .tippy-arrow{inset:unset;bottom:100%}.tippy-box[data-placement="left"] .tippy-arrow{inset:unset;left:100%}.tippy-box[data-placement="right"] .tippy-arrow{inset:unset;right:100%}.tippy-arrow:before{border:unset !important;transform-origin:center !important;transform:translate(-50%, -50%) rotate(45deg) !important}.tippy-box[data-placement="top"] .tippy-arrow:before{left:50% !important;top:0 !important}.tippy-box[data-placement="bottom"] .tippy-arrow:before{left:50% !important;top:100% !important}.tippy-box[data-placement="left"] .tippy-arrow:before{left:0 !important;top:50% !important}.tippy-box[data-placement="right"] .tippy-arrow:before{left:100% !important;top:50% !important}.left{text-align:left}.center{text-align:center}.right{text-align:right}.alert{position:relative;display:flex;gap:20px;align-items:center;margin:20px 0;padding:20px;border-radius:var(--rounded);overflow:hidden;text-align:left;line-height:var(--spacing)}.alert:before{content:"";position:absolute;inset:0;opacity:0.1;background:var(--color);z-index:-1}.alert>.icon{color:var(--color);font-size:var(--large)}.alert-content>:first-child{margin-top:0}.alert-content>:last-child{margin-bottom:0}input[type="checkbox"]{cursor:pointer}.dark-toggle{position:relative;width:40px;height:25px;margin:0;border-radius:999px;background:var(--primary);appearance:none;transition:background var(--transition)}.dark-toggle:after{content:"\f185";position:absolute;left:12px;top:50%;color:var(--text);font-size:15px;font-family:"Font Awesome 6 Free";font-weight:900;transform:translate(-50%, -50%);transition:left var(--transition)}.dark-toggle:checked:after{content:"\f186";left:calc(100% - 12px)}mark{background:#fef08a;color:#000000}.search-box{position:relative;height:40px}.search-box .search-input{width:100%;height:100%;padding-right:40px}.search-box button{position:absolute;inset:0 0 0 auto;display:flex;justify-content:center;align-items:center;padding:0;aspect-ratio:1 / 1;background:none;color:var(--black);border:none}.search-info{margin:20px 0;text-align:center;font-style:italic;line-height:var(--spacing)}


/* =============================================
   NEW STYLES — homepage redesign + team + icons
   ============================================= */

/* --- Section badge headers (colored background) --- */
.section-badge {
  display: inline-block;
  padding: 6px 20px;
  border-radius: 30px;
  font-size: 0.85em;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: #fff;
  margin-bottom: 8px;
}
.research-badge {
  background: linear-gradient(135deg, #2b6cb0, #4299e1);
  box-shadow: 0 3px 12px rgba(66,153,225,0.35);
}
.pub-badge {
  background: linear-gradient(135deg, #7b2d8b, #9f7aea);
  box-shadow: 0 3px 12px rgba(159,122,234,0.35);
}

/* --- Highlighted citation (featured paper box) --- */
.citation-container:has(.citation.highlight) {
  border-radius: var(--rounded);
  border: 2px solid;
  border-image: linear-gradient(135deg, #2b6cb0, #9f7aea) 1;
  border-top: 2px solid;
  border-bottom: 2px solid;
  border-left: none;
  border-right: none;
  overflow: hidden;
}
.citation.highlight {
  background: linear-gradient(90deg, rgba(43,108,176,0.05) 0%, rgba(155,122,234,0.05) 100%);
}
.citation.highlight .citation-image img {
  border-radius: 8px;
  box-shadow: 0 4px 16px rgba(0,0,0,0.15);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.citation.highlight .citation-image img:hover {
  transform: scale(1.05);
  box-shadow: 0 8px 24px rgba(0,0,0,0.2);
}

/* --- Role section colored backgrounds --- */
.role-section {
  padding: 20px 0;
  border-radius: 16px;
  padding: 25px 20px;
  margin: 10px 0;
}
.pi-section   { background: rgba(43,108,176,0.07); }
.associate-section { background: rgba(49,151,149,0.07); }
.postdoc-section    { background: rgba(159,122,234,0.07); }
.student-section     { background: rgba(214,158,46,0.07); }
.assistant-section   { background: rgba(56,178,172,0.07); }

/* --- Role header colored backgrounds --- */
.role-header {
  display: inline-block;
  padding: 5px 18px;
  border-radius: 20px;
  font-size: 1em;
  font-weight: 700;
  margin-bottom: 20px;
}
.pi-header         { background: rgba(43,108,176,0.15); color: #2b6cb0; }
.associate-header  { background: rgba(49,151,149,0.15); color: #319795; }
.postdoc-header    { background: rgba(159,122,234,0.15); color: #805ad5; }
.student-header    { background: rgba(214,158,46,0.15); color: #b7791f; }
.assistant-header  { background: rgba(56,178,172,0.15); color: #2c7a7b; }

/* --- Portrait hover zoom animation --- */
.portrait {
  transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.3s ease;
}
.portrait:hover {
  transform: translateY(-5px) scale(1.06);
  box-shadow: 0 12px 30px rgba(0,0,0,0.15);
}
.portrait-image {
  transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.portrait:hover .portrait-image {
  transform: scale(1.08);
}

/* --- Navbar logo: replace flask icon with alpha-helix logo --- */
header .logo img {
  width: 36px;
  height: 36px;
  object-fit: contain;
  border-radius: 8px;
}
header .logo svg {
  width: 36px;
  height: 36px;
}
