body { font-family: "Noto Sans", sans-serif; }

.title { font-family: 'Google Sans'; font-weight: 700; }

.portrait { border-radius: 2%; overflow: hidden; }
.portrait img { transform: scale(1.2); }

.footer .footer-links a { font-size: 25px; color: #000; }

.publication-block .publication-title { width: fit-content; margin: 0 !important; font-weight: 600; font-size: 110% !important; }
.publication-block .publication-title a { color: #000; }
.publication-block .publication-venue { color: #555; width: fit-content; margin-top: 0; }
.publication-block .publication-venue-emph { font-style: normal; font-size: 90%; font-weight: 500; color: firebrick; padding-left: 0.25em; }
.publication-block .publication-awards { color: firebrick; width: fit-content; font-weight: bolder; }
.publication-block .publication-authors .author-me { color: #000; font-weight: 600; }
.publication-block .publication-authors a { color: #000 !important; }
.publication-block .publication-authors a:hover { text-decoration: underline; }
.publication-block .publication-image { border-radius: 2%; width: 100%; height: 100%; overflow: hidden; font-size: 0; }
.publication-block .publication-image img { width: 100%; }
.publication-block .publication-mousecell { position: relative; font-size: 0; }
.publication-block .publication-mousecell { width: 100%; height: 100%; display: inline-block; overflow: hidden; }
.publication-block .publication-mousecell video { display: none; }
.publication-block .publication-description { color: #333; margin: 0.5em 0; }
.publication-block .publication-links { margin: 0 !important; margin-top: 0.5em !important; }
.publication-title a {
    color: black;
    text-decoration: none;
}

.pub-filter { gap: 0.5rem; }
.pub-filter-btn {
    font-family: 'Google Sans', sans-serif;
    font-weight: 500;
    font-size: 0.9rem;
    border: 2px solid #dbdbdb;
    transition: all 0.25s ease;
}
.pub-filter-btn:hover { border-color: #3273dc; color: #3273dc; }
.pub-filter-btn.is-active {
    background-color: #3273dc;
    border-color: #3273dc;
    color: #fff;
}
.pub-filter-btn.is-active:hover {
    background-color: #2366d1;
    border-color: #2366d1;
}

.publication-block { transition: opacity 0.3s ease, max-height 0.3s ease; }
.publication-block.pub-hidden {
    display: none !important;
}

hr.pub-divider {
    border: none;
    border-top: 1px solid #e8e8e8;
    margin: 2rem 0;
}

.team-toggle {
    cursor: pointer;
    color: #3273dc;
    font-weight: 500;
    transition: color 0.2s ease;
}
.team-toggle:hover { color: #2366d1; text-decoration: underline; }
.team-toggle i { font-size: 0.75em; margin-left: 0.15em; transition: transform 0.25s ease; }
.team-toggle.is-expanded i { transform: rotate(180deg); }
.team-authors { display: inline; }
