body{padding-top:0px}.header{border-bottom:1px solid #EEE;padding:0.4em 0 0.5em 0;margin-top:0.6em;margin-bottom:1.5em;gap:1em}.footer{color:#999;border-top:1px solid #EEE;text-align:center;font-size:0.8em}.footer a:link,.footer a:visited{color:#999}pre{background:none;border:none;border-radius:0;font-family:'Roboto', sans-serif;overflow:visible;white-space:normal}pre:has(>h2){display:flex;align-items:stretch;height:auto;padding:0;margin:2.5em 0 1.5em 0}pre:has(>h2) h2{margin:0;width:100%;padding:0.5em 1.1em 0.5em 1em;background:#f8fafc;color:#1e293b;font-size:1.1rem;font-weight:700;letter-spacing:0.025em;line-height:1.25;border-radius:6px;border:1px solid #e2e8f0;border-left:3px solid #1a85d6;box-shadow:none}#bibtex-modal-body{display:block;white-space:pre;overflow-x:auto;font-family:'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, monospace;font-size:0.85rem;padding:0;margin:0;background:none;border:none}.fa{color:#999}a>.fa{display:inline}.hero-intro{background:rgba(232,144,10,0.09);border:1px solid #e2e8f0;border-left:3px solid #e8900a;border-radius:6px;padding:1.6em 2em 1.4em 2em;margin-bottom:2em;text-align:justify}.hero-intro .hero-desc{font-size:0.95rem;color:#475569;line-height:1.75;margin-bottom:1em}.hero-intro .hero-desc a{color:#1a85d6}.hero-intro .hero-tags{display:flex;flex-wrap:wrap;gap:0.3em}.hero-intro .hero-tags span{display:inline-block;padding:0.15em 0.7em;background:rgba(232,144,10,0.09);color:#b87208;border:1px solid rgba(232,144,10,0.22);border-radius:6px;font-size:0.72rem;font-weight:600;letter-spacing:0.02em}#logo{width:220px;height:auto;margin:2px 0 8px 0}@media (max-width: 767px){.header>a:first-child{display:flex;justify-content:center;width:100%}#logo{width:280px}}@media (min-width: 768px){.card-columns{column-count:4;display:grid;grid-template-columns:24% 24% 24% 24%}.card-columns .card{display:flex;flex-direction:column}}@media (min-width: 576px){.card-columns{column-count:3;display:grid;grid-template-columns:32.1% 32.1% 32.1%}.card-columns .card{display:flex;flex-direction:column}}@media (max-width: 767px){.hidden-mobile{display:none}}.project-type{font-size:0.85rem;font-weight:600;text-transform:uppercase;letter-spacing:0.04em;color:#1a85d6;margin-bottom:0.4rem}.project-dates{font-size:0.88rem;color:#999;margin-bottom:1.2rem;display:flex;flex-wrap:wrap;gap:0 1.5rem}.project-last-updated{font-style:italic}.project-partners{list-style:none;padding:0;margin:0 0 1.5rem 0;display:flex;flex-wrap:wrap;gap:0.3rem 1.5rem}@media (min-width: 576px){.project-people{column-count:2}}@media (min-width: 768px){.role.grad{column-count:2}.role.faculty{column-count:3}.role.postdoc{column-count:3}.role.phd_student{column-count:3}.role.former_researchers{column-count:4}.role.visiting_researchers{column-count:4}.project-people{column-count:3}}.title img{max-width:50%}section{margin-bottom:2em}.profile{object-fit:cover}.noprofile circle{fill:#EEE}.noprofile text{font-weight:700;fill:white}.card{width:100%;box-sizing:border-box}.card .profile{height:40px;width:40px;margin:3px}.card .card-footer{padding:0.5em;background:#f8f9fa;border-top:1px solid #e9ecef}.card .card-footer a{position:relative;z-index:2}.project-card{border:1px solid #e2e8f0;border-top:3px solid #1a85d6;border-radius:6px;transition:box-shadow 0.22s ease;display:flex;flex-direction:column;position:relative}.project-card:hover{box-shadow:0 6px 20px rgba(0,0,0,0.1)}.project-card .card-img-top{object-fit:cover;height:140px;width:100%;border-radius:3px 3px 0 0}.project-card .card-body{padding:1.1em 1.2em 0.5em 1.2em;flex:1;display:flex;flex-direction:column}.project-card .card-title{margin-bottom:0.3em}.project-card .card-title a{color:#212529}.project-card .card-title a:hover{color:#1a85d6}.project-card .card-subtitle{font-size:0.8rem;color:#6c757d;font-weight:400;margin-bottom:0.75em;line-height:1.4}.project-card .card-text{font-size:0.88rem;color:#555;line-height:1.55;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.project-card .card-readmore{margin-top:auto;padding:0.6em 0 0 0}.project-card .card-readmore a{font-size:0.82rem;font-weight:600;color:#1a85d6}.project-card .card-readmore a:hover{text-decoration:underline}.project-card .card-readmore a::after{content:'';position:absolute;inset:0;z-index:1}.person{margin-bottom:10px}.person .profile{height:70px;width:70px}.person .bio{color:#999}.person .person-name{margin:0}.person-without-image{margin:0}.person-without-image .bio{margin-left:1em}.role .person{margin-bottom:20px}svg{vertical-align:middle}#topbar{padding-top:0;gap:0.15em;flex-wrap:wrap;justify-content:center}#topbar .nav-link{font-size:0.9rem;font-weight:600;letter-spacing:0.03em;color:#495057;padding:0.4em 0.9em;border-radius:5px;transition:background-color 0.15s ease, color 0.15s ease}#topbar .nav-link.active{background-color:#1a85d6;color:#fff}#topbar .nav-link:not(.active):hover{background-color:rgba(26,133,214,0.09);color:#1a85d6}b,strong{font-weight:bold}.pubcite .btn{font-size:100%}h1{font-weight:600;font-size:1.8rem;color:#212529;margin-bottom:0.6em}h3{font-size:0.8rem;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;color:#6c757d;margin-top:1.2em;margin-bottom:0.6em}.people h3{margin-top:1.2em;padding-top:0.6em;border-top:1px solid #e9ecef}.people section:first-child h3,.people>h3:first-child{margin-top:0.3em;padding-top:0;border-top:none}h4{font-weight:600;font-size:1rem;color:#212529}.teaching h4{font-size:1.05rem;font-weight:700;color:#212529;margin-top:1.6em;margin-bottom:0.4em;padding-bottom:0.3em;border-bottom:1px solid #e9ecef}.teaching p>strong:only-child{display:block;color:#475569;font-weight:600;font-size:0.95rem;margin-top:1.1em;margin-bottom:0.1em}h5{font-weight:500;color:#343a40}.repo-card .card-title{font-size:0.95rem;font-weight:700}.repo-card .card-title a{color:#212529;text-decoration:none}.repo-card .card-title a .fa{color:#555;margin-right:0.35em}.repo-card .card-title a:hover{color:#1a85d6;text-decoration:none}.repo-card .repo-description{font-size:0.85rem;color:#6c757d;min-height:2.6em;margin-bottom:0.4em}.repo-card .card-footer{font-size:0.82rem;min-height:2em;display:flex;align-items:flex-start;justify-content:space-between;gap:0.75em}.repo-card .repo-languages{display:flex;flex-wrap:wrap;gap:0.3em;flex:1;min-width:0}.repo-card .repo-language{display:inline-block;background:#f1f5f9;color:#64748b;border:1px solid #e2e8f0;border-radius:4px;padding:0.1em 0.55em;font-weight:500;font-size:0.75rem}.repo-card .repo-stars{flex-shrink:0;white-space:nowrap;color:#6c757d}.repo-card .repo-stars .fa{color:#f0b429;margin-right:0.2em}h6{font-weight:500;color:#495057}ul.news{list-style:none;padding:0;margin-left:0;display:grid;grid-template-columns:repeat(3, 1fr);gap:1em}@media (max-width: 991px){ul.news{grid-template-columns:repeat(2, 1fr)}}@media (max-width: 575px){ul.news{grid-template-columns:1fr}}ul.news>li{margin:0;display:flex;flex-direction:column;background:#fff;border:1px solid #e2e8f0;border-top:3px solid #1a85d6;border-radius:6px;transition:box-shadow 0.22s ease;position:relative}ul.news>li:hover{box-shadow:0 6px 20px rgba(0,0,0,0.1);cursor:pointer}ul.news .news-meta{display:flex;align-items:center;gap:0.6em;padding:0.55em 1em 0.5em 1em;border-bottom:1px solid #f1f5f9}ul.news .news-icon-badge{flex-shrink:0;width:28px;height:28px;border-radius:50%;background:#f1f5f9;display:flex;align-items:center;justify-content:center}ul.news .news-icon-badge .fa{color:#94a3b8;font-size:0.82rem}ul.news .date{font-size:0.75rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:0.04em}ul.news .news-body{padding:0.8em 1em 0 1em;display:flex;flex-direction:column;flex:1}ul.news h5{margin:0 0 0.4em 0;font-size:0.97rem;font-weight:600}ul.news h5 a{color:#212529}ul.news h5 a:hover{color:#1a85d6}ul.news .news-categories{position:absolute;top:0.75em;right:0.75em;display:flex;flex-wrap:wrap;gap:0.3em;z-index:2}ul.news .news-category{display:inline-block;padding:0.1em 0.6em;background:#f1f5f9;color:#64748b;border:1px solid rgba(26,133,214,0.2);border-radius:6px;font-size:0.7rem;font-weight:600;letter-spacing:0.04em;text-transform:uppercase}ul.news .news-excerpt{font-size:0.88rem;color:#555;line-height:1.6;flex:1}ul.news .news-footer{margin-top:auto;padding:0.6em 0 0.75em 0}ul.news .news-readmore{font-size:0.82rem;color:#1a85d6;font-weight:600}ul.news .news-readmore:hover{text-decoration:underline}ul.news .news-readmore::after{content:'';position:absolute;inset:0;z-index:1}#filters{margin:0.5em 0;background:#fff;border:1px solid #e2e8f0;border-radius:6px;box-shadow:0 1px 4px rgba(0,0,0,0.06)}#filters .cd-navigation{background:transparent;padding:0;height:auto !important}#filters .cd-nav{flex-wrap:wrap;gap:0;padding:0}#filters .cd-nav-item{padding:0.38em 0.9em;border-radius:6px;font-size:0.88rem;font-weight:500;color:#495057;transition:background 0.15s ease, color 0.15s ease}#filters .cd-nav-item.active{background:#1a85d6;color:#fff;font-weight:600}#filters .cd-nav-item:hover:not(.active){background:rgba(26,133,214,0.09);color:#1a85d6}#filters .cd-nav-item a{color:inherit;text-decoration:none}#filters .search-bar,#filters .year-selector{background:transparent;padding-top:0;padding-bottom:0;align-items:center}#filters .pub-search-wrap{position:relative;width:100%}#filters .pub-search-wrap .pub-search-icon{position:absolute;left:0.7em;top:50%;transform:translateY(-50%);color:#adb5bd;pointer-events:none;font-size:0.85rem}#filters .search-input{width:100%;border:1px solid #dee2e6;border-radius:6px;font-size:0.88rem;padding:0.35em 0.75em 0.35em 2.1em;background:#fff}#filters .search-input:hover,#filters .search-input:focus{border-color:#1a85d6;background:#fff;outline:none;box-shadow:0 0 0 2px rgba(26,133,214,0.12)}#filters .year-dropdown{border:1px solid #dee2e6;border-radius:6px;font-size:0.88rem;padding:0.35em 0.75em;background:#fff}#filters .year-dropdown:hover,#filters .year-dropdown:focus{border-color:#1a85d6;background:#fff;outline:none;box-shadow:0 0 0 2px rgba(26,133,214,0.12)}#filters .input-group-text{display:none}#filters .pub-filter-row{display:flex;align-items:stretch;gap:0.5em;width:100%}#filters .year-dropdown{flex:1}#filters .pub-download-btn{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:2.4em;border:1px solid #dee2e6;border-radius:6px;background:#fff;color:#6c757d;font-size:0.88rem;text-decoration:none;transition:border-color 0.15s ease, color 0.15s ease, box-shadow 0.15s ease}#filters .pub-download-btn:hover{border-color:#1a85d6;color:#1a85d6;box-shadow:0 0 0 2px rgba(26,133,214,0.12);text-decoration:none}@media (max-width: 767px){#filters{padding:0.75em}#filters .search-bar{padding:0 0.75em 0.5em 0.75em;width:100%}#filters .col-md-6{padding:0 0.75em 0.5em 0.75em}#filters .cd-nav{display:flex;flex-wrap:wrap;gap:0.3em}#filters .cd-nav-item{flex:1 1 auto;text-align:center;font-size:0.82rem;padding:0.35em 0.6em}#filters .year-selector{padding:0 0.75em;margin-top:0.5em}#filters .pub-filter-row{width:100%}}#pub-grid{padding:0 !important}.pitems h2{font-size:1rem !important;font-weight:700 !important;color:#6c757d !important;letter-spacing:0.06em !important;text-transform:uppercase !important;background:#fff !important;border-bottom:1px solid #e9ecef !important;padding:0.5em 0 !important;margin:0.5em 0 0.75em 0 !important}.pitems .item{margin-bottom:0 !important}.pitems .pubmain{background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:0.9em 3.5em 0.9em 1.1em !important;margin-bottom:0.6em;position:relative;transition:box-shadow 0.18s ease}.pitems .pubmain:hover{box-shadow:0 3px 12px rgba(0,0,0,0.08)}.pitems .item.jpaper .pubmain{border-left:3px solid #5cb85c !important}.pitems .item.cpaper .pubmain{border-left:3px solid #f0ad4e !important}.pitems .item.vpaper .pubmain{border-left:3px solid #337ab7 !important}.pitems .item.bpaper .pubmain{border-left:3px solid #d9534f !important}.pitems .pubtitle strong{font-size:0.95rem;font-weight:600;color:#212529;line-height:1.4}.pitems .pubauthor{font-size:0.83rem;color:#495057;margin-top:0.15em}.pitems .pubmain>div:not(.pubassets):not(.pubtitle):not(.pubauthor):not(.pubcite):not(.doi){font-size:0.82rem !important;color:#6c757d}.pitems .doi a{font-size:0.78rem !important;color:#adb5bd !important}.pitems .doi a:hover{color:#1a85d6 !important}.pitems .pubcite .btn{font-size:0.72rem;padding:0.1em 0.7em;border-radius:6px;font-weight:600;border:none}.pitems .item.jpaper .pubcite .btn{background:#dff0d8;color:#3c763d}.pitems .item.cpaper .pubcite .btn{background:#fcf8e3;color:#8a6d3b}.pitems .item.vpaper .pubcite .btn{background:#dce9f5;color:#31708f}.pitems .item.bpaper .pubcite .btn{background:#f2dede;color:#a94442}.pitems .pubassets{background:transparent !important;border-top:none !important;padding:0 !important;top:auto !important;bottom:0.7em !important;right:0.7em !important}.pitems .pubassets a,.pitems .pubassets a:link,.pitems .pubassets a:visited,.pitems .pubassets a:active,.pitems .pubassets a:focus{color:#ced4da !important;background:transparent !important;background-image:none !important;box-shadow:none !important;padding:4px 7px !important;font-size:1rem !important;float:none !important;border-radius:6px !important;transition:background 0.15s ease, color 0.15s ease !important;text-decoration:none !important}.pitems .pubassets a:hover{color:#1a85d6 !important;background:rgba(26,133,214,0.09) !important}.footer{margin-top:2.5em}.thesis-list .thesis-table{font-size:0.92rem;border-collapse:separate;border-spacing:0;border:1px solid #dee2e6;border-radius:6px;overflow:hidden}.thesis-list .thesis-table thead tr{background:#334155;color:#fff}.thesis-list .thesis-table thead tr th{border-bottom:none;font-weight:600;letter-spacing:0.03em;padding:0.75em 1em}.thesis-list .thesis-table tbody tr{transition:background 0.15s ease}.thesis-list .thesis-table tbody tr:nth-child(even){background:#f8f9fa}.thesis-list .thesis-table tbody tr:hover{background:#eef4fb}.thesis-list .thesis-table tbody tr td{padding:0.6em 1em;vertical-align:middle;border-top:1px solid #e9ecef}.thesis-list .thesis-table tbody tr td:first-child{color:#6c757d;white-space:nowrap;font-size:0.85rem}.thesis-list .thesis-table tbody tr td:nth-child(3) b{font-weight:600;color:#212529}.thesis-list .thesis-table tbody tr td:last-child a{display:inline-block;padding:0.2em 0.65em;border-radius:4px;background:transparent;color:#6c757d;font-size:0.82rem;font-weight:500;border:1px solid #ced4da;transition:border-color 0.15s ease, color 0.15s ease;text-decoration:none}.thesis-list .thesis-table tbody tr td:last-child a::before{font-family:'FontAwesome';content:"\f1c1\00a0"}.thesis-list .thesis-table tbody tr td:last-child a:hover{border-color:#1a85d6;color:#1a85d6;text-decoration:none}.person .profile,.card-footer .profile{border:2px solid #EEE;transition:border-color 0.2s ease, box-shadow 0.2s ease}.person .profile:hover,.card-footer .profile:hover{border-color:#1a85d6;box-shadow:0 0 0 3px rgba(26,133,214,0.18)}.seminar-infobox{background:rgba(26,133,214,0.09);border-left:4px solid #1a85d6;border-radius:6px;padding:1.2em 1.5em;margin-bottom:2em}.seminar-infobox .seminar-infobox-header{font-size:0.8rem;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;color:#1a85d6;margin-bottom:0.8em}.seminar-infobox .seminar-infobox-header .fa{margin-right:0.4em}.seminar-infobox .seminar-details{width:100%;border-collapse:collapse;font-size:0.92rem}.seminar-infobox .seminar-details th,.seminar-infobox .seminar-details td{padding:0.25em 0.5em;vertical-align:top;border:none}.seminar-infobox .seminar-details th{font-weight:600;color:#555;white-space:nowrap;width:7em}.seminar-infobox .seminar-details td{color:#222}.teaching-intro{font-size:0.9rem;color:#475569;margin-bottom:1.75em}.teaching-intro a{color:#1a85d6}.teaching-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:0.3em;padding:0.55em 0.75em;margin-bottom:1.5em;background:#fff;border:1px solid #e2e8f0;border-radius:6px;box-shadow:0 1px 4px rgba(0,0,0,0.06)}.teaching-nav .teaching-nav-item{display:inline-block;padding:0.32em 0.85em;font-size:0.83rem;font-weight:600;color:#495057;border-radius:5px;text-decoration:none;transition:background-color 0.15s ease, color 0.15s ease}.teaching-nav .teaching-nav-item:hover{background-color:rgba(26,133,214,0.09);color:#1a85d6;text-decoration:none}.teaching-course-list .list-group-item{padding:0.75em 1.1em;border-color:#e2e8f0}.teaching-course-list .teaching-course-name{font-weight:600;color:#1e293b;font-size:0.95rem}.teaching-course-list .teaching-course-prof{font-size:0.83rem;color:#64748b;margin-top:0.2em}.teaching-course-list .teaching-course-degree{display:inline-block;font-size:0.75rem;font-weight:500;color:#64748b;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:4px;padding:0.25em 0.65em;white-space:nowrap;margin-left:0.75em;flex-shrink:0}.teaching-course-list .teaching-course-link{display:inline-block;font-size:0.82rem;font-weight:600;color:#1a85d6;margin-left:0.75em;flex-shrink:0;white-space:nowrap}.teaching-course-list .teaching-course-link:hover{text-decoration:underline}@media (max-width: 576px){.teaching-course-list .d-flex{flex-direction:column;align-items:flex-start !important}.teaching-course-list .teaching-course-degree,.teaching-course-list .teaching-course-link{margin-left:0;margin-top:0.55em}}.teaching-thesis-cards{margin-top:0.5em}.teaching-thesis-card{display:flex;align-items:center;gap:1em;padding:1em 1.2em;background:#fff;border:1px solid #e2e8f0;border-left:3px solid #1a85d6;border-radius:6px;color:inherit;text-decoration:none;transition:box-shadow 0.18s ease, border-color 0.18s ease}.teaching-thesis-card:hover{box-shadow:0 4px 14px rgba(0,0,0,0.08);border-color:#1a85d6;text-decoration:none;color:inherit}.teaching-thesis-card .teaching-thesis-icon{font-size:1.5rem;color:#1a85d6;flex-shrink:0}.teaching-thesis-card .teaching-thesis-title{font-weight:600;font-size:0.95rem;color:#1e293b}.teaching-thesis-card .teaching-thesis-sub{font-size:0.82rem;color:#64748b;margin-top:0.15em}.teaching-proposals-tba{font-style:italic}.teaching-proposals-course{margin-bottom:1.25em}.teaching-proposals-course .teaching-proposals-course-name{font-size:0.95rem;font-weight:600;color:#1e293b;margin-bottom:0.4em;padding-bottom:0.25em;border-bottom:1px solid #e2e8f0}.teaching-proposals-course .teaching-proposals-list{margin:0.4em 0 0 1.2em;padding:0;font-size:0.9rem;color:#475569;line-height:1.7}.teaching-proposals-course .teaching-proposals-tba{font-size:0.88rem;color:#94a3b8;font-style:italic;margin:0.3em 0 0 0.2em}
