.assistant-overlay[data-astro-cid-jn3olhgu]{position:fixed;right:20px;bottom:20px;z-index:40;display:grid;justify-items:end;gap:12px;max-width:min(420px,calc(100vw - 28px));color:var(--text)}.assistant-toggle[data-astro-cid-jn3olhgu],.assistant-close[data-astro-cid-jn3olhgu],.assistant-submit[data-astro-cid-jn3olhgu],.assistant-retry[data-astro-cid-jn3olhgu]{border:1px solid var(--line);color:var(--text);font:inherit;font-weight:750;background:#111a24eb;cursor:pointer}.assistant-toggle[data-astro-cid-jn3olhgu]{display:inline-flex;align-items:center;gap:10px;min-height:54px;padding:8px 14px 8px 8px;border-color:#63e6d294;box-shadow:0 18px 42px #0000006b}.assistant-toggle-mark[data-astro-cid-jn3olhgu]{display:inline-grid;place-items:center;width:38px;height:38px;color:var(--cyan);font-family:var(--font-mono);background:linear-gradient(135deg,#63e6d22e,#ff7ab61a),var(--bg-soft)}.assistant-toggle-label[data-astro-cid-jn3olhgu]{color:var(--cyan)}.assistant-panel[data-astro-cid-jn3olhgu]{position:relative;width:min(420px,calc(100vw - 28px));max-height:min(680px,calc(100vh - 104px));display:grid;grid-template-rows:auto minmax(150px,1fr) auto;overflow:hidden;border:1px solid rgba(99,230,210,.38);background:#080b10f5;box-shadow:0 24px 70px #00000085}.assistant-panel[data-astro-cid-jn3olhgu][hidden]{display:none}.assistant-panel-header[data-astro-cid-jn3olhgu]{display:flex;align-items:start;justify-content:space-between;gap:16px;padding:18px;border-bottom:1px solid var(--line)}.assistant-kicker[data-astro-cid-jn3olhgu]{margin:0 0 6px;color:var(--cyan);font-family:var(--font-mono);font-size:.76rem;font-weight:750;text-transform:uppercase}.assistant-panel[data-astro-cid-jn3olhgu] h2[data-astro-cid-jn3olhgu]{font-size:1.35rem}.assistant-close[data-astro-cid-jn3olhgu]{min-height:34px;padding:7px 10px;color:var(--muted);font-size:.85rem}.assistant-log-wrap[data-astro-cid-jn3olhgu]{min-height:0;overflow:hidden}.assistant-log[data-astro-cid-jn3olhgu]{display:grid;align-content:start;gap:12px;height:100%;overflow-y:auto;padding:18px}.assistant-pending-overlay[data-astro-cid-jn3olhgu]{position:absolute;inset:0;z-index:2;display:flex;align-items:center;justify-content:center;padding:18px;background:#080b10c7;backdrop-filter:blur(6px)}.assistant-pending-overlay[data-astro-cid-jn3olhgu][hidden]{display:none}.assistant-pending-card[data-astro-cid-jn3olhgu]{display:flex;flex-direction:column;align-items:center;gap:14px;width:min(100%,280px);padding:22px 20px;text-align:center;border:1px solid rgba(99,230,210,.38);background:linear-gradient(135deg,#63e6d21a,#ff7ab60f),#111a24eb;box-shadow:0 16px 40px #00000061}.assistant-spinner[data-astro-cid-jn3olhgu]{flex:0 0 auto;width:32px;height:32px;border:3px solid rgba(99,230,210,.22);border-top-color:var(--cyan);border-radius:50%;animation:assistant-spin .9s linear infinite}.assistant-pending-message[data-astro-cid-jn3olhgu]{margin:0;color:var(--text);font-size:.92rem;line-height:1.45}@keyframes assistant-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.assistant-spinner[data-astro-cid-jn3olhgu]{animation:none;border-top-color:#63e6d28c}}.assistant-empty[data-astro-cid-jn3olhgu],.assistant-status[data-astro-cid-jn3olhgu]{margin:0;color:var(--muted);font-size:.92rem}.assistant-message[data-astro-cid-jn3olhgu]{display:grid;gap:5px;max-width:92%;padding:12px;border:1px solid var(--line);background:#111a24c7}.assistant-message[data-astro-cid-jn3olhgu].visitor{justify-self:end;border-color:#ff7ab657}.assistant-message[data-astro-cid-jn3olhgu] strong[data-astro-cid-jn3olhgu]{color:var(--cyan);font-family:var(--font-mono);font-size:.76rem;text-transform:uppercase}.assistant-message[data-astro-cid-jn3olhgu] p[data-astro-cid-jn3olhgu]{margin:0;color:var(--text);white-space:pre-wrap}.assistant-sources[data-astro-cid-jn3olhgu]{margin:0;padding-left:18px;color:var(--muted);font-size:.88rem}.assistant-form[data-astro-cid-jn3olhgu]{display:grid;gap:10px;padding:16px 18px 18px;border-top:1px solid var(--line);background:#111a24bd}.assistant-label[data-astro-cid-jn3olhgu],.assistant-language[data-astro-cid-jn3olhgu] span[data-astro-cid-jn3olhgu]{color:var(--dim);font-family:var(--font-mono);font-size:.75rem;text-transform:uppercase}.assistant-form[data-astro-cid-jn3olhgu] textarea[data-astro-cid-jn3olhgu],.assistant-form[data-astro-cid-jn3olhgu] select[data-astro-cid-jn3olhgu]{width:100%;border:1px solid var(--line);color:var(--text);font:inherit;background:#080b10eb}.assistant-form[data-astro-cid-jn3olhgu] textarea[data-astro-cid-jn3olhgu]{min-height:92px;resize:vertical;padding:11px}.assistant-form[data-astro-cid-jn3olhgu] select[data-astro-cid-jn3olhgu]{min-height:40px;padding:8px}.assistant-form-row[data-astro-cid-jn3olhgu]{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:end;gap:10px}.assistant-language[data-astro-cid-jn3olhgu]{display:grid;gap:5px}.assistant-submit[data-astro-cid-jn3olhgu],.assistant-retry[data-astro-cid-jn3olhgu]{min-height:40px;padding:8px 14px;color:var(--cyan)}.assistant-submit[data-astro-cid-jn3olhgu]:disabled{color:var(--dim);cursor:wait}.assistant-toggle[data-astro-cid-jn3olhgu]:hover,.assistant-toggle[data-astro-cid-jn3olhgu]:focus-visible,.assistant-close[data-astro-cid-jn3olhgu]:hover,.assistant-close[data-astro-cid-jn3olhgu]:focus-visible,.assistant-submit[data-astro-cid-jn3olhgu]:hover,.assistant-submit[data-astro-cid-jn3olhgu]:focus-visible,.assistant-retry[data-astro-cid-jn3olhgu]:hover,.assistant-retry[data-astro-cid-jn3olhgu]:focus-visible{border-color:#ff7ab6b8;color:var(--text)}@media(max-width:520px){.assistant-overlay[data-astro-cid-jn3olhgu]{right:12px;bottom:12px}.assistant-panel[data-astro-cid-jn3olhgu]{max-height:calc(100vh - 88px)}.assistant-form-row[data-astro-cid-jn3olhgu]{grid-template-columns:1fr}}:root{color-scheme:dark;--bg: #080b10;--bg-soft: #0e141d;--panel: #111a24;--line: rgba(169, 188, 210, .2);--text: #e8f0f7;--muted: #9daebe;--dim: #6f8091;--cyan: #63e6d2;--green: #9be56d;--magenta: #ff7ab6;--amber: #ffc857;--font-sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", "SFMono-Regular", Consolas, "Liberation Mono", monospace}*{box-sizing:border-box}html{background:var(--bg);min-width:320px;scroll-behavior:smooth}body{margin:0;min-height:100vh;color:var(--text);font-family:var(--font-sans);line-height:1.6;background:linear-gradient(rgba(99,230,210,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,122,182,.04) 1px,transparent 1px),linear-gradient(135deg,rgba(99,230,210,.05),transparent 34%,rgba(255,200,87,.04) 72%,transparent),var(--bg);background-size:56px 56px,56px 56px,auto}body:before{position:fixed;inset:0;pointer-events:none;content:"";background:linear-gradient(120deg,#080b101a,#080b10c7 48%,#080b1040);z-index:-1}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.site-frame{width:min(1180px,calc(100% - 32px));margin:0 auto}.site-header{position:sticky;top:0;z-index:10;min-height:76px;padding:14px 16px;background:#080b10d1;border-bottom:1px solid var(--line);backdrop-filter:blur(18px)}.site-header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;width:min(1180px,calc(100% - 32px));min-height:48px;margin:0 auto}.brand{display:inline-flex;align-items:center;gap:12px;min-width:0}.brand-mark{display:inline-grid;place-items:center;width:44px;height:44px;border:1px solid rgba(99,230,210,.55);color:var(--cyan);font-family:var(--font-mono);font-weight:800;letter-spacing:0;background:#63e6d20f;box-shadow:0 0 26px #63e6d226}.brand-name{overflow:hidden;color:var(--text);font-weight:750;white-space:nowrap;text-overflow:ellipsis}.nav-links{display:flex;align-items:center;justify-content:flex-end;gap:clamp(10px,2vw,22px);color:var(--muted);font-size:.95rem}.nav-links a{padding:8px 0;border-bottom:1px solid transparent}.nav-links a:hover,.nav-links a:focus-visible{color:var(--text);border-color:var(--cyan)}main{padding:42px 0 76px}.hero-section,.page-hero{min-height:min(720px,calc(100vh - 76px));display:grid;align-items:center;gap:clamp(32px,6vw,72px);padding:clamp(40px,8vw,96px) 0}.hero-section{grid-template-columns:minmax(0,1.05fr) minmax(280px,.75fr)}.page-hero{align-content:center;min-height:auto;max-width:900px;padding-bottom:36px}.page-hero.narrow{max-width:760px}.eyebrow,.card-topline,.status-row,.tag-row,.signal-panel,.inline-action{font-family:var(--font-mono);letter-spacing:0}.eyebrow{margin:0 0 14px;color:var(--cyan);font-size:.83rem;font-weight:700;text-transform:uppercase}h1,h2,h3,p{overflow-wrap:anywhere}h1,h2,h3{margin:0;line-height:1.04;letter-spacing:0}h1{max-width:12ch;font-size:clamp(3rem,9vw,7.2rem)}.page-hero h1{max-width:13ch;font-size:clamp(2.6rem,6vw,5.8rem)}h2{font-size:clamp(1.8rem,4vw,3.2rem)}h3{font-size:clamp(1.2rem,2vw,1.55rem)}.hero-role{margin:22px 0 0;color:var(--green);font-size:clamp(1.05rem,2vw,1.35rem);font-weight:700}.hero-text,.page-hero p,.section-heading p,.project-card p,.research-card p,.prose p,.two-column p,.timeline p{color:var(--muted);font-size:1rem}.hero-text{max-width:660px;margin:18px 0 0;font-size:clamp(1.08rem,2vw,1.35rem)}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.card-actions{display:grid;justify-items:start;gap:10px;margin-top:28px}.button,.inline-action{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 16px;border:1px solid var(--line);color:var(--text);background:#111a24b8;font-weight:750}.button.primary,.inline-action{border-color:#63e6d28c;color:var(--cyan);background:#63e6d214}.button.ghost{color:var(--muted)}.button:hover,.inline-action:hover,.card-actions a:hover,.link-list a:hover{transform:translateY(-1px);border-color:#ff7ab6b3;color:var(--text)}.hero-visual{position:relative;min-height:420px;display:grid;align-items:end}.hero-visual:before{position:absolute;inset:9% 0 0 8%;content:"";border:1px solid rgba(155,229,109,.2);background:linear-gradient(135deg,#63e6d214,#ff7ab60f),repeating-linear-gradient(0deg,transparent 0,transparent 18px,rgba(232,240,247,.04) 19px)}.hero-visual img{position:relative;width:min(420px,92%);justify-self:end;border:1px solid rgba(232,240,247,.16);background:#0c1118;filter:saturate(.88) contrast(1.06)}.signal-panel{position:absolute;right:0;bottom:26px;display:grid;gap:4px;min-width:min(260px,78%);padding:14px 16px;border:1px solid rgba(99,230,210,.36);background:#080b10db;box-shadow:0 16px 48px #00000059}.signal-panel span{color:var(--cyan);font-size:1.3rem;font-weight:800}.signal-panel code{color:var(--muted);font-family:var(--font-mono);font-size:.82rem}.section-band{padding:clamp(42px,7vw,86px) 0;border-top:1px solid var(--line)}.section-heading{max-width:780px;margin-bottom:26px}.section-heading.split{max-width:none;display:flex;align-items:end;justify-content:space-between;gap:18px}.theme-grid,.card-grid,.research-grid,.contact-grid,.two-column{display:grid;gap:18px}.theme-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.theme-grid span,.tag-row span,.status-row span{border:1px solid var(--line);color:var(--muted);background:#111a24ad}.theme-grid span{padding:14px 16px}.theme-grid.dense{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.card-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.research-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.research-grid.wide{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.project-card,.research-card,.timeline article,.facts-list div,.detail-aside,.contact-grid>div{border:1px solid var(--line);background:#111a24bd}.project-card,.research-card{display:flex;min-height:310px;flex-direction:column;gap:16px;padding:22px}.project-card.compact{min-height:260px}.project-card h3 a:hover,.research-card h3 a:hover{color:var(--cyan)}.card-topline{display:flex;justify-content:space-between;gap:16px;color:var(--dim);font-size:.78rem;text-transform:uppercase}.tag-row,.status-row{display:flex;flex-wrap:wrap;gap:8px}.tag-row span,.status-row span{padding:6px 9px;font-size:.78rem}.tag-row.vertical{display:grid}.card-actions{margin-top:auto}.card-actions a,.link-list a{border-bottom:1px solid var(--line);color:var(--cyan);font-weight:750}.two-column{grid-template-columns:minmax(0,1fr) minmax(260px,.45fr);align-items:start}.facts-list{display:grid;gap:12px}.facts-list div,.detail-aside,.contact-grid>div{padding:20px}.facts-list span{display:block;color:var(--dim);font-family:var(--font-mono);font-size:.78rem;text-transform:uppercase}.facts-list strong{display:block;margin-top:5px;color:var(--text)}.timeline{display:grid;gap:14px}.timeline article{padding:20px}.timeline span{color:var(--cyan);font-family:var(--font-mono);font-size:.82rem}.timeline strong{display:block;margin-top:8px;color:var(--green)}.project-detail .section-band{border-top:0;padding-top:24px}.project-header h1{max-width:16ch}.research-header h1{max-width:18ch}.project-header h1,.research-header h1{font-size:clamp(2.2rem,4.8vw,4.6rem);line-height:1.08}.prose{max-width:760px}.prose h2,.detail-aside h2,.contact-grid h2{margin:0 0 16px;font-size:1.4rem}.paper-section+.paper-section{margin-top:28px}.metadata-list{display:grid;gap:10px;padding-left:0;color:var(--muted);list-style:none}.metadata-list li{display:grid;gap:4px}.metadata-list strong{color:var(--text)}.metadata-list a{color:var(--cyan)}.detail-list{display:grid;gap:8px;margin:0 0 24px}.detail-list dt{color:var(--dim);font-family:var(--font-mono);font-size:.78rem;text-transform:uppercase}.detail-list dd{margin:0 0 10px;color:var(--muted)}.prose ul{padding-left:1.2rem;color:var(--muted)}.prose li+li{margin-top:8px}.detail-aside{position:sticky;top:96px}.contact-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.link-list{display:grid;gap:12px}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:100px;border-top:1px solid var(--line);color:var(--muted)}.site-footer strong{display:block;color:var(--cyan);font-family:var(--font-mono)}.footer-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:14px}.footer-links a:hover{color:var(--text)}@media(max-width:780px){.site-frame{width:min(100% - 22px,1180px)}.site-header-inner,.site-footer,.section-heading.split{align-items:flex-start;flex-direction:column}.nav-links{width:100%;justify-content:flex-start;overflow-x:auto;padding-bottom:4px}.hero-section,.two-column{grid-template-columns:1fr}.hero-section,.page-hero{min-height:auto}h1,.page-hero h1{max-width:100%}.hero-visual{min-height:340px}.hero-visual img{justify-self:center}.signal-panel{right:10px}.detail-aside{position:static}}@media(max-width:440px){.brand-name{max-width:180px}.button,.inline-action{width:100%}.project-card,.research-card{min-height:0;padding:18px}}
