:root{color-scheme:light;--bg:#f8f7f4;--panel:#fff;--panel-strong:#efeee9;--text:#181817;--muted:#64635f;--line:#d9d7cf;--accent:#0f7b6c;--accent-strong:#0b5d52;--code:#242422;--code-text:#d9f5e9;--shadow:0 20px 60px #17201d1a;--max:1120px}[data-theme=dark]{color-scheme:dark;--bg:#101010;--panel:#181818;--panel-strong:#222;--text:#eeeeea;--muted:#aaa8a2;--line:#30302d;--accent:#69d3bd;--accent-strong:#9be7d5;--code:#0b0b0b;--code-text:#d9f5e9;--shadow:0 20px 60px #0000003d}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration-color:color-mix(in srgb, var(--accent) 55%, transparent);text-underline-offset:.2em}a:hover{color:var(--accent-strong)}button,input,textarea{font:inherit}[hidden]{display:none!important}.site-shell{min-height:100vh}.site-header{z-index:20;border-bottom:1px solid color-mix(in srgb, var(--line) 72%, transparent);background:color-mix(in srgb, var(--bg) 88%, transparent);backdrop-filter:blur(18px);position:sticky;top:0}.nav{max-width:var(--max);justify-content:space-between;align-items:center;gap:1rem;margin:0 auto;padding:.85rem 1.25rem;display:flex}.brand{gap:0;text-decoration:none;display:inline-grid}.brand strong{letter-spacing:0;font-size:.98rem}.brand span{color:var(--muted);font-size:.78rem}.nav-links{align-items:center;gap:.2rem;display:flex}.nav-links a,.theme-toggle{color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;padding:.48rem .65rem;text-decoration:none}.nav-links a:hover,.theme-toggle:hover{border-color:var(--line);color:var(--text)}.theme-toggle{min-width:2.45rem}.main{max-width:var(--max);margin:0 auto;padding:4.2rem 1.25rem 5rem}.cover-page{place-items:center;min-height:calc(100vh - 13rem);display:grid;position:relative;overflow:hidden}.cover-page:before{content:"";z-index:-1;background:radial-gradient(circle at 50% 42%, color-mix(in srgb, var(--accent) 18%, transparent), transparent 24rem), radial-gradient(circle at 50% 70%, color-mix(in srgb, var(--text) 8%, transparent), transparent 26rem), linear-gradient(color-mix(in srgb, var(--line) 32%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--line) 18%, transparent) 1px, transparent 1px);opacity:.72;background-size:auto,auto,2.4rem 2.4rem,2.4rem 2.4rem;animation:18s ease-in-out infinite alternate cover-drift;position:absolute;inset:-8% -10%;transform:rotate(-1deg);mask-image:radial-gradient(circle,#000 0% 48%,#0000 78%)}@keyframes cover-drift{0%{transform:translateY(-.4rem)rotate(-2deg)}to{transform:translateY(.4rem)rotate(-1deg)}}.cover-card{text-align:center;justify-items:center;max-width:680px;display:grid}.cover-card .avatar-placeholder,.cover-card .profile-photo{border-radius:50%;width:7.25rem}.cover-kicker{color:var(--accent-strong);align-items:center;gap:.35rem;margin-top:1.4rem;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.82rem;display:inline-flex}.cursor{background:var(--accent);width:.52rem;height:1em;animation:1.15s steps(2,start) infinite cursor-blink}@keyframes cursor-blink{50%{opacity:0}}.cover-card h1{margin-top:.65rem;font-size:clamp(2.9rem,10vw,6.4rem)}.cover-intro{max-width:610px;color:var(--text);margin-top:1rem;font-size:clamp(1.14rem,3vw,1.45rem);line-height:1.5}.cover-subtitle{color:var(--muted);margin-top:.65rem;font-size:1rem}.cover-links{flex-wrap:wrap;justify-content:center;gap:.85rem 1.25rem;margin-top:1.65rem;display:flex}.cover-links a{color:var(--muted);text-decoration-thickness:1px}.cover-links a:hover{color:var(--accent-strong)}.hero{grid-template-columns:minmax(0,1.08fr) minmax(320px,.72fr);align-items:center;gap:2.2rem;min-height:70vh;display:grid}.notebook-hero{grid-template-columns:minmax(0,1fr) minmax(280px,360px);align-items:start;gap:2.5rem;padding:2.2rem 0 1.4rem;display:grid}.intro-copy{max-width:780px}.intro-copy h1{max-width:760px;font-size:clamp(2.55rem,7vw,4.9rem)}.intro-copy>p:not(.lead){max-width:680px;color:var(--muted);margin-top:1rem;font-size:1.05rem}.quiet-links{flex-wrap:wrap;gap:.8rem 1.1rem;margin-top:1.35rem;display:flex}.quiet-links a,.section-link a{color:var(--accent-strong);font-weight:650;text-decoration-thickness:1px}.profile-note{border:1px solid var(--line);background:color-mix(in srgb, var(--panel) 68%, transparent);border-radius:8px;gap:1rem;padding:1rem;display:grid}.profile-note p{color:var(--muted);font-size:.96rem}.profile-note p+p{margin-top:.75rem}.avatar-placeholder{aspect-ratio:1;border:1px solid var(--line);background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 18%, transparent), transparent), repeating-linear-gradient(-45deg, color-mix(in srgb, var(--line) 36%, transparent), color-mix(in srgb, var(--line) 36%, transparent) 1px, transparent 1px, transparent 9px), var(--panel);width:7.6rem;color:var(--accent-strong);border-radius:8px;place-items:center;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:1.4rem;font-weight:700;display:grid}.profile-photo{aspect-ratio:1;border:1px solid var(--line);object-fit:cover;border-radius:8px;width:7.6rem;display:block}.eyebrow,.meta-label{color:var(--accent-strong);letter-spacing:0;text-transform:none;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.8rem}h1,h2,h3{letter-spacing:0;margin:0;line-height:1.08}h1{max-width:880px;margin-top:.75rem;font-size:clamp(2.6rem,8vw,5.6rem)}h2{font-size:clamp(1.7rem,4vw,2.65rem)}h3{font-size:1.15rem}p{margin:0}.lead{max-width:760px;color:var(--muted);margin-top:1rem;font-size:clamp(1rem,2.4vw,1.2rem)}.actions{flex-wrap:wrap;gap:.8rem;margin-top:1.6rem;display:flex}.button{border:1px solid var(--line);background:var(--panel);min-height:2.8rem;color:var(--text);box-shadow:none;border-radius:7px;justify-content:center;align-items:center;padding:.66rem 1rem;text-decoration:none;display:inline-flex}.button.primary{border-color:var(--accent);background:var(--accent);color:#fff}.button:hover{border-color:var(--accent);color:var(--accent-strong)}.button.primary:hover{color:#fff;background:var(--accent-strong)}.status-panel{border:1px solid var(--line);background:color-mix(in srgb, var(--panel) 88%, transparent);box-shadow:var(--shadow);border-radius:8px;overflow:hidden}.terminal-bar{border-bottom:1px solid var(--line);color:var(--muted);align-items:center;gap:.45rem;padding:.72rem .85rem;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.78rem;display:flex}.dot{background:var(--accent);border-radius:50%;width:.58rem;height:.58rem}.status-body{gap:.85rem;padding:1rem;display:grid}.pipeline-step{grid-template-columns:1.2rem 1fr;align-items:start;gap:.8rem;display:grid;position:relative}.pipeline-step:before{content:"";border:2px solid var(--accent);background:var(--panel);border-radius:50%;width:.62rem;height:.62rem;margin-top:.45rem}.pipeline-step:not(:last-child):after{content:"";background:linear-gradient(var(--accent), transparent);width:2px;height:calc(100% + .3rem);animation:2.8s ease-in-out infinite pulse-line;position:absolute;top:1.25rem;left:.31rem}@keyframes pulse-line{0%,to{opacity:.35}50%{opacity:1}}.pipeline-step strong{line-height:1.35;display:block}.pipeline-step span{color:var(--muted);font-size:.92rem;display:block}.section{padding:4rem 0 0}.section-heading{gap:.8rem;max-width:760px;margin-bottom:1.3rem;display:grid}.section-heading p{color:var(--muted);font-size:1.03rem}.stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem;display:grid}.stat{border-top:2px solid var(--accent);background:color-mix(in srgb, var(--panel) 76%, transparent);padding:1rem}.stat strong{font-size:1.5rem;line-height:1.1;display:block}.stat span{color:var(--muted);font-size:.92rem}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.card{border:1px solid var(--line);background:color-mix(in srgb, var(--panel) 84%, transparent);border-radius:8px;padding:1.1rem}.card h3{margin-bottom:.55rem}.card p,.list p{color:var(--muted)}.tags{flex-wrap:wrap;gap:.45rem;margin-top:.85rem;display:flex}.tag{border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:.22rem .55rem;font-size:.78rem}.split{grid-template-columns:.9fr 1.1fr;gap:1.4rem;display:grid}.list{gap:.9rem;display:grid}.list-item{border-left:2px solid var(--accent);padding-left:1rem}.page-header{max-width:920px;padding-bottom:2rem}.page-header h1{font-size:clamp(2rem,7vw,3.8rem)}.content{gap:1.3rem;max-width:920px;display:grid}.content code{font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.9em}.content :not(pre)>code{border:1px solid var(--line);background:var(--panel-strong);border-radius:5px;padding:.12rem .3rem}.content pre{border:1px solid color-mix(in srgb, var(--line) 55%, transparent);background:var(--code);max-width:100%;color:var(--code-text);border-radius:9px;margin:0;padding:1rem;line-height:1.55;overflow-x:auto}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:#8b949e}.token.punctuation,.token.operator{color:#c9d1d9}.token.property,.token.tag,.token.boolean,.token.number,.token.constant,.token.symbol{color:#79c0ff}.token.selector,.token.attr-name,.token.string,.token.char,.token.builtin,.token.inserted{color:#a5d6ff}.token.atrule,.token.attr-value,.token.function,.token.class-name{color:#d2a8ff}.token.keyword,.token.deleted{color:#ff7b72}.token.regex,.token.important,.token.variable{color:#ffa657}.content h2{margin-top:1.4rem;font-size:1.65rem}.content ul{margin:0;padding-left:1.2rem}.content li+li{margin-top:.35rem}.post-list{gap:.8rem;display:grid}.notes-tools{gap:.75rem;max-width:920px;margin-bottom:1.2rem;display:grid}.search-label{color:var(--muted);font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.78rem}.notes-search{border:1px solid var(--line);background:var(--panel);width:100%;color:var(--text);border-radius:8px;outline:none;padding:.78rem .9rem}.notes-search:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent)}.tag-filter{flex-wrap:wrap;gap:.45rem;display:flex}.group-filter{flex-wrap:wrap;gap:.5rem;display:flex}.group-filter-button{border:1px solid var(--line);background:color-mix(in srgb, var(--panel) 62%, transparent);color:var(--muted);cursor:pointer;border-radius:8px;padding:.42rem .7rem}.group-filter-button:hover,.group-filter-button.active{border-color:var(--accent);color:var(--accent-strong)}.tag-filter-details{border:1px solid var(--line);background:color-mix(in srgb, var(--panel) 62%, transparent);border-radius:8px;padding:.2rem .65rem .65rem}.tag-filter-details summary{color:var(--muted);cursor:pointer;width:max-content;padding:.48rem 0}.tag-filter-details[open] summary{color:var(--accent-strong)}.tag-filter-button{border:1px solid var(--line);color:var(--muted);cursor:pointer;background:0 0;border-radius:999px;padding:.28rem .62rem}.tag-filter-button:hover,.tag-filter-button.active{border-color:var(--accent);color:var(--accent-strong)}.post-card{border:1px solid var(--line);background:color-mix(in srgb, var(--panel) 82%, transparent);border-radius:8px;padding:1rem;text-decoration:none;display:block}.post-card span,.post-card time{color:var(--muted);font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.78rem}.post-card h2,.post-card h3{margin-top:.3rem;font-size:1.25rem}.post-card[hidden]{display:none}.grouped-post-list{gap:2rem;display:grid}.note-group{gap:.8rem;display:grid}.note-group[hidden]{display:none}.note-group>h2{color:var(--muted);font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.88rem;font-weight:500}.empty-state{color:var(--muted);margin-top:1rem}.writing-section{padding-top:3rem}.notebook-list{border-top:1px solid var(--line);display:grid}.notebook-entry{border-bottom:1px solid var(--line);grid-template-columns:8.5rem 1fr;gap:1.25rem;padding:1rem 0;text-decoration:none;display:grid}.notebook-entry time{color:var(--muted);font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.78rem}.notebook-entry h3{margin-bottom:.25rem}.notebook-entry p{color:var(--muted)}.section-link{margin-top:1rem}.topic-cloud{flex-wrap:wrap;gap:.65rem;max-width:880px;display:flex}.topic-cloud span{border:1px solid var(--line);background:color-mix(in srgb, var(--panel) 58%, transparent);color:var(--muted);border-radius:999px;padding:.45rem .72rem}.personal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.handwritten-card{border-left:2px solid var(--accent);background:color-mix(in srgb, var(--panel) 54%, transparent);padding:1rem 1.1rem}.handwritten-card h2{margin-top:.45rem;font-size:clamp(1.35rem,3vw,1.9rem)}.handwritten-card p{color:var(--muted);margin-top:.75rem}.professional-section{padding-top:3rem}.quiet-card{background:0 0}.article{max-width:920px}.article-tags{margin-top:1rem}.article .tag{text-decoration:none}.article img{border-radius:8px;max-width:100%}.site-footer{border-top:1px solid var(--line);color:var(--muted)}.footer-inner{max-width:var(--max);justify-content:space-between;gap:1rem;margin:0 auto;padding:1.4rem 1.25rem;font-size:.9rem;display:flex}.resume-header{max-width:920px}.resume-header .headline-sub{color:var(--muted,inherit);margin-top:.35rem;font-size:.55em;line-height:1.2;display:block}.resume-intro{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:2rem;max-width:920px;display:grid}.resume-intro-copy{max-width:72ch}.resume-intro .profile-photo,.resume-intro .avatar-placeholder{border-radius:50%;width:6.4rem}@media (width<=860px){.hero,.notebook-hero,.personal-grid,.resume-intro,.split{grid-template-columns:1fr}.resume-intro .profile-photo,.resume-intro .avatar-placeholder{order:-1}.hero{min-height:auto}.stats,.grid{grid-template-columns:1fr}.nav{flex-direction:column;align-items:flex-start}.nav-links{width:100%;padding-bottom:.2rem;overflow-x:auto}.main{padding-top:2.4rem}.cover-page{min-height:calc(100vh - 15rem)}.notebook-entry{grid-template-columns:1fr;gap:.25rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.resume-meta{color:var(--text-muted,#666);margin-top:.5rem;font-size:.95rem}.company-context{color:var(--text-muted,#666);margin:.25rem 0 .5rem;font-size:.9rem}.job-meta{color:var(--text-muted,#666);margin-bottom:.75rem;font-size:.9rem}.stack-line{background:#69d3bd33;border-radius:4px;margin-top:.5rem;padding:.4rem .6rem;font-size:.85rem}.experience-entry,.project-entry{margin-bottom:1.75rem}.cert-list li{margin-bottom:.4rem}.cert-status{color:var(--text-muted,#666);font-size:.9rem}.latest-note{margin:2rem 0}.latest-note-card{border:1px solid var(--border,#263244);background:var(--surface,#111827);border-radius:1rem;padding:1.5rem;text-decoration:none;display:block}.latest-note-card:hover{border-color:var(--accent,#10b981)}.latest-note-card span{color:var(--muted,#94a3b8);font-size:.9rem}.latest-note-card h2{margin:.4rem 0}
