/* One terminal frame contains the entire blue site: chrome, output, and prompt.
   Other palettes use the default document flow. */
:root[data-accent="blue"] {
    --bg: #040916;
    --card-bg: #0a1426;
    --card-bg-elevated: #101e35;
    --text: #c3d2ea;
    --text-muted: #869fc3;
    --heading: #edf4ff;
    --border: #6f98e229;
    --border-strong: #6f98e24d;
    --link: #8bb8ff;
    --link-hover: #7cdeff;
    --badge-text: #a2c4ff;
    --navbar-bg: #081124d9;
    --terminal-surface: #0b162c;
    height: 100%;
}
:root[data-theme="dark"][data-accent="blue"] {
    --bg: #02050d;
    --card-bg: #080f1f;
    --card-bg-elevated: #101b30;
    --terminal-surface: #070f20;
}
:root[data-accent="blue"] body {
    display: flow-root;
    height: 100%;
    padding: 0;
    overflow: hidden;
    background-image: radial-gradient(ellipse at 50% 0, #203f783b, transparent 75%);
    background-size: auto;
}
:root[data-accent="blue"] .site-shell {
    position: relative;
    display: flex;
    flex-direction: column;
    width: calc(100% - 48px);
    max-width: 1480px;
    height: calc(100vh - 40px);
    height: calc(100dvh - 40px);
    margin: 20px auto;
    overflow: hidden;
    border: 1px solid #638eff55;
    border-radius: 14px;
    background: var(--terminal-surface);
    box-shadow: 0 25px 100px #0008, 0 0 70px #416bdb0c, inset 0 1px #83aeff22;
}
:root[data-accent="blue"] .terminal-watermark {
    display: block;
    position: absolute;
    inset: 110px -40px 100px 25%;
    background: url("../images/badges/deepseek.svg") no-repeat right 9% center / min(65vw, 660px) auto;
    opacity: .13;
    pointer-events: none;
}
:root[data-accent="blue"] .terminal-effects { display: block; position: absolute; inset: 0; overflow: hidden; pointer-events: none; }
:root[data-accent="blue"] .terminal-effects span { position: absolute; left: -250px; top: 15%; width: 230px; height: 1px; background: linear-gradient(90deg, transparent, #5ca9ff80, transparent); opacity: .2; }
:root[data-accent="blue"] .terminal-effects span:nth-child(2) { top: 55%; animation-delay: -7s; }
:root[data-accent="blue"] .terminal-effects span:nth-child(3) { top: 83%; animation-delay: -14s; }
:root[data-accent="blue"] .terminal-chrome {
    position: relative;
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: space-between;
    gap: 1.2rem;
    min-height: 57px;
    padding: .75rem 1.6rem;
    border-bottom: 1px solid #648ce126;
    background: #071020de;
    font: 400 .72rem/1.6 var(--agent-mono);
    color: #b2c9ed;
}
:root[data-accent="blue"] .terminal-title { display: flex; align-items: center; gap: .75rem; white-space: nowrap; }
:root[data-accent="blue"] .terminal-title img { width: 27px; height: 27px; }
:root[data-accent="blue"] .terminal-at { color: #6084ba; }
:root[data-accent="blue"] .terminal-title-separator { color: #345072; margin: 0 .5rem; }
:root[data-accent="blue"] .terminal-title strong { color: #7cabff; font-weight: 500; }
:root[data-accent="blue"] .site-shell > .navbar {
    display: none !important;
    position: absolute !important;
    inset: 14px 1.6rem auto auto;
    width: max-content;
    min-height: 0;
    padding: 0;
    margin: 0 !important;
    border: 0;
    border-radius: 0;
    background: transparent !important;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
}
:root[data-accent="blue"] .navbar > .container { max-width: none; padding: 0; }
:root[data-accent="blue"] .navbar-brand { display: none; }
:root[data-accent="blue"] .navbar-toggler,
:root[data-accent="blue"] .navbar-nav > .nav-item:not(:last-child) { display: none !important; }
:root[data-accent="blue"] .navbar-collapse { display: flex !important; flex-basis: auto; }
:root[data-accent="blue"] .navbar-nav { width: auto; margin: 0 !important; }
:root[data-accent="blue"] .navbar-nav > .nav-item:last-child { margin: 0 !important; }
:root[data-accent="blue"] .navbar .nav-link { padding: .7rem 1rem; color: #91a9cb !important; font-size: .7rem; font-family: var(--agent-mono), "Noto Sans SC", sans-serif; }
:root[data-accent="blue"] .navbar .nav-item.active .nav-link { color: #bcd6ff !important; background: #4d6bfe12; }
:root[data-accent="blue"] .navbar .nav-item.active .nav-link::after { left: 0; right: 0; bottom: 0; height: 1px; }
:root[data-accent="blue"] .theme-toggle { width: 27px; height: 27px; border: 0; color: #819bc3; }
:root[data-accent="blue"] .accent-dot { width: 12px; height: 12px; }

:root[data-accent="blue"] .site-main {
    position: relative;
    flex: 1 1 auto;
    min-height: 0;
    width: 100%;
    max-width: none;
    padding: 1.4rem 2.7rem 2.5rem;
    overflow: auto;
    overscroll-behavior: contain;
    scroll-behavior: smooth;
    scroll-padding-top: 1.2rem;
    scrollbar-width: thin;
    scrollbar-color: #345281 transparent;
    font-family: var(--agent-mono), "Noto Sans SC", sans-serif;
}
/* One command owns the output. Hidden panels remain available to other themes. */
:root[data-accent="blue"] [data-terminal-panel]:not(.is-terminal-active) { display: none !important; }
:root[data-accent="blue"] [data-terminal-panel].is-terminal-active { margin-top: 0 !important; }
:root[data-accent="blue"] .agent-only[data-terminal-panel].is-terminal-active { display: block; }
:root[data-accent="blue"] .terminal-shortcuts [aria-current="true"] { color: #bde4ff; text-decoration: underline; text-underline-offset: 4px; }
:root[data-accent="blue"] .terminal-classic-content,
:root[data-accent="blue"] .terminal-section-command { display: none !important; }
:root[data-accent="blue"] .terminal-native-output { display: block; max-width: 1100px; }
:root[data-accent="blue"] .terminal-output-command { display: flex; flex-wrap: wrap; align-items: baseline; gap: .6rem; margin: .25rem 0 1.6rem; font: 400 .82rem/1.8 var(--agent-mono); }
:root[data-accent="blue"] .terminal-echo-prompt { color: #82aaff; white-space: nowrap; }
:root[data-accent="blue"] .terminal-echo-prompt > span { color: #6db7d6; }
:root[data-accent="blue"] .terminal-echo-text { min-width: 0; color: #e2edff; font: inherit; overflow-wrap: anywhere; }
:root[data-accent="blue"] .terminal-kv { margin: 0 0 2rem; font-size: .83rem; line-height: 1.9; }
:root[data-accent="blue"] .terminal-kv > div { display: grid; grid-template-columns: 7.5rem minmax(0, 1fr); gap: 1rem; padding: .35rem 0; }
:root[data-accent="blue"] .terminal-kv dt { color: #6f96cc; font-weight: 400; }
:root[data-accent="blue"] .terminal-kv dt::after { content: ":"; }
:root[data-accent="blue"] .terminal-kv dd { margin: 0; color: #d0def3; }
:root[data-accent="blue"] .terminal-profile-header { --terminal-portrait-size: calc(224px * .70710678); display: grid; grid-template-columns: minmax(0, 1fr) calc(var(--terminal-portrait-size) + 16px); gap: 2rem; align-items: start; }
:root[data-accent="blue"] .terminal-portrait { width: calc(var(--terminal-portrait-size) + 16px); margin: 0; }
:root[data-accent="blue"] .terminal-portrait figcaption { display: flex; justify-content: space-between; gap: .5rem; margin-bottom: 9px; color: #6589bc; font-size: .6rem; line-height: 1.6; }
:root[data-accent="blue"] .terminal-portrait-frame {
    position: relative;
    padding: 7px;
    border: 1px solid transparent;
    border-radius: 3px;
    background: linear-gradient(145deg, #0d1a2c, #070f1d) padding-box,
                linear-gradient(135deg, #adcaf775, #41618d55 28%, #2c476d44 65%, #8aaee578) border-box;
    box-shadow: inset 0 1px 0 #ffffff05, 0 7px 22px #0206113d;
}
:root[data-accent="blue"] .terminal-portrait-frame::before {
    content: "";
    position: absolute;
    inset: -1px;
    border-radius: inherit;
    pointer-events: none;
    background:
        linear-gradient(90deg, #adcfffaa, transparent) top left / 12px 1px,
        linear-gradient(180deg, #adcfffaa, transparent) top left / 1px 12px,
        linear-gradient(270deg, #89b1e388, transparent) top right / 12px 1px,
        linear-gradient(180deg, #89b1e388, transparent) top right / 1px 12px,
        linear-gradient(90deg, #89b1e366, transparent) bottom left / 12px 1px,
        linear-gradient(0deg, #89b1e366, transparent) bottom left / 1px 12px,
        linear-gradient(270deg, #adcfff99, transparent) bottom right / 12px 1px,
        linear-gradient(0deg, #adcfff99, transparent) bottom right / 1px 12px;
    background-repeat: no-repeat;
}
:root[data-accent="blue"] .terminal-portrait-image { position: relative; aspect-ratio: 1; overflow: hidden; filter: drop-shadow(0 8px 16px #02081540); }
/* The original photo is framed closer to the face. The adaptive vector mask
   uses fine, narrow seams there and larger raised tiles around the perimeter. */
:root[data-accent="blue"] .terminal-portrait-surface {
    position: absolute;
    inset: 0;
    -webkit-mask-image: url("../images/terminal-portrait-mask.svg");
    mask-image: url("../images/terminal-portrait-mask.svg");
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
}
:root[data-accent="blue"] .terminal-portrait img { position: absolute; display: block; width: 150%; height: 150%; max-width: none; left: -18%; top: -28%; object-fit: cover; }
:root[data-accent="blue"] .terminal-portrait-image::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: url("../images/terminal-portrait-edges.svg") center / 100% 100% no-repeat;
}
:root[data-accent="blue"] .terminal-portrait-scan { position: absolute; top: 0; left: 0; right: 0; height: 2px; background: #8edcffb3; box-shadow: 0 0 10px #64baff88; opacity: 0; pointer-events: none; }
:root[data-accent="blue"] .terminal-text-links { display: flex; flex-wrap: wrap; gap: .3rem .9rem; }
:root[data-accent="blue"] .terminal-output-label { margin: 1.5rem 0 .8rem; color: #82b9f7; font: 500 .85rem/1.6 var(--agent-mono); }
:root[data-accent="blue"] .terminal-output-label::before { content: "# "; color: #45658e; }
:root[data-accent="blue"] .terminal-prose { max-width: 102ch; font-size: .82rem; line-height: 2; color: #b9cbe6; }
:root[data-accent="blue"] .terminal-prose b { color: #e2ecfc; font-weight: 600; }
:root[data-accent="blue"] .terminal-records { list-style: decimal-leading-zero; padding-left: 2rem; margin: 0 0 1.7rem; font-size: .8rem; line-height: 1.9; }
:root[data-accent="blue"] .terminal-records li { padding: .45rem 0 .7rem .7rem; }
:root[data-accent="blue"] .terminal-records li::marker { color: #48668e; font-size: .66rem; }
:root[data-accent="blue"] .terminal-record-head { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .2rem 1rem; }
:root[data-accent="blue"] .terminal-record-head strong { color: #dce8fc; font-weight: 500; }
:root[data-accent="blue"] .terminal-record-head > :last-child { color: #829dc4; font-size: .7rem; }
:root[data-accent="blue"] .terminal-record-detail { color: #93aaca; font-size: .76rem; }
:root[data-accent="blue"] .terminal-log { list-style: none; margin: 0; padding: 0; font-size: .8rem; line-height: 1.9; }
:root[data-accent="blue"] .terminal-log-header,
:root[data-accent="blue"] .terminal-log > li { display: grid; grid-template-columns: 8.5rem minmax(0, 1fr); gap: 1rem; padding: .7rem 0; border-bottom: 1px dashed #6387bd22; }
:root[data-accent="blue"] .terminal-log-header { color: #527cba; font-size: .68rem; letter-spacing: .1em; }
:root[data-accent="blue"] .terminal-log time { color: #789ccf; font-size: .73rem; white-space: nowrap; }
:root[data-accent="blue"] .publication-thumbnail { display: none !important; }
:root[data-accent="blue"] .publication-body { flex: 0 0 100%; max-width: 100%; padding: 1rem 0 !important; }
:root[data-accent="blue"] .papers-list { flex: 0 0 100%; max-width: 100%; }
:root[data-accent="blue"] .papers-index { display: block !important; flex: 0 0 100%; max-width: 100%; order: -1; margin-bottom: 1rem; }
:root[data-accent="blue"] #navbar-year { position: static !important; flex-direction: row !important; flex-wrap: wrap; gap: .7rem; }
:root[data-accent="blue"] #navbar-year a { padding: .25rem .4rem; }
:root[data-accent="blue"] .publication-row,
:root[data-accent="blue"] .pub-mobile-bg { background-image: none !important; background-color: transparent !important; }
:root[data-accent="blue"] .abstract-links a { border: 0; background: none; padding: .15rem .25rem .15rem 0; box-shadow: none; }
:root[data-accent="blue"] .site-main .card,
:root[data-accent="blue"] .site-main .news-card,
:root[data-accent="blue"] .site-main .bg-white,
:root[data-accent="blue"] .site-main .shadow-sm {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}
:root[data-accent="blue"] .site-main .card:hover { transform: none; }
:root[data-accent="blue"] .profile-card { overflow: visible; isolation: auto; }
:root[data-accent="blue"] .profile-card .card-body { padding: 0 !important; }
:root[data-accent="blue"] .profile-card .profile-watermark { display: none; }
:root[data-accent="blue"] .terminal-section-command { display: block; margin: .15rem 0 1.4rem; color: #b7cdf0; font: 400 .72rem/1.7 var(--agent-mono); }
:root[data-accent="blue"] .terminal-section-command > span { color: #67d3f7; margin-right: .7rem; }
:root[data-accent="blue"] .profile-main { display: block; margin: 0; }
:root[data-accent="blue"] .profile-intro { display: block; padding: 0; max-width: none; }
:root[data-accent="blue"] .profile-card .h1 { font: 600 2.6rem/1.3 var(--agent-mono), "Noto Sans SC", sans-serif; margin: .4rem 0 1.1rem; letter-spacing: -.035em; }
:root[data-accent="blue"] .profile-card .h1 small { display: inline-block; margin: 0 0 0 1rem; font-size: .8rem; vertical-align: middle; }
:root[data-accent="blue"] .profile-card .positions-list { flex-direction: row; gap: 1.2rem; }
:root[data-accent="blue"] .profile-card .text-profile-position { margin-bottom: 0; gap: 1rem; font-size: .72rem; }
:root[data-accent="blue"] .profile-card .gs-cite { border: 0; border-radius: 0; background: transparent; padding: 0; }
:root[data-accent="blue"] .profile-card .text-profile-bio { max-width: 104ch; font-size: .81rem; line-height: 1.95; }
:root[data-accent="blue"] .profile-sep { opacity: .65; }
:root[data-accent="blue"] .profile-card .latest-news { display: none !important; }
:root[data-accent="blue"] .site-main .reveal + .reveal { margin-top: 1.5rem; }
:root[data-accent="blue"] #experience { padding-top: 0; border-top: 0; }
:root[data-accent="blue"] #experience .card-body { padding: .8rem 0 !important; }
:root[data-accent="blue"] .exp-section-title { font: 500 .85rem/1.7 var(--agent-mono), "Noto Sans SC", sans-serif; padding-left: 0; }
:root[data-accent="blue"] .exp-section-title::before { content: "#"; position: static; display: inline; margin-right: .6rem; color: #6395e1; background: none; }
:root[data-accent="blue"] .exp-name { font-size: .76rem; }
:root[data-accent="blue"] .exp-sub { font-size: .72rem; }
:root[data-accent="blue"] .award-item { font-size: .72rem; }
:root[data-accent="blue"] .exp-date,
:root[data-accent="blue"] .award-date { background: transparent; padding-inline: 0; font-size: .59rem; color: #718fb9; }
:root[data-accent="blue"] .exp-item,
:root[data-accent="blue"] .award-item { border-radius: 0; }
:root[data-accent="blue"] .news-head,
:root[data-accent="blue"] .bg-white > h6.border-bottom { padding: 1rem 0 !important; font-size: .85rem; font-weight: 500; }
:root[data-accent="blue"] .news-body { padding-inline: 0; }
:root[data-accent="blue"] .news-item { font-size: .75rem; }
:root[data-accent="blue"] .pub-title { font: 500 .94rem/1.6 var(--agent-mono); }
:root[data-accent="blue"] .publication-row .small { font-size: .7rem; }
:root[data-accent="blue"] .publication-row { border-radius: 0 !important; }
:root[data-accent="blue"] #navbar-year { top: 1rem !important; font: 400 .8rem/1.8 var(--agent-mono); }
:root[data-accent="blue"] #navbar-year .nav-link.active { background: #4d6bfe15; color: #a7cdff; border-left: 2px solid #6f9aff; border-radius: 0; }
:root[data-accent="blue"] #news { scroll-margin-top: 1rem; }

:root[data-accent="blue"] .terminal-help-panel,
:root[data-accent="blue"] .terminal-message-panel { max-width: 880px; padding-bottom: 1rem; }
:root[data-accent="blue"] .terminal-help-title { font-size: 1.45rem; font-weight: 500; margin-bottom: 1rem; }
:root[data-accent="blue"] .terminal-help-intro,
:root[data-accent="blue"] .terminal-message-text { font-size: .82rem; line-height: 1.8; color: #adbfdd; }
:root[data-accent="blue"] .terminal-help-list { margin: 1.8rem 0 1.4rem; }
:root[data-accent="blue"] .terminal-help-list > div { display: grid; grid-template-columns: 8.5rem minmax(0, 1fr); gap: 1rem; padding: .7rem 0; border-bottom: 1px dashed #6387bd22; font-size: .78rem; line-height: 1.7; }
:root[data-accent="blue"] .terminal-help-list dt { font-weight: 500; }
:root[data-accent="blue"] .terminal-help-list dd { color: #9fb4d5; margin: 0; }
:root[data-accent="blue"] .terminal-help-list dt button { padding: 0; border: 0; background: none; color: var(--link); font: inherit; cursor: pointer; }
:root[data-accent="blue"] .terminal-help-list dd code { color: #9cb9e9; font: inherit; white-space: nowrap; }
:root[data-accent="blue"] .terminal-theme-list > div { grid-template-columns: 11rem minmax(0, 1fr); }
:root[data-accent="blue"] .terminal-theme-current { display: none; margin-left: .6rem; color: #77d9ff; font-size: .65rem; }
:root[data-accent="blue"] .terminal-theme-list .is-current .terminal-theme-current { display: inline; }
:root[data-accent="blue"] .terminal-theme-list .is-current dt button { color: #c2e4ff; }
:root[data-accent="blue"] .terminal-help-keys { font-size: .68rem; line-height: 1.8; color: #718db7; }
:root[data-accent="blue"] .terminal-message-help { padding: .3rem 0; border: 0; background: none; color: #8bb8ff; font: 400 .8rem var(--agent-mono); cursor: pointer; }

:root[data-accent="blue"] .terminal-dock {
    position: relative;
    display: block;
    flex: 0 0 auto;
    padding: .75rem 2.7rem .65rem;
    border-top: 1px solid #648ce12b;
    background: #070f20f2;
    font-family: var(--agent-mono), "Noto Sans SC", sans-serif;
}
:root[data-accent="blue"] .terminal-response { min-height: 1.6em; font-size: .63rem; line-height: 1.65; color: #748fb8; overflow-wrap: anywhere; }
:root[data-accent="blue"] .terminal-command-form { display: flex; align-items: center; gap: .8rem; min-height: 38px; margin-top: .15rem; }
:root[data-accent="blue"] .terminal-prompt-label { display: flex; flex: 0 0 auto; margin: 0; color: #8eaeff; font-size: .73rem; line-height: 1.6; }
:root[data-accent="blue"] .terminal-prompt-path { color: #829bbe; }
:root[data-accent="blue"] .terminal-dollar { margin-left: .45rem; color: #72d5ec; }
:root[data-accent="blue"] .terminal-input-wrap { position: relative; flex: 1 1 auto; min-width: 0; font: 400 .77rem/1.6 var(--agent-mono), "Noto Sans SC", sans-serif; }
:root[data-accent="blue"] #terminal-command { display: block; width: 100%; min-width: 0; padding: .35rem 0; border: 0; border-radius: 0; background: transparent; color: #d8e7ff; font: inherit; caret-color: #8ddbff; outline: none; }
:root[data-accent="blue"] #terminal-command::placeholder { color: #506b91; }
:root[data-accent="blue"] .terminal-idle-display { display: none; position: absolute; inset: 0; align-items: center; gap: 2px; overflow: hidden; pointer-events: none; white-space: pre; color: #8baedb; font: inherit; }
:root[data-accent="blue"] .terminal-idle-text { flex: 0 1 auto; min-width: 0; overflow: hidden; }
:root[data-accent="blue"] .terminal-idle-caret { flex: 0 0 .55em; height: 1.15em; margin-left: .1em; border-radius: 1px; background: #8ddbff; box-shadow: 0 0 9px #6fafff66; }
:root[data-accent="blue"] .terminal-input-wrap:not(:focus-within) #terminal-command:placeholder-shown + .terminal-idle-display,
:root[data-accent="blue"] .terminal-input-wrap.is-idle-preview #terminal-command:placeholder-shown + .terminal-idle-display { display: flex; }
:root[data-accent="blue"] .terminal-input-wrap:not(:focus-within) #terminal-command:placeholder-shown::placeholder,
:root[data-accent="blue"] .terminal-input-wrap.is-idle-preview #terminal-command:placeholder-shown::placeholder { color: transparent; }
:root[data-accent="blue"] .terminal-input-wrap.is-idle-preview #terminal-command:placeholder-shown { caret-color: transparent; }
:root[data-accent="blue"] .terminal-command-form:focus-within { box-shadow: 0 1px #6c9dff55; }
:root[data-accent="blue"] .terminal-submit { flex: 0 0 auto; width: 28px; height: 27px; padding: 0; background: #4d6bfe0d; border: 1px solid #759be02e; border-radius: 4px; color: #96bcff; cursor: pointer; }
:root[data-accent="blue"] .terminal-submit:hover { background: #4d6bfe26; }
:root[data-accent="blue"] .terminal-shortcuts { display: flex; flex-wrap: wrap; gap: .35rem 1.1rem; padding-top: .3rem; font-size: .62rem; }
:root[data-accent="blue"] .terminal-shortcuts a,
:root[data-accent="blue"] .terminal-shortcuts button { border: 0; padding: 0; background: none; color: #8baada; font: inherit; cursor: pointer; }
:root[data-accent="blue"] .terminal-shortcuts a::before,
:root[data-accent="blue"] .terminal-shortcuts button::before { content: "["; color: #36547f; margin-right: .12rem; }
:root[data-accent="blue"] .terminal-shortcuts a::after,
:root[data-accent="blue"] .terminal-shortcuts button::after { content: "]"; color: #36547f; margin-left: .12rem; }
:root[data-accent="blue"] .terminal-shortcuts a:hover,
:root[data-accent="blue"] .terminal-shortcuts button:hover { color: #acd8ff; }
:root[data-accent="blue"] .site-shell > .footer { position: relative; flex: 0 0 auto; padding: 0 2.7rem; margin: 0; background: #050b16dc; border-top: 1px solid #648ce119; font: 400 .55rem/1.6 var(--agent-mono), "Noto Sans SC", sans-serif; }
:root[data-accent="blue"] .footer .container { max-width: none; padding: 0; }
:root[data-accent="blue"] .footer .row.my-3 { margin-block: .3rem !important; }
:root[data-accent="blue"] .footer .text-muted { color: #526d95 !important; }
:root[data-accent="blue"] .footer .text-muted > i { font-style: normal; }
:root[data-accent="blue"] .footer a { color: #6681aa; }

@media (prefers-reduced-motion: no-preference) {
    :root[data-accent="blue"] .terminal-effects span { animation: terminal-data-flow 24s linear infinite; }
    :root[data-accent="blue"] .terminal-idle-caret { animation: terminal-input-blink 1s steps(1, end) infinite; }
    :root[data-accent="blue"] .terminal-output-piece { animation: terminal-output-in .42s cubic-bezier(.16, 1, .3, 1) both; animation-delay: var(--terminal-piece-delay, 0ms); }
    :root[data-accent="blue"] .terminal-portrait.terminal-output-piece .terminal-portrait-scan { animation: terminal-portrait-scan .65s ease-out both; animation-delay: var(--terminal-piece-delay, 0ms); }
    :root[data-accent="blue"] .site-main.is-output-revealing::after { content: ""; position: absolute; top: 0; left: 0; right: 0; height: 2px; pointer-events: none; background: linear-gradient(90deg, transparent, #74caffaa, transparent); box-shadow: 0 0 12px #5b98ff55; animation: terminal-output-scan .85s ease-out both; }
}
:root[data-accent="blue"] .site-shell.terminal-resting .terminal-effects *,
:root[data-accent="blue"] .site-shell.terminal-resting .terminal-idle-caret { animation-play-state: paused !important; }
@keyframes terminal-data-flow { to { transform: translateX(1800px); } }
@keyframes terminal-input-blink { 0%, 54% { opacity: 1; } 55%, 100% { opacity: 0; } }
@keyframes terminal-output-in { from { opacity: 0; transform: translateY(9px); filter: blur(2px); } to { opacity: 1; transform: none; filter: none; } }
@keyframes terminal-output-scan { from { opacity: .7; transform: translateY(0); } to { opacity: 0; transform: translateY(var(--terminal-scan-distance)); } }
@keyframes terminal-portrait-scan { 0% { top: 0; opacity: 0; } 18% { opacity: .65; } 100% { top: 100%; opacity: 0; } }

@media (max-width: 991.98px) {
    :root[data-accent="blue"] .profile-card .card-body { padding: 0 !important; }
    :root[data-accent="blue"] .profile-intro { display: block; }
    :root[data-accent="blue"] .profile-card .h1 { font-size: 2.2rem; }
    :root[data-accent="blue"] .site-main { padding-inline: 1.6rem; }
    :root[data-accent="blue"] .terminal-dock,
    :root[data-accent="blue"] .site-shell > .footer { padding-inline: 1.6rem; }
}
@media (max-width: 767.98px) {
    :root[data-accent="blue"] body { padding: 0; }
    :root[data-accent="blue"] .site-shell { width: calc(100% - 16px); height: calc(100vh - 16px); height: calc(100dvh - 16px); margin: 8px auto; border-radius: 10px; }
    :root[data-accent="blue"] .terminal-chrome { padding: .6rem 1rem; min-height: 46px; font-size: .65rem; }
    :root[data-accent="blue"] .terminal-title { gap: .55rem; }
    :root[data-accent="blue"] .site-shell > .navbar { inset: 10px 1rem auto auto; padding: 0; }
    :root[data-accent="blue"] .terminal-watermark { inset: 90px -85px 100px 0; background-size: 380px auto; opacity: .11; }
    :root[data-accent="blue"] .site-main { padding: 1.1rem 1.1rem 1.8rem; }
    :root[data-accent="blue"] .profile-card .card-body { padding: 0 !important; }
    :root[data-accent="blue"] .profile-card .h1 { font-size: 2rem; }
    :root[data-accent="blue"] .profile-card .h1 small { display: block; margin: .4rem 0 0; font-size: .7rem; }
    :root[data-accent="blue"] .profile-card .text-profile-bio { font-size: .76rem; }
    :root[data-accent="blue"] .profile-card .positions-list { gap: .35rem; flex-direction: column; }
    :root[data-accent="blue"] .profile-card .latest-news { margin-left: 0 !important; }
    :root[data-accent="blue"] .terminal-section-command { font-size: .64rem; margin-bottom: 1rem; }
    :root[data-accent="blue"] .terminal-help-list > div { grid-template-columns: 6.2rem minmax(0, 1fr); gap: .6rem; font-size: .72rem; }
    :root[data-accent="blue"] .terminal-theme-list > div { grid-template-columns: minmax(0, 1fr); gap: .2rem; }
    :root[data-accent="blue"] .terminal-dock { padding: .5rem 1.1rem .6rem; }
    :root[data-accent="blue"] .terminal-response { font-size: .57rem; }
    :root[data-accent="blue"] .terminal-output-command { font-size: .69rem; gap: .4rem; margin-bottom: 1.3rem; }
    :root[data-accent="blue"] .terminal-kv { font-size: .75rem; }
    :root[data-accent="blue"] .terminal-profile-header { --terminal-portrait-size: calc(192px * .70710678); grid-template-columns: minmax(0, 1fr); gap: 1.2rem; }
    :root[data-accent="blue"] .terminal-portrait { grid-row: 1; }
    :root[data-accent="blue"] .terminal-kv > div { grid-template-columns: 4.8rem minmax(0, 1fr); gap: .6rem; }
    :root[data-accent="blue"] .terminal-prose { font-size: .77rem; }
    :root[data-accent="blue"] .terminal-log { font-size: .75rem; }
    :root[data-accent="blue"] .terminal-log-header,
    :root[data-accent="blue"] .terminal-log > li { grid-template-columns: 6rem minmax(0, 1fr); gap: .55rem; }
    :root[data-accent="blue"] .terminal-log time { font-size: .65rem; }
    :root[data-accent="blue"] .publication-row .px-4 { padding-inline: 0 !important; }
    :root[data-accent="blue"] .terminal-command-form { gap: .45rem; }
    :root[data-accent="blue"] .terminal-prompt-label { font-size: .58rem; }
    :root[data-accent="blue"] .terminal-input-wrap,
    :root[data-accent="blue"] #terminal-command { font-size: 16px; }
    :root[data-accent="blue"] .terminal-shortcuts { gap: .3rem .8rem; font-size: .63rem; }
    :root[data-accent="blue"] .site-shell > .footer { padding-inline: 1.1rem; font-size: .49rem; }
    :root[data-accent="blue"] .footer .row > div { flex: 0 0 100%; max-width: 100%; }
    :root[data-accent="blue"] .footer .text-right { text-align: left !important; }
    :root[data-accent="blue"] .footer .row.my-3 { margin-block: .2rem !important; }
}
@media (max-width: 575.98px) {
    :root[data-accent="blue"] .navbar-toggler { color: #9cb5d9; border-color: #6384b52b; font-size: .7rem !important; }
    :root[data-accent="blue"] .navbar-nav > .nav-item:last-child { margin-left: 0 !important; }
    :root[data-accent="blue"] .navbar .nav-link { padding-left: .5rem; }
    :root[data-accent="blue"] .navbar .nav-item.active .nav-link::after { width: 24px; }
}
@media (prefers-reduced-motion: reduce) {
    :root[data-accent="blue"] .site-main { scroll-behavior: auto; }
    :root[data-accent="blue"] .terminal-effects * { animation: none !important; }
}
