:root{--bw-text-strong:#111827;--bw-text:#1f2937;--bw-text-muted:#4b5563;--bw-accent:#4338ca;--bw-accent-soft:#eef2ff;--bw-card:#ffffff;--bw-card-border:#e5e7eb;--bw-focus:#4338ca;--bw-button:#4338ca}html.dark{--bw-text-strong:#f9fafb;--bw-text:#e5e7eb;--bw-text-muted:#cbd5e1;--bw-accent:#93c5fd;--bw-accent-soft:#1e3a5f;--bw-card:#1e293b;--bw-card-border:#334155;--bw-focus:#93c5fd;--bw-button:#1d4ed8}.resume-biography p.text-2xl{color:var(--bw-accent)}.resume-biography p.text-lg{color:var(--bw-text)}.resume-biography a.rounded-full{color:var(--bw-text-muted);background-color:var(--bw-card);border-color:var(--bw-card-border)}.resume-biography a.rounded-full:hover{color:var(--bw-accent)}.resume-biography .group.rounded-xl{background-image:none;background-color:var(--bw-card);border:1px solid var(--bw-card-border);backdrop-filter:none;-webkit-backdrop-filter:none}.resume-biography .group p.text-xl{color:var(--bw-text-strong)}.resume-biography .group p.text-sm{color:var(--bw-text-muted);font-size:.9375rem;line-height:1.5}.resume-biography .group p.text-base{color:var(--bw-text)}.resume-biography .group svg{color:var(--bw-accent)}.resume-biography .group div.rounded-full{background-color:var(--bw-card)}.resume-biography a.bg-gradient-to-r{background-image:none;background-color:var(--bw-button);color:#fff}.resume-biography a.bg-gradient-to-r:hover{filter:brightness(1.1)}.resume-biography .flex-wrap>span.rounded-full{color:var(--bw-text-strong);background-color:var(--bw-accent-soft);border-color:var(--bw-card-border)}.resume-biography .prose{color:var(--bw-text)}#experience .backdrop-blur-sm.rounded-xl{background-color:var(--bw-card);border-color:var(--bw-card-border);backdrop-filter:none;-webkit-backdrop-filter:none}#experience h3,#experience .text-xl.font-bold{color:var(--bw-text-strong)}#experience p.font-medium{color:var(--bw-accent)}#experience .shrink-0.text-sm,#experience time{color:var(--bw-text-muted);font-size:.9375rem}#experience time span{color:var(--bw-accent)}#experience .prose{color:var(--bw-text)}#experience a.text-sm{color:var(--bw-text-muted)}#experience a.text-sm:hover{color:var(--bw-accent)}#awards .p-6.rounded-lg{background-color:var(--bw-card);border-color:var(--bw-card-border)}#awards h5{color:var(--bw-text-strong)}#awards h5>span.inline-flex{color:var(--bw-accent)}#awards .text-sm{color:var(--bw-text-muted);line-height:1.4}#awards .font-normal{color:var(--bw-text)}.pub-list-item{color:var(--bw-text);line-height:1.65;margin-bottom:1.25rem!important}.pub-list-item .li-cite-author{color:var(--bw-text-muted)}.pub-list-item .li-cite-author .font-bold{color:var(--bw-text-strong)}.pub-list-item>a.underline{color:var(--bw-text-strong);font-weight:600;text-decoration-color:var(--bw-card-border);text-underline-offset:3px}.pub-list-item>a.underline:hover{color:var(--bw-accent);text-decoration-color:initial}.pub-list-item .flex-wrap{gap:.375rem .5rem;margin-top:.375rem}.pub-list-item .flex-wrap>*{margin-inline:0!important}.hb-attachment-link,html.dark .hb-attachment-link{color:var(--bw-accent);font-size:.8125rem;text-transform:none;letter-spacing:0;padding:.125rem .5rem!important;margin:0!important;border:1px solid var(--bw-card-border);border-radius:.375rem;background-color:var(--bw-card)}.hb-attachment-link:hover,html.dark .hb-attachment-link:hover{color:var(--bw-accent);border-color:initial;text-decoration:none}.callout .callout-content,.callout .callout-body{color:var(--bw-text)}.callout .callout-title{color:var(--bw-text-strong)}.callout a{color:var(--bw-accent);font-weight:600}html.dark .callout.bg-blue-100{background-color:#172554}footer.container{color:var(--bw-text)}footer.container a{color:var(--bw-text)}a:focus-visible,button:focus-visible{outline:2px solid var(--bw-focus);outline-offset:2px;border-radius:4px}