/* The red palette: warm paper, ink, and a restrained Peking University red.
   Every visual override is scoped so the other palettes stay independent. */
@font-face {
    font-family: "Scholar Serif";
    src: url("../fonts/scholar-serif-400.woff2") format("woff2");
    font-style: normal;
    font-weight: 400;
    font-display: swap;
}
@font-face {
    font-family: "Scholar Serif";
    src: url("../fonts/scholar-serif-600.woff2") format("woff2");
    font-style: normal;
    font-weight: 600;
    font-display: swap;
}

.scholar-only { display: none; }

:root[data-accent="red"] {
    --accent: #972b32;
    --accent-2: #b66d52;
    --accent-gradient: linear-gradient(125deg, #8e2930, #b56b53);
    --bg: #efe5d8;
    --bg-accent: radial-gradient(ellipse at 0% 22%, #b868592e, transparent 52%),
                 radial-gradient(ellipse at 100% 6%, #bd895c24, transparent 58%),
                 linear-gradient(180deg, #faf4e9aa, #efe5d833 60%, #decbbd66);
    --card-bg: #fffaf2;
    --card-bg-elevated: #fffdf8;
    --text: #423e38;
    --text-muted: #746e64;
    --heading: #282c29;
    --border: #8e665732;
    --border-strong: #82765d4d;
    --shadow: 0 5px 24px #774c320d;
    --shadow-hover: 0 8px 30px #774c3212;
    --navbar-bg: #f3e9ddef;
    --scholar-ink: #923d3d;
    --scholar-card-wash: #b9704f16;
    --scholar-header-wash: #972b320a;
    --scholar-gold: #ac8042;
    --scholar-foil-line: #ac82484d;
    --scholar-foil-shine: #d3a457;
    --scholar-halo: radial-gradient(circle at 40% 32%, #fff9dcc4, #dfb46740 38%, #b4574320 60%, transparent 72%);
    --scholar-pointer-light: #dfbb7126;
    --link: #902b32;
    --link-hover: #b0493d;
    --badge-bg: #972b320b;
    --badge-text: #902b32;
    --scholar-serif: "Scholar Serif", "Noto Serif SC", "Songti SC", "STSong", "SimSun", Georgia, serif;
    --paper-grain: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='p'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.87' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23776d5f' opacity='.035' filter='url(%23p)' d='M0 0h180v180H0z'/%3E%3C/svg%3E");
}

:root[data-theme="dark"][data-accent="red"] {
    --bg: #261e1d;
    --bg-accent: radial-gradient(ellipse at 0% 22%, #913f3733, transparent 52%),
                 radial-gradient(ellipse at 100% 6%, #a56b3922, transparent 58%),
                 linear-gradient(180deg, #251e1d44, #211a1966 60%, #160f1477);
    --card-bg: #2d2523;
    --card-bg-elevated: #302c27;
    --text: #ddd6c9;
    --text-muted: #b3a899;
    --heading: #f0e8d9;
    --border: #c4ac852b;
    --border-strong: #c4ac854d;
    --shadow: 0 3px 18px #0000000a;
    --shadow-hover: 0 8px 30px #00000014;
    --navbar-bg: #261e1def;
    --scholar-ink: #d29a84;
    --scholar-card-wash: #cc87501a;
    --scholar-header-wash: #d0906b0a;
    --scholar-gold: #d5af6b;
    --scholar-foil-line: #d8b8793d;
    --scholar-foil-shine: #f5d693;
    --scholar-halo: radial-gradient(circle at 40% 32%, #e3b45e30, #bf714f20 40%, #913e2e0d 62%, transparent 72%);
    --scholar-pointer-light: #d9ab5424;
    --link: #e1a195;
    --link-hover: #f2c4ad;
    --badge-bg: #b9615422;
    --badge-text: #e1a195;
}

:root[data-accent="red"] body {
    isolation: isolate;
    zoom: 1;
    padding-top: 6.5rem;
    background-image: var(--paper-grain), var(--bg-accent);
    background-repeat: repeat, no-repeat, no-repeat, no-repeat;
    line-height: 1.75;
}
/* The tower lives in the page margin on wide screens; its compact companion
   moves into the profile's unused lower corner when the margins disappear. */
:root[data-accent="red"] .scholar-backdrop { --scholar-tower-width: clamp(130px, calc((100vw - 1140px) * .44), 210px); display: block; position: fixed; inset: 0; z-index: -1; overflow: hidden; pointer-events: none; }
:root[data-accent="red"] .scholar-boya {
    position: absolute;
    background: var(--scholar-ink);
    -webkit-mask: url("../images/boya-tower.svg") center / contain no-repeat;
    mask: url("../images/boya-tower.svg") center / contain no-repeat;
}
:root[data-accent="red"] .scholar-backdrop-tower { left: max(4px, calc((100vw - 1140px) / 4 - var(--scholar-tower-width) / 2)); top: 150px; width: var(--scholar-tower-width); aspect-ratio: 240 / 864; max-height: calc(100vh - 180px); opacity: .26; }
:root[data-accent="red"] .scholar-backdrop-waves { position: absolute; left: 0; bottom: -4vh; width: 100%; height: 50vh; color: var(--scholar-ink); opacity: .17; }
:root[data-accent="red"] .scholar-lake-glints { stroke: var(--scholar-gold); stroke-width: 1.6; stroke-linecap: round; stroke-dasharray: 24 400 80 650; opacity: .9; }
:root[data-accent="red"] .scholar-card-tower { display: none; }
:root[data-accent="red"] .scholar-library { position: absolute; right: 18px; bottom: 15px; width: 290px; height: 205px; background: var(--scholar-ink); -webkit-mask: url("../images/pku-library.svg") right bottom / contain no-repeat; mask: url("../images/pku-library.svg") right bottom / contain no-repeat; opacity: .13; }
:root[data-theme="dark"][data-accent="red"] .scholar-library { opacity: .15; }
:root[data-accent="red"] ::selection { background: #972b3226; color: var(--heading); }
:root[data-accent="red"] :focus-visible { outline: 2px solid var(--link); outline-offset: 5px; }
:root[data-accent="red"] .container { max-width: 1140px; }
:root[data-accent="red"] .navbar {
    min-height: 72px;
    box-shadow: none !important;
    border-bottom-color: var(--border);
}
:root[data-accent="red"] .navbar-brand strong {
    font-family: var(--scholar-serif);
    font-weight: 600;
    font-size: 1.25rem;
    letter-spacing: .02em;
    background: none;
    color: var(--heading);
    -webkit-text-fill-color: currentColor;
}
:root[data-accent="red"] .navbar-brand::before {
    content: "";
    display: inline-block;
    width: 7px;
    height: 20px;
    background: var(--accent);
    margin-right: 12px;
    vertical-align: -2px;
}
:root[data-accent="red"] .navbar .nav-link { font-size: .88rem; padding-inline: .85rem; }
:root[data-accent="red"] .navbar .nav-item.active .nav-link { color: var(--link) !important; }
:root[data-accent="red"] .navbar .nav-item.active .nav-link::after {
    height: 1px;
    left: .85rem;
    right: .85rem;
    background: var(--link);
}
:root[data-accent="red"] .accent-picker { gap: .55rem; margin-left: .5rem; }
:root[data-accent="red"] .accent-dot { width: 13px; height: 13px; }
:root[data-accent="red"] .theme-toggle { border-color: transparent; background: transparent; }
:root[data-accent="red"] .scholar-reading-progress { display: block; position: absolute; left: 0; right: 0; bottom: -1px; height: 2px; pointer-events: none; }
:root[data-accent="red"] .scholar-reading-progress span { display: block; width: 100%; height: 100%; background: linear-gradient(90deg, var(--accent), var(--scholar-foil-shine)); transform: scaleX(0); transform-origin: left; }

/* The opening page of a notebook. */
:root[data-accent="red"] .card,
:root[data-accent="red"] .rounded-sm,
:root[data-accent="red"] .news-card { border-radius: 3px !important; }
:root[data-accent="red"] .card,
:root[data-accent="red"] .news-card,
:root[data-accent="red"] .bg-white.shadow-sm { background-image: var(--paper-grain), linear-gradient(125deg, var(--scholar-card-wash), transparent 55%); }
:root[data-accent="red"] .card:hover { transform: none; box-shadow: var(--shadow) !important; }
:root[data-accent="red"] .profile-card {
    border: 1px solid var(--border) !important;
    border-top: 2px solid var(--accent) !important;
    background-image: var(--paper-grain), radial-gradient(ellipse at 100% 0%, var(--scholar-card-wash), transparent 65%);
    isolation: isolate;
    --shadow: 0 14px 48px #704c3215, 0 2px 6px #704c3209;
    box-shadow: var(--shadow) !important;
}
:root[data-theme="dark"][data-accent="red"] .profile-card { --shadow: 0 18px 50px #08030838, 0 1px 0 #edc88c09 inset; }
:root[data-accent="red"] .profile-card .card-body { padding: 2rem 3.5rem 1.65rem !important; }
:root[data-accent="red"] .scholar-masthead {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    margin-bottom: 2.6rem;
    padding-bottom: 1.15rem;
    border-bottom: 1px solid var(--border);
    border-image: linear-gradient(90deg, var(--scholar-gold), var(--border), transparent) 1;
    font-size: .64rem;
    letter-spacing: .18em;
    color: var(--text-muted);
}
:root[data-accent="red"] .scholar-kicker { color: var(--link); letter-spacing: .24em; }
:root[data-accent="red"] .scholar-edition { font-family: Georgia, serif; font-size: .67rem; }
:root[data-accent="red"] .profile-heading { align-items: flex-start; gap: 1.25rem; }
:root[data-accent="red"] .profile-card .h1 {
    font-family: var(--scholar-serif);
    font-size: clamp(2.75rem, 4.6vw, 4.15rem);
    font-weight: 600 !important;
    letter-spacing: .08em;
    line-height: 1.3;
    margin: -.2rem 0 1.65rem;
    color: var(--heading);
    background: none;
    -webkit-text-fill-color: currentColor;
}
:root[data-accent="red"] .profile-card .h1 small {
    display: block;
    font-size: .92rem;
    letter-spacing: .08em;
    margin-top: .55rem;
    font-weight: 400;
    line-height: 1.5;
}
:root[data-accent="red"] .scholar-seal {
    display: inline-block;
    border: 1px solid var(--accent);
    outline: 1px solid var(--accent);
    outline-offset: -4px;
    border-radius: 2px 3px 2px 1px;
    padding: 6px 7px;
    margin-top: .5rem;
    color: #fff1d7;
    background: linear-gradient(145deg, #a83c3d, #7d2530);
    outline-color: #f8d7afaa;
    box-shadow: 0 4px 10px #5b241f1a;
    font: 600 .85rem/1.35 var(--scholar-serif);
    transform: rotate(-5deg);
    flex: 0 0 auto;
}
:root[data-theme="dark"][data-accent="red"] .scholar-seal { color: #f4dfba; border-color: #b67e56; outline-color: #edc89588; }
:root[data-accent="red"] .profile-card .text-profile-position { font-size: .84rem; line-height: 1.9; gap: .6rem; }
:root[data-accent="red"] .profile-card .positions-list { flex-direction: column-reverse; gap: .2rem; }
:root[data-accent="red"] .profile-card .position-sep { display: none; }
:root[data-accent="red"] .profile-card .position-item { white-space: normal; }
:root[data-accent="red"] .profile-card .gs-cite { margin-left: 0 !important; font-weight: 400; }
:root[data-accent="red"] .profile-card .text-profile-bio { font-size: .9rem; line-height: 1.95; margin-top: 1.35rem !important; }
:root[data-accent="red"] .profile-card .text-profile-bio p { margin-bottom: .85rem; }
:root[data-accent="red"] .profile-card .text-profile-bio b { font-weight: 600; }
:root[data-accent="red"] .portrait-col { width: 238px; margin: .25rem 0 0 2.1rem; }
:root[data-accent="red"] .portrait-col .portrait-trigger {
    position: relative;
    display: block;
    margin: .5rem .45rem 1.6rem;
}
:root[data-accent="red"] .portrait-col .portrait-trigger::before {
    content: "";
    position: absolute;
    inset: -9px 9px 9px -9px;
    border: 1px solid var(--scholar-gold);
    background: linear-gradient(145deg, #bc95521a, transparent 65%);
    pointer-events: none;
    transition: transform .7s ease;
}
:root[data-accent="red"] .portrait-col .portrait-img {
    position: relative;
    border: 5px solid var(--card-bg-elevated);
    border-radius: 1px;
    padding: 0;
    background: var(--card-bg-elevated);
    box-shadow: 0 15px 34px #64362128, 0 3px 8px #4f2c1710;
    filter: saturate(.72);
    transform: rotate(2deg);
    transition: transform .7s ease, filter .7s ease;
}
:root[data-accent="red"] .portrait-col .portrait-trigger:hover .portrait-img { transform: rotate(0); filter: saturate(1); }
:root[data-accent="red"] .portrait-col .portrait-trigger:hover::before { transform: translate(3px, -3px); }
:root[data-accent="red"] .portrait-col .portrait-trigger::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(112deg, transparent 45%, #fff7de6b 50%, transparent 55%) 100% 0 / 300% 100%;
    opacity: 0;
    transform: rotate(2deg);
    transition: transform .7s ease;
}
:root[data-accent="red"] .portrait-col .portrait-trigger:hover::after,
:root[data-accent="red"] .portrait-col .portrait-trigger:focus-visible::after { transform: rotate(0); }
:root[data-accent="red"] .portrait-divider { margin: 1.1rem 1.5rem .85rem; }
:root[data-accent="red"] .portrait-divider span { width: 4px; height: 4px; border-radius: 0; box-shadow: none; transform: rotate(45deg); }
:root[data-accent="red"] .portrait-tagline { font-size: .8rem; font-style: normal; line-height: 1.9; padding: 0 .5rem; }
:root[data-accent="red"] .portrait-col .social-icons { margin-top: 1.25rem; gap: 1.1rem; }
:root[data-accent="red"] .social-icons a { font-size: 1.05rem; color: var(--text-muted); }
:root[data-accent="red"] .social-icons a:hover { color: var(--link); }
:root[data-accent="red"] .scholar-actions { display: flex; align-items: center; gap: 1.6rem; margin: 1.65rem 0 2.2rem; font-size: .8rem; }
:root[data-accent="red"] .scholar-primary-link {
    display: inline-flex;
    align-items: center;
    gap: 1.6rem;
    padding: .6rem 1.1rem;
    color: #fffaf1;
    background: linear-gradient(120deg, #8b2530, #a43a3d 65%, #9a3835);
    border: 1px solid var(--accent);
    border-radius: 2px;
    box-shadow: inset 0 1px 0 #ffe1a52b, 0 5px 14px #8c293022;
    transition: background .3s, transform .3s;
}
:root[data-accent="red"] .scholar-primary-link:hover { color: #fff; background: #7d222b; transform: translateY(-2px); }
:root[data-accent="red"] .scholar-primary-link span { transition: transform .3s ease; }
:root[data-accent="red"] .scholar-primary-link:hover span,
:root[data-accent="red"] .scholar-primary-link:focus-visible span { transform: translate(2px, -2px); }
:root[data-accent="red"] .scholar-news-link { position: relative; display: inline-flex; align-items: center; color: var(--text-muted); }
:root[data-accent="red"] .scholar-news-link::after { content: ""; position: absolute; left: 0; right: 0; bottom: -3px; height: 1px; background: linear-gradient(90deg, var(--link), var(--scholar-gold)); transform: scaleX(0); transform-origin: right; transition: transform .26s cubic-bezier(.2, .8, .2, 1); }
:root[data-accent="red"] .scholar-news-link:hover::after,
:root[data-accent="red"] .scholar-news-link:focus-visible::after { transform: scaleX(1); transform-origin: left; }
:root[data-accent="red"] .scholar-news-link span { margin-left: .6rem; }
:root[data-accent="red"] .profile-sep { margin: .3rem 0 1.25rem; border: 0; height: 1px; background: linear-gradient(90deg, var(--scholar-foil-line), var(--border), transparent); }
:root[data-accent="red"] .research-interests { font-size: .74rem; gap: .6rem; }
:root[data-accent="red"] .ri-label { font-weight: 400; color: var(--text-muted); }
:root[data-accent="red"] .ri-tag { font-size: .72rem; font-weight: 400; border-radius: 2px; background: transparent; padding: .2rem .5rem; }
:root[data-accent="red"] .profile-card .latest-news { flex-basis: 100%; margin: .3rem 0 0 !important; font-size: .72rem; }
:root[data-accent="red"] .profile-card .latest-news .ln-text { max-width: 65ch; }

/* All ambient decoration stays behind the text and follows the scene's motion controls. */
:root[data-accent="red"] .scholar-scene { display: block; position: absolute; inset: 0; overflow: hidden; pointer-events: none; z-index: 0; }
:root[data-accent="red"] .scholar-halo {
    position: absolute;
    top: 42px;
    right: -6px;
    width: 360px;
    aspect-ratio: 1;
    border-radius: 50%;
    background: var(--scholar-halo);
    transform: translate(var(--ink-offset-x, 0px), var(--ink-offset-y, 0px));
    transition: transform .9s cubic-bezier(.2, .7, .3, 1);
}
:root[data-accent="red"] .scholar-halo::before,
:root[data-accent="red"] .scholar-halo::after { content: ""; position: absolute; inset: 25px; border: 1px solid var(--scholar-foil-line); border-radius: 50%; }
:root[data-accent="red"] .scholar-halo::after { inset: 9px; opacity: .55; clip-path: inset(0 0 58% 0); }
:root[data-accent="red"] .scholar-page-frame { position: absolute; inset: 12px; border: 1px solid var(--scholar-foil-line); }
:root[data-accent="red"] .scholar-page-frame::before {
    content: "";
    position: absolute;
    inset: -1px;
    background:
        linear-gradient(var(--scholar-gold), var(--scholar-gold)) left top / 24px 1px,
        linear-gradient(var(--scholar-gold), var(--scholar-gold)) left top / 1px 24px,
        linear-gradient(var(--scholar-gold), var(--scholar-gold)) right bottom / 24px 1px,
        linear-gradient(var(--scholar-gold), var(--scholar-gold)) right bottom / 1px 24px;
    background-repeat: no-repeat;
}
:root[data-accent="red"] .scholar-page-frame::after {
    content: "";
    position: absolute;
    top: -15px;
    right: 16px;
    width: 20px;
    height: 65px;
    background: linear-gradient(90deg, transparent 15%, #e1b47b77 15% 19%, transparent 19% 81%, #e1b47b77 81% 85%, transparent 85%), linear-gradient(120deg, #681e2b, #a24042 65%, #7c2530);
    clip-path: polygon(0 0, 100% 0, 100% 100%, 50% 84%, 0 100%);
}
:root[data-accent="red"] .scholar-frame-glint { position: absolute; top: -1px; left: 0; width: 30%; height: 1px; background: linear-gradient(90deg, transparent, var(--scholar-foil-shine), transparent); opacity: 0; }
:root[data-accent="red"] .scholar-dust { position: absolute; inset: 0; }
:root[data-accent="red"] .scholar-dust span { --dust-size: 1.6px; --dust-drift: -8px; --dust-rise: 28px; --dust-peak: .44; position: absolute; left: var(--dust-x); top: var(--dust-y); width: var(--dust-size); height: var(--dust-size); border-radius: 50%; background: var(--scholar-foil-shine); box-shadow: 0 0 5px var(--scholar-foil-line); opacity: .2; }
:root[data-accent="red"] .scholar-dust span:nth-child(2n) { --dust-size: 2px; --dust-drift: 5px; --dust-rise: 34px; --dust-peak: .34; filter: blur(.2px); }
:root[data-accent="red"] .scholar-dust span:nth-child(3n) { --dust-size: 1.1px; --dust-drift: -12px; --dust-rise: 22px; --dust-peak: .26; }
:root[data-accent="red"] .scholar-wash {
    position: absolute;
    width: 550px;
    height: 550px;
    right: -150px;
    top: 45px;
    border-radius: 50%;
    background: radial-gradient(ellipse, #a7473120, #b8915a10 50%, transparent 70%);
}
:root[data-accent="red"] .profile-card::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    background: radial-gradient(280px circle at var(--ink-x, 70%) var(--ink-y, 30%), var(--scholar-pointer-light), transparent 75%);
    opacity: 0;
    transition: opacity 1s ease;
}
:root[data-accent="red"] .profile-card.ink-active::after { opacity: 1; }
:root[data-accent="red"] .scholar-landscape { position: absolute; bottom: -14px; width: 100%; height: 240px; color: var(--accent); opacity: .16; }
:root[data-accent="red"] .scholar-branch { opacity: .45; }
:root[data-accent="red"] .profile-watermark { background-size: 300px; background-position: right 10px top 80px; opacity: .035; }
:root[data-theme="dark"][data-accent="red"] .profile-watermark { opacity: .065; }
:root[data-theme="dark"][data-accent="red"] .scholar-landscape { color: #e3a18c; opacity: .16; }
:root[data-theme="dark"][data-accent="red"] .scholar-wash { background: radial-gradient(ellipse, #be775418, transparent 70%); }

/* Book-like section rhythm and thin rules instead of raised panels. */
:root[data-accent="red"] .reveal + .reveal { margin-top: 2.4rem; }
:root[data-accent="red"] .scholar-section-card { position: relative; isolation: isolate; border-color: var(--scholar-foil-line) !important; }
:root[data-accent="red"] .scholar-section-card::before { content: ""; position: absolute; top: 0; left: 18px; right: 18px; height: 2px; background: linear-gradient(90deg, var(--accent), var(--scholar-gold) 32%, transparent 78%); pointer-events: none; }
:root[data-accent="red"] .scholar-section-card::after { content: ""; position: absolute; right: 10px; bottom: 10px; width: 18px; height: 18px; border-right: 1px solid var(--scholar-foil-line); border-bottom: 1px solid var(--scholar-foil-line); pointer-events: none; }
:root[data-accent="red"] .exp-section-title,
:root[data-accent="red"] .news-head,
:root[data-accent="red"] .bg-white > h6,
:root[data-accent="red"] .pub-title { font-family: var(--scholar-serif); font-weight: 600 !important; }
:root[data-accent="red"] .exp-section-title { font-size: 1.15rem; letter-spacing: .06em; margin-bottom: 1.4rem; padding-left: .9rem; }
:root[data-accent="red"] .exp-section-title::before { width: 2px; border-radius: 0; background: linear-gradient(var(--accent) 65%, var(--scholar-gold)); }
:root[data-accent="red"] .exp-list { margin-left: 3px; padding-left: 12px; border-left: 1px solid var(--scholar-foil-line); }
:root[data-accent="red"] .exp-item { position: relative; padding: .8rem .6rem .8rem .8rem; gap: .85rem; border-radius: 2px; }
:root[data-accent="red"] .exp-item::before { content: ""; position: absolute; left: -15px; top: 1.35rem; width: 5px; height: 5px; background: var(--accent); transform: rotate(45deg); box-shadow: 0 0 0 4px var(--card-bg); transition: transform .24s ease, box-shadow .24s ease; }
:root[data-accent="red"] .exp-item:hover::before { transform: rotate(45deg) scale(1.15); box-shadow: 0 0 0 4px var(--card-bg), 0 0 0 5px var(--scholar-foil-line); }
:root[data-accent="red"] .exp-logo { width: 34px; height: 34px; flex-basis: 34px; padding: 2px; border: 1px solid var(--scholar-foil-line); border-radius: 50%; background: var(--card-bg-elevated); }
:root[data-accent="red"] .exp-name { font-size: .87rem; font-weight: 600; }
:root[data-accent="red"] .exp-sub { font-size: .77rem; line-height: 1.8; }
:root[data-accent="red"] .exp-date,
:root[data-accent="red"] .award-date { background: transparent; color: var(--text-muted); border-radius: 0; padding-inline: 0; font-size: .68rem; }
:root[data-accent="red"] .exp-head { flex-wrap: wrap; gap: .1rem .6rem; }
:root[data-accent="red"] .award-item { font-size: .78rem; padding-block: .45rem; border-radius: 0; border-bottom: 1px dashed var(--border); }
:root[data-accent="red"] .award-item:last-child { border-bottom: 0; }
:root[data-accent="red"] .award-item::before { width: 3px; height: 3px; top: 1rem; border-radius: 0; }
:root[data-accent="red"] .news-head,
:root[data-accent="red"] .bg-white > h6.border-bottom { font-size: 1.15rem; padding: 1.4rem 1.65rem !important; letter-spacing: .04em; }
:root[data-accent="red"] .news-head,
:root[data-accent="red"] .bg-white > h6.border-bottom { background-image: linear-gradient(90deg, var(--scholar-header-wash), transparent 75%); }
:root[data-accent="red"] .bg-white > h6 a { font-family: "Lato", "Noto Sans SC", sans-serif; font-size: .75rem; letter-spacing: 0; font-weight: 400; }
:root[data-accent="red"] .news-head .fas,
:root[data-accent="red"] .bg-white > h6 .fa-star { font-size: .8rem; margin-right: .5rem; color: var(--scholar-gold); }
:root[data-accent="red"] .news-body { padding: .8rem 1.65rem 1.3rem; }
:root[data-accent="red"] .news-year-label { align-self: flex-start; padding: .18rem .1rem; border-top: 1px solid var(--scholar-foil-line); border-bottom: 1px solid var(--scholar-foil-line); font-family: Georgia, var(--scholar-serif); color: var(--link); font-weight: 400; background: var(--scholar-header-wash); -webkit-text-fill-color: currentColor; line-height: 1.4; }
:root[data-accent="red"] .news-list { border-left: 1px solid var(--scholar-foil-line); }
:root[data-accent="red"] .news-item { padding-block: .65rem; font-size: .84rem; border-radius: 2px; }
:root[data-accent="red"] .news-item:hover { transform: none; background: linear-gradient(90deg, var(--scholar-header-wash), transparent 90%); }
:root[data-accent="red"] .news-dot { width: 5px; height: 5px; left: calc(-1.1rem - 1px); top: 1.05rem; border-radius: 0; box-shadow: 0 0 0 3px var(--card-bg); transform: translateX(-50%) rotate(45deg); transition: transform .24s ease, box-shadow .24s ease; }
:root[data-accent="red"] .news-item:hover .news-dot { transform: translateX(-50%) rotate(45deg) scale(1.15); box-shadow: 0 0 0 3px var(--card-bg), 0 0 0 4px var(--scholar-foil-line); }
:root[data-accent="red"] .news-date { font: 400 .7rem/1.5 Georgia, serif; letter-spacing: .02em; opacity: 1; }
:root[data-accent="red"] .news-toggle { padding-block: .75rem; font-size: .75rem; letter-spacing: .03em; border-top-color: var(--scholar-foil-line); background: var(--scholar-header-wash); }
:root[data-accent="red"] .news-toggle:hover { background: var(--accent-soft); }
:root[data-accent="red"] .news-toggle .fas { color: var(--scholar-gold); }
:root[data-accent="red"] .pub-title { font-size: 1.18rem; line-height: 1.55; }
:root[data-accent="red"] .publication-row .small { line-height: 1.8; }
:root[data-accent="red"] .publication-row::before { width: 2px; background: var(--accent); transform: scaleY(0); transform-origin: top; transition: transform .28s cubic-bezier(.2, .8, .2, 1), opacity .2s ease; }
:root[data-accent="red"] .publication-row:hover .pub-title { color: var(--link); }
:root[data-accent="red"] .publication-row { border-radius: 0; }
:root[data-accent="red"] .publication-row:focus-within { background-color: var(--accent-soft); }
:root[data-accent="red"] .publication-row:hover::before,
:root[data-accent="red"] .publication-row:focus-within::before { opacity: 1; transform: scaleY(1); }
:root[data-accent="red"] .publication-row:focus-within .pub-title { color: var(--link); }
:root[data-accent="red"] .publication-row img.lazy,
:root[data-accent="red"] .publication-row .bubble-visual-hash { border-color: var(--scholar-foil-line); padding: 3px; background-color: var(--card-bg-elevated); }
:root[data-accent="red"] .abstract-links a { padding: .13rem .5rem; border: 1px solid var(--scholar-foil-line); border-radius: 2px; background: transparent; font-weight: 500; }
:root[data-accent="red"] .abstract-links a:hover,
:root[data-accent="red"] .abstract-links a:focus-visible { color: #fff8e9 !important; background: var(--accent); border-color: var(--accent); }
:root[data-accent="red"] .papers-list > h2 { display: flex; align-items: center; gap: 1.25rem; margin-block: 1.4rem .9rem; font: 400 2.35rem/1.25 Georgia, var(--scholar-serif); }
:root[data-accent="red"] .papers-list > h2::after { content: ""; flex: 1; height: 1px; background: linear-gradient(90deg, var(--scholar-foil-line), transparent); }
:root[data-accent="red"] #navbar-year { gap: .15rem; margin-top: 1.65rem; padding-left: .75rem; border-left: 1px solid var(--scholar-foil-line); }
:root[data-accent="red"] #navbar-year .nav-link { position: relative; border-radius: 0; padding: .55rem .75rem; font: 400 .9rem/1.5 Georgia, serif; background: transparent; }
:root[data-accent="red"] #navbar-year .nav-link.active { color: var(--link); background: linear-gradient(90deg, var(--scholar-header-wash), transparent); }
:root[data-accent="red"] #navbar-year .nav-link.active::before { content: ""; position: absolute; left: calc(-.75rem - 1px); top: .5rem; bottom: .5rem; width: 2px; background: linear-gradient(var(--accent), var(--scholar-gold)); }
:root[data-accent="red"] .badge { border-radius: 2px; }
:root[data-accent="red"] .footer { margin-top: 3rem; font-size: .72rem; }
:root[data-accent="red"] #news { scroll-margin-top: 90px; }
:root[data-accent="red"] .namecard { border-radius: 3px; }
:root[data-accent="red"] .namecard-name { font-family: var(--scholar-serif); }

@media (prefers-reduced-motion: no-preference) {
    :root[data-accent="red"] .scholar-wash { animation: scholar-breathe 18s ease-in-out infinite alternate; }
    :root[data-accent="red"] .scholar-ripples { transform-origin: 947px 207px; animation: scholar-lake 12s ease-in-out infinite; }
    :root[data-accent="red"].js .reveal { transform: translateY(14px); transition-duration: .85s; }
    :root[data-accent="red"].js .reveal.in-view { transform: none; }
    :root[data-accent="red"] .scholar-seal { animation: scholar-seal-in 1.1s ease both; }
    :root[data-accent="red"] .scholar-frame-glint { animation: scholar-frame-glint 2.4s ease-out .5s both; }
    :root[data-accent="red"] .scholar-dust span { animation: scholar-dust-float var(--dust-duration, 12s) ease-in-out infinite; animation-delay: var(--dust-delay, 0s); }
    :root[data-accent="red"] .portrait-col .portrait-trigger:hover::after,
    :root[data-accent="red"] .portrait-col .portrait-trigger:focus-visible::after { animation: scholar-portrait-gloss .95s cubic-bezier(.2, .65, .35, 1) both; }
}
:root[data-accent="red"] .scholar-scene.is-resting,
:root[data-accent="red"] .scholar-scene.is-resting *,
:root[data-accent="red"] .scholar-backdrop.is-resting * { animation-play-state: paused !important; }
@media (min-width: 768px) and (prefers-reduced-motion: no-preference) {
    :root[data-accent="red"] .scholar-lake-glints path { animation: scholar-lake-glint 28s linear infinite; }
    :root[data-accent="red"] .scholar-lake-glints path:nth-child(2) { animation-delay: -14s; }
}
@keyframes scholar-breathe { from { transform: translate(0, 0) scale(.95); } to { transform: translate(-32px, 20px) scale(1.08); } }
@keyframes scholar-lake { 0%, 100% { transform: scaleX(.94); opacity: .55; } 50% { transform: scaleX(1.05); opacity: 1; } }
@keyframes scholar-seal-in { from { opacity: 0; transform: translateY(-5px) rotate(-9deg) scale(1.12); } to { opacity: 1; transform: rotate(-5deg) scale(1); } }
@keyframes scholar-frame-glint { 0% { transform: translateX(-110%); opacity: 0; } 18% { opacity: .85; } 85% { opacity: .6; } 100% { transform: translateX(340%); opacity: 0; } }
@keyframes scholar-dust-float { 0% { transform: translate(0, 8px) scale(.65); opacity: 0; } 28% { opacity: var(--dust-peak); } 65% { transform: translate(calc(var(--dust-drift) * .55), calc(var(--dust-rise) * -.6)) scale(1); opacity: calc(var(--dust-peak) * .65); } 100% { transform: translate(var(--dust-drift), calc(var(--dust-rise) * -1)) scale(.55); opacity: 0; } }
@keyframes scholar-lake-glint { 0% { stroke-dashoffset: 0; opacity: 0; } 12%, 65% { opacity: .8; } 90% { opacity: 0; } 100% { stroke-dashoffset: -1154; opacity: 0; } }
@keyframes scholar-portrait-gloss { 0% { background-position: 100% 0; opacity: 0; } 18% { opacity: .32; } 100% { background-position: 0 0; opacity: 0; } }

@media (max-width: 1359.98px) {
    :root[data-accent="red"] .scholar-backdrop-tower { display: none; }
    :root[data-accent="red"] .scholar-card-tower { display: block; right: 306px; bottom: 20px; width: 110px; height: 195px; -webkit-mask-size: auto 185%; mask-size: auto 185%; -webkit-mask-position: center top; mask-position: center top; opacity: .12; }
}
@media (max-width: 991.98px) {
    :root[data-accent="red"] .profile-card .card-body { padding-inline: 2rem !important; }
    :root[data-accent="red"] .portrait-col { width: 200px; margin-left: 1rem; }
    :root[data-accent="red"] .scholar-edition { display: none; }
    :root[data-accent="red"] .scholar-halo { width: 320px; right: -20px; top: 42px; }
}
@media (max-width: 767.98px) {
    :root[data-accent="red"] body { padding-top: 5.8rem; }
    :root[data-accent="red"] .profile-card .card-body { padding: 1.3rem 1.4rem 1.4rem !important; }
    :root[data-accent="red"] .scholar-masthead { margin-bottom: 1.9rem; padding-bottom: 1rem; font-size: .58rem; }
    :root[data-accent="red"] .profile-heading { gap: .8rem; }
    :root[data-accent="red"] .profile-card .h1 { font-size: 2.5rem; margin-bottom: 1.2rem; letter-spacing: .04em; }
    :root[data-accent="red"] .profile-card .h1 small { font-size: .77rem; margin-top: .4rem; }
    :root[data-accent="red"] .scholar-seal { font-size: .67rem; padding: 5px; margin-top: .25rem; }
    :root[data-accent="red"] .profile-card .text-profile-bio { font-size: .86rem; }
    :root[data-accent="red"] .profile-card .rounded-circle { border: 1px solid var(--border-strong); padding: 3px; background: var(--card-bg); box-shadow: none; height: 56px !important; }
    :root[data-accent="red"] .scholar-actions { gap: 1.2rem; font-size: .75rem; margin-bottom: 1.8rem; }
    :root[data-accent="red"] .scholar-primary-link { gap: .75rem; }
    :root[data-accent="red"] .research-interests { gap: .2rem; }
    :root[data-accent="red"] .ri-label { flex-basis: 100%; }
    :root[data-accent="red"] .profile-card .latest-news .ln-text { max-width: 42vw; }
    :root[data-accent="red"] .reveal + .reveal { margin-top: 1.5rem; }
    :root[data-accent="red"] .scholar-landscape { opacity: .1; }
    :root[data-accent="red"] .scholar-page-frame { inset: 7px; }
    :root[data-accent="red"] .scholar-page-frame::after { top: -10px; right: 12px; width: 16px; height: 48px; }
    :root[data-accent="red"] .scholar-halo { width: 260px; right: -76px; top: 14px; }
    :root[data-accent="red"] .scholar-dust span:nth-child(n+4) { display: none; }
    :root[data-accent="red"] .scholar-card-tower { right: 200px; bottom: 22px; width: 72px; height: 137px; opacity: .075; }
    :root[data-accent="red"] .scholar-library { right: 6px; bottom: 18px; width: 210px; height: 165px; opacity: .085; }
    :root[data-theme="dark"][data-accent="red"] .scholar-library { opacity: .095; }
    :root[data-accent="red"] .scholar-backdrop-waves { opacity: .1; }
    :root[data-accent="red"] .profile-watermark { background-size: 150px; background-position: right -24px top 40px; }
    :root[data-accent="red"] .news-body { padding-inline: 1rem; }
    :root[data-accent="red"] .news-head,
    :root[data-accent="red"] .bg-white > h6.border-bottom { padding-inline: 1.25rem !important; }
    :root[data-accent="red"] .exp-section-title { margin-top: .5rem; margin-bottom: .8rem; }
    :root[data-accent="red"] .pub-title { font-size: 1.1rem; }
}
@media (max-width: 575.98px) {
    :root[data-accent="red"] .navbar .nav-link { padding-inline: 0; }
    :root[data-accent="red"] .navbar .nav-item.active .nav-link::after { left: 0; right: auto; width: 22px; }
    :root[data-accent="red"] .accent-picker { margin-left: 0; }
    :root[data-accent="red"] .scholar-kicker { letter-spacing: .16em; }
    :root[data-accent="red"] .news-date { margin-left: 0; }
}
@media (max-width: 359.98px) {
    :root[data-accent="red"][lang="en"] .profile-card .h1 { font-size: 2.1rem; letter-spacing: 0; }
}
@media (prefers-reduced-motion: reduce) {
    :root[data-accent="red"] { scroll-behavior: auto; }
    :root[data-accent="red"] *,
    :root[data-accent="red"] *::before,
    :root[data-accent="red"] *::after { animation: none !important; transition: none !important; }
    :root[data-accent="red"] .profile-card::after { display: none; }
    :root[data-accent="red"] .scholar-dust,
    :root[data-accent="red"] .scholar-frame-glint,
    :root[data-accent="red"] .scholar-lake-glints { display: none; }
}
