:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0e1014;--surface:#15181f;--surface-2:#1a1e27;--border:#242a36;--border-soft:#1e232d;--text:#dde1e8;--text-dim:#9aa1ae;--text-faint:#646c7a;--accent:#e0a96d;--accent-soft:#e0a96d1a;--accent-line:#e0a96d52;--ok:#74c98a;--warn:#e0a96d;--err:#d97a6c;--sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--mono:ui-monospace, "SF Mono", "JetBrains Mono", "Fira Code", "Cascadia Code", Menlo, Consolas, monospace;--maxw:1080px;--section-gap:clamp(46px,6.5vw,68px);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--radius-sm:7px;--radius-md:10px;--radius-lg:12px;--radius-xl:16px;--breakpoint-layout:760px;--breakpoint-compact:560px;--breakpoint-contact:620px}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body{background:var(--bg);min-width:320px;color:var(--text);font:15px/1.6 var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}a{color:var(--accent);text-underline-offset:3px}a:hover{text-decoration-thickness:1px}button,input{font:inherit}button{touch-action:manipulation}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}[hidden]{display:none!important}.skip-link{z-index:1000;background:var(--text);color:var(--bg);border-radius:.5rem;padding:.7rem 1rem;position:fixed;top:1rem;left:1rem;transform:translateY(-180%)}.skip-link:focus{transform:none}.page{width:min(calc(100% - 40px), var(--maxw));grid-template-columns:340px minmax(0,1fr);align-items:start;gap:clamp(40px,5vw,72px);margin:0 auto;padding:clamp(36px,5vw,72px) 0;display:grid}.sidebar{scrollbar-width:thin;scrollbar-color:var(--border) transparent;max-height:calc(100vh - clamp(40px,6vw,80px));padding-right:7px;position:sticky;top:clamp(20px,3vw,40px);overflow:hidden auto}.sidebar::-webkit-scrollbar{width:5px}.sidebar::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}main{min-width:0;padding-top:4px}section{margin-bottom:var(--section-gap);scroll-margin-top:32px}.section-heading{align-items:center;gap:16px;margin-bottom:24px;display:flex}.section-heading h2{color:var(--accent);font:600 12px/1.2 var(--mono);letter-spacing:.18em;text-transform:uppercase;white-space:nowrap;margin:0}.section-heading:after{content:"";background:var(--border-soft);flex:1;height:1px}.lead{max-width:62ch;color:var(--text-dim);margin:0;line-height:1.7}.lead+.lead{margin-top:15px}.language-switcher{gap:5px;margin-bottom:20px;display:flex}.language-switcher button{border:1px solid var(--border);min-width:44px;min-height:40px;color:var(--text-faint);cursor:pointer;font:11px/1 var(--mono);letter-spacing:.05em;background:0 0;border-radius:7px;padding:5px 10px}.language-switcher button:hover{color:var(--text);border-color:var(--accent-line)}.language-switcher button[aria-pressed=true]{color:var(--accent);border-color:var(--accent-line);background:var(--accent-soft)}.profile-photo{object-fit:cover;object-position:center top;border:1px solid var(--border);border-radius:16px;width:118px;height:118px;margin-bottom:22px;display:block}h1{color:#fff;letter-spacing:-.02em;margin:0;font-size:clamp(26px,3.2vw,33px);line-height:1.1}.role{color:var(--accent);margin:9px 0 0;font-weight:600}.tagline{max-width:32ch;color:var(--text-dim);margin:14px 0 0;font-size:13.5px;line-height:1.55}.focus-tags{flex-wrap:wrap;gap:7px;margin-top:15px;display:flex}.pill{border:1px solid var(--accent-line);background:var(--accent-soft);color:var(--accent);font:10.5px/1.4 var(--mono);letter-spacing:.035em;border-radius:20px;align-items:center;gap:6px;padding:4px 10px;display:inline-flex}.profile-languages{border-top:1px solid var(--border-soft);flex-wrap:wrap;gap:8px 14px;margin:22px 0 0;padding:18px 0 0;display:flex}.profile-language{color:var(--text-dim);font:10.5px/1.2 var(--mono);align-items:center;gap:5px;display:inline-flex}.profile-language small{color:var(--text-faint);font-size:9.5px}.profile-language .flag{font-size:14px}.contacts{gap:9px;margin:28px 0 0;display:grid}.contact-row{min-width:0;color:var(--text-dim);align-items:center;gap:11px;font-size:13px;display:flex}.contact-row svg{width:15px;height:15px;color:var(--text-faint);flex:0 0 15px}.contact-row a,.contact-row span{min-width:0;color:var(--text-dim);overflow-wrap:anywhere}.contact-row a:hover{color:var(--accent)}.actions{flex-wrap:wrap;gap:9px;margin-top:26px;display:flex}.button{border:1px solid var(--border);background:var(--surface);min-height:42px;color:var(--text);cursor:pointer;font:12px/1.2 var(--mono);border-radius:7px;justify-content:center;align-items:center;gap:7px;padding:9px 14px;text-decoration:none;display:inline-flex}.button svg{width:14px;height:14px}.button:hover{border-color:var(--accent-line);color:var(--accent);text-decoration:none}.action-icon{flex:0 0 14px;width:14px;height:14px}.site-nav{gap:0;margin-top:32px;display:grid}.site-nav a{color:var(--text-faint);font:11.5px/1.3 var(--mono);letter-spacing:.13em;text-transform:uppercase;align-items:center;gap:13px;padding:7px 0;text-decoration:none;display:flex}.site-nav a:before{content:"";background:var(--border);flex:none;width:22px;height:1px;transition:width .14s,background .14s}.site-nav a:hover,.site-nav a[aria-current=true]{color:var(--text)}.site-nav a:hover:before,.site-nav a[aria-current=true]:before{background:var(--accent);width:36px}.panel{border:1px solid var(--border);background:var(--surface);border-radius:12px;overflow:hidden}.timeline,.project-list,.skill-list,.education-list{display:grid}.entry{border:1px solid #0000;border-radius:10px;grid-template-columns:135px minmax(0,1fr);gap:20px;margin:0 -18px;padding:18px;transition:background .14s,border-color .14s;display:grid}.entry:hover{background:var(--surface);border-color:var(--border-soft)}.entry time{color:var(--text-faint);font:11.5px/1.5 var(--mono);letter-spacing:.03em;padding-top:3px}.entry h3{color:var(--text);margin:0;font-size:15.5px;line-height:1.35}.org{color:var(--accent);font:11px/1.4 var(--mono);letter-spacing:.02em;margin-top:3px}.entry ul{gap:6px;margin:11px 0 0;padding:0;list-style:none;display:grid}.entry li{color:var(--text-dim);padding-left:17px;font-size:13.5px;line-height:1.55;position:relative}.entry li:before{content:"";background:var(--accent-line);border-radius:1px;width:5px;height:5px;position:absolute;top:9px;left:0}.project-list{gap:4px}.project-entry{border:1px solid #0000;border-radius:10px;grid-template-columns:56px minmax(0,1fr);gap:16px;margin:0 -18px;padding:18px;transition:background .14s,border-color .14s;display:grid}.project-entry:hover{background:var(--surface);border-color:var(--border-soft)}.project-entry.featured{border-color:var(--accent-line);background:linear-gradient(#e0a96d0d,#0000 70%)}.project-icon{border:1px solid var(--border);background:var(--surface-2);width:48px;height:48px;color:var(--accent);border-radius:12px;place-items:center;display:grid}.project-icon svg{width:25px;height:25px}.project-copy h3{color:var(--text);margin:0;font-size:15.5px}.project-copy p{max-width:65ch;color:var(--text-dim);margin:8px 0 0;font-size:13.5px;line-height:1.55}.tech-tags{flex-wrap:wrap;gap:7px;margin-top:13px;display:flex}.tech-tag{border:1px solid var(--accent-line);background:var(--accent-soft);color:var(--accent);font:11px/1.35 var(--mono);border-radius:6px;align-items:center;gap:6px;padding:3px 9px;display:inline-flex}.tech-tag:before{content:"";opacity:.8;background:currentColor;border-radius:50%;width:5px;height:5px}.focus-badge{border:1px solid var(--accent-line);background:var(--accent-soft);color:var(--accent);font:600 9.5px/1.3 var(--mono);letter-spacing:.1em;text-transform:uppercase;vertical-align:2px;border-radius:5px;margin-left:8px;padding:2px 7px;display:inline-flex}.skill-list{margin:0}.skill-row{border-bottom:1px solid var(--border-soft);grid-template-columns:135px minmax(0,1fr);gap:20px;padding:15px 0;display:grid}.skill-row:last-child{border-bottom:0}.skill-row dt{color:var(--text-faint);font:11.5px/1.4 var(--mono);letter-spacing:.1em;text-transform:uppercase;padding-top:4px}.skill-row dd{margin:0}.skill-chips{flex-wrap:wrap;gap:7px;display:flex}.skill-chip{border:1px solid var(--border);background:var(--surface);color:var(--text-dim);border-radius:7px;align-items:center;gap:7px;padding:5px 10px;font-size:13px;display:inline-flex}.skill-chip svg{width:14px;height:14px;color:var(--accent);opacity:.9;flex:0 0 14px}.skill-chip:hover{border-color:var(--accent-line);color:var(--text)}.education-list{gap:0}.education-row{border-bottom:1px solid var(--border-soft);grid-template-columns:135px minmax(0,1fr);gap:20px;padding:14px 0;display:grid}.education-row:last-child{border-bottom:0}.education-row time{color:var(--text-faint);font:11.5px/1.4 var(--mono);padding-top:2px}.education-row h3{color:var(--text);margin:0;font-size:14.5px}.education-row p{color:var(--text-faint);font:11px/1.4 var(--mono);margin:3px 0 0}.footer-card{margin-top:var(--section-gap);border:1px solid var(--border);background:var(--surface);color:var(--text-dim);font:11.5px/1.6 var(--mono);border-radius:11px;align-items:center;gap:11px;padding:18px 20px;display:flex}.footer-card:before{content:"";background:var(--ok);border-radius:50%;flex:none;width:8px;height:8px;box-shadow:0 0 0 3px #74c98a29}.stats-head{border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:flex-start;gap:16px;padding:13px 18px;display:flex}.stats-head strong{color:var(--text-dim);font:500 11.5px/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase}.stats-head p{color:var(--text-faint);font:10.5px/1.5 var(--mono);margin:4px 0 0}.live-status{color:var(--text-faint);font:10.5px/1.2 var(--mono);text-transform:uppercase;align-items:center;gap:8px;display:inline-flex}.live-dot{background:var(--text-faint);border-radius:50%;width:7px;height:7px}.live-dot[data-state=live]{background:var(--ok);box-shadow:0 0 0 3px #74c98a24}.live-dot[data-state=stale]{background:var(--warn);box-shadow:0 0 0 3px #e0a96d24}.live-dot[data-state=offline]{background:var(--err);box-shadow:0 0 0 3px #d97a6c24}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.stat{border-right:1px solid var(--border-soft);border-bottom:1px solid var(--border-soft);padding:17px 16px}.stat:nth-child(4n){border-right:0}.stat:nth-last-child(-n+4){border-bottom:0}.stat-value{color:var(--accent);font:600 21px/1 var(--mono);letter-spacing:-.01em}.stat-label{color:var(--text-faint);font:10px/1.25 var(--mono);letter-spacing:.06em;text-transform:uppercase;margin-top:8px}.stats-updated{border-top:1px solid var(--border-soft);color:var(--text-faint);font:10.5px/1.4 var(--mono);padding:11px 18px}.chat-launcher{z-index:40;color:#241606;cursor:pointer;background:linear-gradient(135deg,#eab578,#d8954f);border:0;border-radius:30px;min-height:48px;padding:13px 20px;font-weight:700;position:fixed;bottom:24px;right:24px;box-shadow:0 8px 28px #e0a96d6b,0 2px 6px #0000004d}.chat-launcher:hover{transform:translateY(-2px)}.dialog-backdrop{z-index:50;background:#0000007a;place-items:end;padding:22px;display:grid;position:fixed;inset:0}.chat-dialog{border:1px solid var(--border);background:var(--bg);border-radius:14px;flex-direction:column;width:min(380px,100vw - 32px);height:min(560px,100vh - 44px);display:flex;overflow:hidden;box-shadow:0 18px 50px #00000080}.chat-head{border-bottom:1px solid var(--border-soft);background:var(--surface);justify-content:space-between;gap:12px;padding:15px 17px;display:flex}.chat-head h2{color:var(--text);margin:0;font-size:14px}.chat-head p{color:var(--text-faint);font:10.5px/1.4 var(--mono);margin:2px 0 0}.icon-button{border:1px solid var(--border);min-width:40px;min-height:40px;color:var(--text-faint);cursor:pointer;background:0 0;border-radius:9px;font-size:22px}.chat-log{flex-direction:column;flex:1;gap:10px;padding:16px;display:flex;overflow-y:auto}.message{white-space:pre-wrap;overflow-wrap:anywhere;border-radius:11px;max-width:84%;padding:10px 13px;font-size:13.5px;line-height:1.5}.message.bot{border:1px solid var(--border-soft);background:var(--surface);color:var(--text-dim);align-self:flex-start}.message.user{border:1px solid var(--accent-line);background:var(--accent-soft);color:var(--text);align-self:flex-end}.chat-privacy{color:var(--text-faint);font:10px/1.4 var(--mono);text-align:center;margin:0;padding:0 16px 9px}.chat-status{min-height:18px;color:var(--text-faint);font:10.5px/1.4 var(--mono);padding:0 16px 8px}.chat-form{border-top:1px solid var(--border-soft);background:var(--surface);gap:8px;padding:12px;display:flex}.chat-form input{border:1px solid var(--border);background:var(--bg);min-width:0;min-height:42px;color:var(--text);border-radius:9px;outline:none;flex:1;padding:10px 13px}.chat-form input:focus{border-color:var(--accent-line)}.chat-form .button{min-width:70px}body.dialog-open{overflow:hidden}.contact-masked{font-family:var(--mono);letter-spacing:.02em}.contact-verify{gap:9px;margin-top:4px;display:grid}.contact-reveal{border:1px solid var(--accent-line);background:var(--accent-soft);width:fit-content;min-height:38px;color:var(--accent);cursor:pointer;font:10.5px/1.3 var(--mono);border-radius:7px;padding:7px 10px}.contact-reveal:hover{background:#e0a96d29}.contact-reveal:disabled{cursor:progress;opacity:.68}.contact-reveal svg{vertical-align:-2px;width:14px;height:14px;margin-right:6px}.turnstile-mount{width:min(300px,100%);min-height:0}.contact-verify-status{min-height:1.3em;color:var(--text-faint);font:10.5px/1.3 var(--mono)}.contact-verify-status[data-state=success]{color:var(--ok)}.contact-verify-status[data-state=error]{color:var(--err)}.demo-page{width:min(100% - 28px,780px);margin:0 auto;padding:24px 0 48px}.demo-top{justify-content:space-between;align-items:center;gap:14px;margin-bottom:20px;display:flex}.demo-hero{border:1px solid var(--border);background:radial-gradient(circle at 85% 15%,#e0a96d29,transparent 45%),var(--surface);border-radius:20px;padding:22px}.demo-hero h1{margin:12px 0 6px;font-size:28px}.demo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.demo-device{border:1px solid var(--border);background:linear-gradient(145deg,#ffffff06,transparent 70%),var(--surface);border-radius:18px;min-height:132px;padding:16px}.demo-device h3{color:var(--text);margin:0 0 9px;font-size:15px}.demo-device p{color:var(--text-faint);font:11px/1.45 var(--mono);margin:8px 0 0}.demo-value{color:var(--accent);font:700 24px/1.1 var(--mono)}@media (width<=760px){.page{grid-template-columns:1fr;gap:38px;width:min(100% - 32px,700px);padding:28px 0 48px}.sidebar{max-height:none;padding-right:0;position:static;overflow:visible}.site-nav{border-top:1px solid var(--border-soft);flex-wrap:wrap;gap:4px 16px;margin-top:28px;padding-top:18px;display:flex}.site-nav a{padding:5px 0;font-size:10.5px}.site-nav a:before{width:14px}.site-nav a:hover:before,.site-nav a[aria-current=true]:before{width:22px}main{padding-top:0}}@media (width<=560px){.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stat{border-right:1px solid var(--border-soft);border-bottom:1px solid var(--border-soft)}.stat:nth-child(2n){border-right:0}.stat:nth-last-child(-n+2){border-bottom:0}.entry,.skill-row,.education-row{grid-template-columns:1fr;gap:6px}.project-entry{border-width:0 0 1px;border-color:var(--border-soft);border-radius:0;grid-template-columns:44px minmax(0,1fr);gap:12px;margin:0;padding:15px 0}.project-entry:last-child{border-bottom:0}.project-entry.featured{border:1px solid var(--accent-line);border-radius:10px;padding:15px}.project-icon{border-radius:10px;width:42px;height:42px}.project-icon svg{width:22px;height:22px}.demo-grid{grid-template-columns:1fr}.dialog-backdrop{padding:0}.chat-dialog{border:0;border-radius:0;width:100%;height:100%}.chat-launcher{max-width:calc(100vw - 24px);bottom:12px;right:12px}}@media (width<=620px){.contact-reveal{max-width:100%}}@media print{body{color:#000;background:#fff;font-size:11px}.page{width:100%;padding:0;display:block}.language-switcher,.site-nav,.actions,.chat-launcher,.dialog-backdrop{display:none!important}.sidebar{max-height:none;margin-bottom:20px;position:static}.project-entry,.entry{break-inside:avoid}.panel,.project-entry,.demo-device{background:#fff;border-color:#ccc}h1,.entry h3,.project-copy h3{color:#000}.role,.section-heading h2,.stat-value,.org,.tech-tag{color:#444}.contact-verify{display:none!important}}
