:root{--bg:#17130e;--bg-elevated:#201a12;--bg-card:#1c160f;--amber:#f5a623;--gold:#ffcf6e;--amber-dim:#8a6521;--diff-add:#6fa97f;--text:#f3ead9;--text-muted:#9c9182;--text-faint:#6b6152;--border:#33291b;--border-soft:#241d14;--radius:10px;--mono:"JetBrains Mono", ui-monospace, monospace;--display:"Space Grotesk", sans-serif;--body:"Inter", sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}#summary,#contact-info,#experience,#skills,#languages,#education,#projects,#contact{scroll-margin-top:7.5rem}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition-duration:.01ms!important;animation-duration:.01ms!important}}body{background:var(--bg);color:var(--text);font-family:var(--body);-webkit-font-smoothing:antialiased;font-size:clamp(17px,1.3vw,19px);line-height:1.65;position:relative;overflow-x:hidden}.stars{z-index:0;pointer-events:none;position:fixed;inset:0;overflow:hidden}.star{background:var(--gold);will-change:opacity, transform;border-radius:50%;animation:4s ease-in-out infinite twinkle;position:absolute}@keyframes twinkle{0%,to{opacity:var(--min-o,.15);transform:scale(.8)}50%{opacity:var(--max-o,.9);transform:scale(1.2)}}@media (prefers-reduced-motion:reduce){.star{opacity:.35;animation:none}}.titlebar,main,footer{z-index:1;position:relative}a{color:var(--amber);text-decoration:none}a:hover{color:var(--gold)}::selection{background:var(--amber);color:#1a1409}:focus-visible{outline:2px solid var(--amber);outline-offset:3px;border-radius:3px}.wrap{width:min(100%,52rem);margin:0 auto;padding:0 clamp(20px,4vw,40px)}.titlebar{z-index:50;backdrop-filter:blur(10px);border-bottom:1px solid var(--border-soft);background:#17130eeb;position:sticky;top:0}.titlebar-inner{width:min(100%,52rem);margin:0 auto;padding:12px clamp(20px,4vw,40px) 0}.titlebar-top{justify-content:space-between;align-items:center;gap:16px;padding-bottom:10px;display:flex}.dots{gap:7px;display:flex}.titlebar-actions{align-items:center;gap:8px;display:flex}.cv-download{font-family:var(--mono);color:#1a1409;background:var(--amber);border:1px solid var(--amber);border-radius:5px;padding:4px 10px;font-size:12.5px;font-weight:600;transition:background .15s,border-color .15s,color .15s}.cv-download:hover{color:#1a1409;background:var(--gold);border-color:var(--gold)}.lang-switch{font-family:var(--mono);gap:2px;font-size:12.5px;display:flex}.lang-switch a{color:var(--text-faint);border:1px solid #0000;border-radius:5px;padding:4px 8px;transition:color .15s,border-color .15s,background .15s}.lang-switch a:hover{color:var(--text)}.lang-switch a.active{color:var(--amber);border-color:var(--border);background:var(--bg-elevated)}.dots span{background:var(--border);border-radius:50%;width:10px;height:10px}.dots span:first-child{background:#7a3b2e}.dots span:nth-child(2){background:var(--amber-dim)}.dots span:nth-child(3){background:var(--diff-add);opacity:.6}.tabname{font-family:var(--mono);color:var(--text-faint);align-items:center;gap:8px;padding-bottom:10px;font-size:13.5px;display:flex}.tabname .filename{color:var(--amber)}.tabname .dirty{color:var(--gold)}nav.tabs{scrollbar-width:none;-ms-overflow-style:none;gap:2px;display:flex;overflow-x:auto}nav.tabs::-webkit-scrollbar{display:none}nav.tabs a{font-family:var(--mono);color:var(--text-muted);white-space:nowrap;cursor:pointer;border-bottom:2px solid #0000;padding:9px 14px;font-size:13.5px;transition:color .15s,border-color .15s}nav.tabs a:hover{color:var(--text)}nav.tabs a.active{color:var(--amber);border-bottom-color:var(--amber)}.hero{border-top:none;padding:clamp(48px,9vw,96px) 0 clamp(32px,6vw,56px)}.eyebrow{font-family:var(--mono);color:var(--text-faint);letter-spacing:.02em;font-size:14px}.eyebrow .prompt{color:var(--amber)}h1{font-family:var(--display);letter-spacing:-.02em;margin:10px 0 6px;font-size:clamp(2.6rem,7.5vw,4.6rem);font-weight:700;line-height:1.05}h1 .cursor{background:var(--amber);width:.5ch;margin-left:4px;animation:1.1s step-end infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.role{font-family:var(--display);color:var(--amber);margin-bottom:22px;font-size:clamp(1.2rem,2.8vw,1.65rem);font-weight:500}.summary{max-width:62ch;color:var(--text-muted);font-size:1.08rem}.contact-row{flex-wrap:wrap;align-items:center;gap:10px 28px;display:flex}.contact-row a,.contact-row span.badge{font-family:var(--mono);color:var(--gold);letter-spacing:.01em;border-bottom:1px solid #0000;align-items:center;gap:8px;font-size:15px;font-weight:600;transition:color .15s,border-color .15s;display:inline-flex}.contact-row .icon{filter:saturate(1.4);font-size:14px}.contact-row a:hover{color:var(--amber);border-bottom-color:var(--amber)}.contact-row span.badge{cursor:default}.stats{background:var(--border-soft);border:1px solid var(--border-soft);border-radius:var(--radius);grid-template-columns:repeat(3,1fr);gap:1px;margin-top:44px;display:grid;overflow:hidden}.stat{background:var(--bg-elevated);text-align:left;padding:20px 18px}.stat .num{font-family:var(--display);color:var(--gold);font-size:clamp(1.7rem,4.2vw,2.3rem);font-weight:700;line-height:1}.stat .label{font-family:var(--mono);color:var(--text-faint);text-transform:lowercase;margin-top:7px;font-size:12.5px}section{border-top:1px solid var(--border-soft);padding:clamp(40px,7vw,64px) 0}.section-head{align-items:baseline;gap:12px;margin-bottom:28px;display:flex}.section-head .tag{font-family:var(--mono);color:var(--text-faint);font-size:13px}.section-head h2{font-family:var(--display);color:var(--text);font-size:clamp(1.4rem,3.2vw,1.9rem);font-weight:600}.section-head .rule{background:var(--border);flex:1;height:1px}.commit{grid-template-columns:22px 1fr;gap:0 18px;display:grid;position:relative}.commit+.commit{margin-top:0}.commit-line{justify-content:center;display:flex;position:relative}.commit-line:before{content:"";background:var(--border);width:1px;position:absolute;top:0;bottom:-8px}.commit:last-child .commit-line:before{display:none}.commit-dot{background:var(--bg);border:2px solid var(--amber);z-index:1;border-radius:50%;width:10px;height:10px;margin-top:6px}.commit-body{padding-bottom:36px}.commit-meta{font-family:var(--mono);color:var(--text-faint);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:6px;font-size:13px;display:flex}.commit-hash{color:var(--amber)}.commit-role{font-family:var(--display);color:var(--text);font-size:1.15rem;font-weight:600}.commit-org{color:var(--text-muted);margin-bottom:14px;font-size:1.02rem}.diff{background:var(--bg-card);border:1px solid var(--border-soft);font-family:var(--mono);color:var(--text-muted);border-radius:8px;padding:16px 18px;font-size:14px;line-height:1.8;overflow-x:auto}.diff .plus{color:var(--diff-add);margin-right:8px}.diff div{white-space:normal}.pkg{background:var(--bg-card);border:1px solid var(--border-soft);border-radius:var(--radius);font-family:var(--mono);padding:22px clamp(16px,3vw,26px);font-size:14.5px;overflow-x:auto}.pkg-key{color:var(--text-faint)}.pkg-group{margin-bottom:18px}.pkg-group:last-child{margin-bottom:0}.pkg-group-name{color:var(--gold);margin-bottom:9px}.chips{flex-wrap:wrap;gap:8px;padding-left:14px;display:flex}.chip{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text);white-space:nowrap;border-radius:5px;padding:6px 12px;font-size:13.5px}.langs{gap:16px;display:grid}.lang-row{font-family:var(--mono);grid-template-columns:minmax(7.5rem,auto) 1fr minmax(11rem,auto);align-items:center;gap:14px;font-size:14.5px;display:grid}.lang-name{color:var(--text)}.lang-bar{background:var(--bg-card);border:1px solid var(--border-soft);border-radius:5px;height:8px;overflow:hidden}.lang-bar-fill{background:linear-gradient(90deg, var(--amber-dim), var(--amber));transform-origin:0;border-radius:5px;height:100%;animation:1s ease-out both grow}@keyframes grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.lang-level{color:var(--text-faint);text-align:right;white-space:nowrap}.edu-card{background:var(--bg-card);border:1px solid var(--border-soft);border-radius:var(--radius);padding:20px clamp(16px,3vw,26px)}.edu-title{font-family:var(--display);font-size:1.15rem;font-weight:600}.edu-org{color:var(--amber);font-family:var(--mono);margin-top:4px;font-size:13.5px}.edu-meta{color:var(--text-faint);font-family:var(--mono);margin-top:2px;font-size:13px}.edu-topics{color:var(--text-muted);margin-top:10px;font-size:14.5px}.projects-list{border-top:1px solid var(--border-soft);list-style:none}.project-row{border-bottom:1px solid var(--border-soft);color:inherit;padding:14px 0;display:block}.project-row:hover{color:inherit}.project-row:hover .project-row-name,.project-row:hover .project-row-go{color:var(--amber)}.project-row-top{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:4px;display:flex}.project-row-name{font-family:var(--mono);color:var(--gold);font-size:13.5px;font-weight:600;transition:color .15s}.project-row-go{font-family:var(--mono);color:var(--text-faint);white-space:nowrap;font-size:12.5px;transition:color .15s}.project-row-desc{color:var(--text-faint);margin-bottom:8px;font-size:.9rem;line-height:1.5}.project-row-tags,.repo-tags{flex-wrap:wrap;gap:6px;display:flex}.repo-tag{font-family:var(--mono);color:var(--text-muted);background:var(--bg-elevated);border:1px solid var(--border-soft);border-radius:4px;padding:2px 8px;font-size:11.5px}.back-link{font-family:var(--mono);align-items:center;gap:8px;margin:clamp(28px,5vw,48px) 0 8px;font-size:14px;display:inline-flex}.case-head{border-bottom:1px solid var(--border-soft);padding:8px 0 clamp(24px,4vw,40px)}.case-title{font-family:var(--display);letter-spacing:-.02em;margin:12px 0 10px;font-size:clamp(2rem,5vw,3rem);font-weight:700}.case-tagline{color:var(--text-muted);max-width:62ch;font-size:1.08rem}.case-actions{flex-wrap:wrap;gap:12px;margin-top:22px;display:flex}.btn{font-family:var(--mono);border:1px solid var(--border);background:var(--bg-elevated);color:var(--text);cursor:pointer;border-radius:7px;align-items:center;gap:8px;padding:10px 18px;font-size:14px;font-weight:600;transition:border-color .15s,background .15s,color .15s;display:inline-flex}.btn:hover{color:var(--text);border-color:var(--amber-dim)}.btn-primary{background:var(--amber);color:#1a1409;border-color:var(--amber)}.btn-primary:hover{background:var(--gold);color:#1a1409;border-color:var(--gold)}.case-body{max-width:78ch;padding:clamp(28px,5vw,48px) 0 clamp(40px,6vw,72px)}.case-body h3{font-family:var(--display);color:var(--text);margin:32px 0 12px;font-size:1.3rem;font-weight:600}.case-body p{color:var(--text-muted);margin-bottom:14px}.case-body ul{color:var(--text-muted);margin-bottom:14px;padding-left:22px}.case-body li{margin-bottom:6px}.case-shot{border-radius:var(--radius);border:1px solid var(--border-soft);width:100%;margin:8px 0}.not-found{text-align:center;padding:clamp(60px,12vw,140px) 0}footer{border-top:1px solid var(--border-soft);padding:clamp(24px,5vw,40px) 0 48px}.foot-note{font-family:var(--mono);color:var(--text-faint);text-align:center;font-size:12.5px}@media (width<=640px){.stats{grid-template-columns:1fr 1fr}.stat:nth-child(3){grid-column:span 2}.lang-row{grid-template-columns:minmax(5.5rem,auto) 1fr minmax(9.5rem,auto);gap:10px}.commit{grid-template-columns:16px 1fr;gap:0 12px}}@media (width>=641px) and (width<=900px){.stats{grid-template-columns:repeat(3,1fr)}}
