:root{--font-sans: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: "Cascadia Code", "Fira Code", ui-monospace, "SF Mono", "Courier New", monospace;--max-width: 52rem;--radius: 10px;--header-height: 4rem}:root[data-theme=dark]{--bg: #11111b;--surface: #181825;--surface-hover: #1e1e2e;--border: #2a2a3c;--text: #cdd6f4;--text-muted: #9399b2;--text-faint: #6c7086;--accent: #89b4fa;--accent-soft: rgba(137, 180, 250, .12);--terminal-bg: #1e1e2e}:root[data-theme=light]{--bg: #eff1f5;--surface: #ffffff;--surface-hover: #f6f7f9;--border: #dce0e8;--text: #4c4f69;--text-muted: #6c6f85;--text-faint: #8c8fa1;--accent: #1e66f5;--accent-soft: rgba(30, 102, 245, .1);--terminal-bg: #eff1f5}*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}[hidden]{display:none!important}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + 1rem)}body{min-height:100dvh;font-family:var(--font-sans);font-size:16px;line-height:1.65;background-color:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}body[data-view=terminal]{overflow:hidden}a{color:inherit;text-decoration:none}.site-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:1rem;height:var(--header-height);padding:0 1.5rem;background-color:color-mix(in srgb,var(--bg) 85%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}.brand{font-family:var(--font-mono);font-size:1rem;font-weight:600;letter-spacing:-.01em}.brand-accent{color:var(--accent)}.site-nav{display:flex;gap:1.5rem;margin-left:auto;font-size:.9rem;color:var(--text-muted)}.site-nav a:hover{color:var(--text)}.header-actions{display:flex;gap:.5rem;margin-left:1.5rem}body[data-view=terminal] .site-nav{display:none}body[data-view=terminal] .header-actions{margin-left:auto}.button{display:inline-flex;align-items:center;padding:.4rem .85rem;font-family:inherit;font-size:.85rem;font-weight:500;color:var(--text-muted);background:transparent;border:1px solid transparent;border-radius:var(--radius);cursor:pointer;transition:color .15s ease,background-color .15s ease,border-color .15s ease}.button:hover{color:var(--text);background-color:var(--surface-hover)}.button-outline{font-family:var(--font-mono);color:var(--accent);border-color:var(--border)}.button-outline:hover{color:var(--accent);background-color:var(--accent-soft);border-color:var(--accent)}.button-primary{color:var(--bg);background-color:var(--accent)}.button-primary:hover{color:var(--bg);background-color:var(--accent);opacity:.88}.intro-actions .button:not(.button-primary){border-color:var(--border)}.link-button{font:inherit;color:var(--accent);background:none;border:none;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.page{max-width:var(--max-width);margin:0 auto;padding:4rem 1.5rem 5rem}.loading{color:var(--text-faint)}.section{margin-top:3.5rem}.section-title{margin-bottom:1.25rem;padding-bottom:.5rem;font-family:var(--font-mono);font-size:.8rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint);border-bottom:1px solid var(--border)}.eyebrow{font-family:var(--font-mono);font-size:.85rem;color:var(--accent)}.intro-name{margin:.35rem 0 1rem;font-size:clamp(2rem,6vw,2.75rem);font-weight:650;line-height:1.15;letter-spacing:-.03em}.intro-summary{max-width:44rem;color:var(--text-muted)}.intro-actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.75rem}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:1rem;list-style:none}.card{padding:1.25rem;background-color:var(--surface);border:1px solid var(--border);border-radius:var(--radius);transition:border-color .15s ease,transform .15s ease}.card:hover{border-color:var(--accent);transform:translateY(-2px)}.card-title{font-family:var(--font-mono);font-size:1rem;font-weight:600;color:var(--accent)}.card-title:after{content:" ↗";font-size:.8em;color:var(--text-faint)}.card-description{margin-top:.5rem;font-size:.9rem;color:var(--text-muted)}.tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.9rem;list-style:none}.tag{padding:.15rem .55rem;font-family:var(--font-mono);font-size:.72rem;color:var(--text-muted);background-color:var(--accent-soft);border-radius:999px}.entries{display:grid;gap:2rem;list-style:none}.entry-head{display:flex;flex-wrap:wrap;gap:.25rem 1rem;align-items:baseline;justify-content:space-between}.entry-title{font-size:1rem;font-weight:600}.entry-at{font-weight:400;color:var(--text-faint)}.entry-period{font-family:var(--font-mono);font-size:.78rem;color:var(--text-faint);white-space:nowrap}.entry-note{font-size:.9rem;color:var(--text-muted)}.entry-bullets{margin-top:.6rem;padding-left:1.1rem;font-size:.9rem;color:var(--text-muted)}.entry-bullets li{margin-top:.2rem}.entry-bullets li::marker{color:var(--text-faint)}.skills{display:grid;gap:1.25rem}.skill-label{font-size:.85rem;font-weight:600;color:var(--text-muted)}.skill-group .tags{margin-top:.5rem}.contact{list-style:none}.contact-row{display:flex;gap:1rem;align-items:baseline;padding:.7rem 0;border-bottom:1px solid var(--border)}.contact-label{flex:0 0 6rem;font-family:var(--font-mono);font-size:.78rem;letter-spacing:.05em;text-transform:uppercase;color:var(--text-faint)}.contact-value{color:var(--accent);overflow-wrap:anywhere}.contact-value:hover{text-decoration:underline;text-underline-offset:3px}.site-footer{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;justify-content:space-between;margin-top:4rem;padding-top:1.5rem;font-size:.85rem;color:var(--text-faint);border-top:1px solid var(--border)}.terminal-view{height:calc(100dvh - var(--header-height));padding:1rem;padding-bottom:max(1rem,env(safe-area-inset-bottom))}.terminal-container{width:100%;max-width:1200px;height:100%;margin:0 auto;padding:1.25rem;background-color:var(--terminal-bg);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}#terminal,.xterm{width:100%;height:100%}.xterm-viewport{overflow-y:auto!important;-webkit-overflow-scrolling:touch}@media(max-width:720px){.site-header{padding:0 1rem}.site-nav{display:none}.header-actions{margin-left:auto}.page{padding:2.5rem 1rem 3.5rem}.terminal-view{padding:.5rem}.terminal-container{padding:.85rem}.contact-row{flex-direction:column;gap:.1rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card{transition:none}}
