:root{--bg-editor:#1e1e1e;--bg-sidebar:#252526;--bg-activity:#333;--bg-titlebar:#3c3c3c;--bg-statusbar:#007acc;--bg-tab-active:#1e1e1e;--bg-tab:#2d2d2d;--bg-hover:#2a2d2e;--bg-active:#094771;--bg-selected:#37373d;--bg-card:#252526;--border:#3d3d3d;--border-light:#474747;--text:#d4d4d4;--text-muted:#858585;--text-dim:#6b6b6b;--text-keyword:#569cd6;--text-string:#ce9178;--text-comment:#6a9955;--text-function:#dcdcaa;--text-number:#b5cea8;--text-type:#4ec9b0;--text-constant:#9cdcfe;--text-white:#fff;--accent:#007acc;--accent-hover:#1a8ae0;--orange:#e8830a;--font-mono:"Consolas", "Cascadia Code", "Fira Code", "Courier New", monospace;--font-ui:system-ui, -apple-system, sans-serif;--sidebar-width:240px;--activity-width:48px;--titlebar-height:30px;--tab-height:35px;--statusbar-height:22px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg-editor);height:100%;color:var(--text);font-family:var(--font-mono);-webkit-font-smoothing:antialiased;font-size:13px;line-height:1.5;overflow:hidden}.window{flex-direction:column;height:100vh;display:flex;overflow:hidden}.titlebar{height:var(--titlebar-height);background:var(--bg-titlebar);user-select:none;border-bottom:1px solid #2b2b2b;flex-shrink:0;justify-content:center;align-items:center;display:flex}.titlebar__text{font-family:var(--font-ui);color:#ccc;letter-spacing:.02em;font-size:12px}.body{flex:1;display:flex;overflow:hidden}.activity-bar{width:var(--activity-width);background:var(--bg-activity);border-right:1px solid #2b2b2b;flex-direction:column;flex-shrink:0;align-items:center;gap:4px;padding-top:8px;display:flex}.activity-bar__btn{cursor:pointer;color:#858585;border-radius:4px;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;text-decoration:none;transition:color .1s;display:flex;position:relative}.activity-bar__btn:hover{color:#ccc}.activity-bar__btn.is-active{color:#fff;border-left:2px solid #fff;border-radius:0;margin-left:-1px}.activity-bar__spacer{flex:1}.sidebar{width:var(--sidebar-width);background:var(--bg-sidebar);border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;display:flex;overflow:hidden}.sidebar__header{font-family:var(--font-ui);letter-spacing:.1em;text-transform:uppercase;color:#bbb;flex-shrink:0;padding:12px 20px 8px;font-size:11px;font-weight:700}.sidebar__tree{flex:1;padding-bottom:1rem;overflow-y:auto}.sidebar__tree::-webkit-scrollbar{width:6px}.sidebar__tree::-webkit-scrollbar-track{background:0 0}.sidebar__tree::-webkit-scrollbar-thumb{background:#424242;border-radius:3px}.tree-folder{cursor:default;user-select:none;color:var(--text);border-left:2px solid #0000;align-items:center;gap:4px;padding:2px 0 2px 12px;font-size:13px;text-decoration:none;display:flex}.tree-folder--link{cursor:pointer;transition:background 80ms,color 80ms}.tree-folder--link:hover{background:var(--bg-hover)}.tree-folder__icon{font-size:14px}.tree-folder__name{color:var(--text)}.tree-file{cursor:pointer;color:var(--text-muted);border-left:2px solid #0000;align-items:center;gap:6px;padding:2px 0 2px 36px;font-size:13px;text-decoration:none;transition:background 80ms,color 80ms;display:flex}.tree-file:hover{background:var(--bg-hover);color:var(--text)}.tree-file--root{padding-left:22px}.tree-file__icon{flex-shrink:0;font-size:13px}.tree-file--pdf .tree-file__icon{color:#f14c4c}.tree-file--md .tree-file__icon{color:#519aba}.editor-pane{flex-direction:column;flex:1;display:flex;overflow:hidden}.tab-bar{background:var(--bg-tab);border-bottom:1px solid var(--border);height:var(--tab-height);flex-shrink:0;display:flex;overflow-x:auto}.tab-bar::-webkit-scrollbar{height:0}.tab{border-right:1px solid var(--border);cursor:pointer;white-space:nowrap;color:#969696;background:var(--bg-tab);border-top:1px solid #0000;flex-shrink:0;align-items:center;gap:6px;height:100%;padding:0 16px;font-size:13px;text-decoration:none;transition:color .1s,background .1s;display:flex}.tab:hover{color:var(--text);background:var(--bg-editor)}.tab.is-active{background:var(--bg-tab-active);color:var(--text-white);border-top-color:var(--accent)}.tab__icon{font-size:13px}.tab--pdf .tab__icon{color:#f14c4c}.tab--md .tab__icon{color:#519aba}.editor-content{flex:1;padding:0;overflow-y:auto}.editor-content::-webkit-scrollbar{width:8px}.editor-content::-webkit-scrollbar-track{background:var(--bg-editor)}.editor-content::-webkit-scrollbar-thumb{background:#424242;border-radius:4px}.section-anchor{visibility:hidden;height:0;display:block}.file-section{border-bottom:1px solid var(--border);padding:2rem 3rem 2.5rem;scroll-margin-top:0}.file-section:last-child{border-bottom:none}.file-header{border-bottom:1px solid var(--border);align-items:center;gap:8px;margin-bottom:1.5rem;padding-bottom:.75rem;display:flex}.file-header__icon{font-size:14px}.file-header--md .file-header__icon{color:#519aba}.file-header--pdf .file-header__icon{color:#f14c4c}.file-header__path{color:var(--text-muted);letter-spacing:.02em;font-size:12px}.file-header__path span{color:var(--text)}.about-grid{grid-template-columns:110px 1fr;align-items:start;gap:2rem;display:grid}.about-photo{object-fit:cover;border:1px solid var(--border-light);border-radius:3px;width:110px;height:110px;display:block}.about-photo-placeholder{border:1px solid var(--border-light);background:var(--bg-card);width:110px;height:110px;color:var(--text-muted);border-radius:3px;justify-content:center;align-items:center;font-size:11px;display:flex}.about-name{color:var(--text-function);margin-bottom:4px;font-size:22px;font-weight:400}.about-tagline{color:var(--text-comment);margin-bottom:12px;font-size:13px}.about-bio{color:var(--text);max-width:480px;margin-bottom:14px;font-size:13px;line-height:1.7}.about-bio a{color:var(--text-constant);border-bottom:1px solid color-mix(in srgb, var(--text-constant) 40%, transparent);text-decoration:none;transition:color .1s,border-color .1s}.about-bio a:hover{color:var(--text-keyword);border-bottom-color:var(--text-keyword)}.about-interests{margin-bottom:14px}.about-interests__label{color:var(--text-comment);letter-spacing:.03em;margin-bottom:5px;font-size:11px}.about-interests__list{flex-direction:column;gap:3px;list-style:none;display:flex}.about-interests__list li{color:var(--text);padding-left:1.1em;font-size:13px;position:relative}.about-interests__list li:before{content:"–";color:var(--text-muted);position:absolute;left:0}.about-links{flex-wrap:wrap;gap:8px;display:flex}.about-link{color:var(--text-keyword);border:1px solid var(--text-keyword);border-radius:2px;padding:3px 10px;font-size:12px;text-decoration:none;transition:background .1s,color .1s}.about-link:hover{background:var(--text-keyword);color:var(--bg-editor)}.section-comment{color:var(--text-comment);margin-bottom:1.25rem;font-size:13px}.card-list{flex-direction:column;gap:1rem;display:flex}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:3px;padding:1rem 1.25rem}.card:hover{border-color:var(--border-light)}.card-top{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:2px;display:flex}.card-role{color:var(--text-function);font-size:14px}.card-period{color:var(--text-number);white-space:nowrap;font-size:12px}.card-org{color:var(--text-string);margin-bottom:6px;font-size:13px}.card-link-badge{color:var(--text-keyword);border:1px solid var(--text-keyword);white-space:nowrap;opacity:.8;border-radius:2px;padding:1px 6px;font-size:11px;text-decoration:none;transition:opacity .1s}.card-link-badge:hover{opacity:1}.card-desc{color:var(--text);margin-bottom:8px;font-size:13px;line-height:1.6}.tag-list{flex-wrap:wrap;gap:5px;display:flex}.tag{color:var(--text-constant);background:#2d3748;border:1px solid #394b61;border-radius:2px;padding:1px 7px;font-size:11px}.edu-section{margin-top:10px}.edu-section__label{color:var(--text-comment);letter-spacing:.03em;margin-bottom:4px;font-size:11px;display:block}.edu-section__value{color:var(--text);font-size:13px}.edu-link{color:var(--text-constant);border-bottom:1px solid color-mix(in srgb, var(--text-constant) 40%, transparent);text-decoration:none;transition:color .1s,border-color .1s}.edu-link:hover{color:var(--text-keyword);border-bottom-color:var(--text-keyword)}.edu-list{flex-direction:column;gap:2px;list-style:none;display:flex}.edu-list li{color:var(--text);padding-left:1.1em;font-size:13px;position:relative}.edu-list li:before{content:"–";color:var(--text-muted);position:absolute;left:0}.card-body-prose{color:var(--text);margin-top:6px;font-size:13px;line-height:1.65}.card-body-prose p{margin-bottom:.4rem}.card-body-prose p:last-child{margin-bottom:0}.card-body-prose a{color:var(--text-keyword)}.card-body-prose code{background:#2d2d2d;border-radius:2px;padding:1px 4px;font-size:.9em}.writeup-list{flex-direction:column;list-style:none;display:flex}.writeup-item{border-bottom:1px solid var(--border);padding:.9rem 0}.writeup-item:last-child{border-bottom:none}.writeup-date{color:var(--text-number);margin-bottom:3px;font-size:11px}.writeup-title{margin-bottom:3px;font-size:14px}.writeup-title a{color:var(--text-constant);text-decoration:none;transition:color .1s}.writeup-title a:hover{color:var(--text-keyword)}.writeup-desc{color:var(--text-muted);font-size:12px;line-height:1.5}.writeup-tags{margin-top:5px}.cv-block{flex-direction:column;align-items:flex-start;gap:10px;display:flex}.cv-download-btn{font-family:var(--font-mono);background:var(--accent);color:#fff;border-radius:3px;align-items:center;gap:8px;padding:8px 18px;font-size:13px;text-decoration:none;transition:background .15s;display:inline-flex}.cv-download-btn:hover{background:var(--accent-hover)}.cv-download-btn--pending{background:var(--bg-card);color:var(--text-muted);border:1px solid var(--border-light);cursor:default;opacity:.6}.cv-download-btn--pending:hover{background:var(--bg-card)}.cv-download-note{color:var(--text-muted);font-size:12px}.statusbar{height:var(--statusbar-height);background:var(--bg-statusbar);flex-shrink:0;align-items:center;gap:12px;padding:0 10px;display:flex}.statusbar__item{font-family:var(--font-ui);color:#ffffffe6;white-space:nowrap;font-size:11px}.statusbar__right{gap:12px;margin-left:auto;display:flex}.prose{color:var(--text);max-width:680px;font-size:14px;line-height:1.75}.prose h1{color:var(--text-function);margin-bottom:.4rem;font-size:22px;font-weight:400}.prose h2{color:var(--text-keyword);margin:2rem 0 .6rem;font-size:16px;font-weight:400}.prose h3{color:var(--text-type);margin:1.5rem 0 .4rem;font-size:14px;font-weight:400}.prose p{margin-bottom:1rem}.prose ul,.prose ol{margin:.5rem 0 1rem 1.5rem}.prose li{margin-bottom:.25rem}.prose a{color:var(--text-keyword)}.prose a:hover{color:var(--accent-hover)}.prose strong{color:var(--text-constant);font-weight:400}.prose em{color:var(--text-string);font-style:italic}.prose blockquote{border-left:3px solid var(--border-light);color:var(--text-muted);margin:1.5rem 0;padding-left:1rem}.prose code{color:var(--text-string);background:#2d2d2d;border-radius:2px;padding:1px 5px;font-size:.9em}.prose pre{border:1px solid var(--border);background:#141414;border-radius:3px;margin:1.25rem 0;padding:1rem 1.25rem;overflow-x:auto}.prose pre code{color:var(--text);background:0 0;padding:0}.back-link{color:var(--text-muted);margin-bottom:1.5rem;font-size:12px;text-decoration:none;transition:color .1s;display:inline-block}.back-link:hover{color:var(--text)}.back-link:before{content:"← "}@media (width<=700px){.sidebar,.activity-bar{display:none}.file-section{padding:1.5rem 1.25rem}.about-grid{grid-template-columns:1fr}html,body{overflow:auto}.window{height:auto}.body,.editor-content,.editor-pane{overflow:visible}}
