:root{color-scheme:dark;--bg: #08110d;--bg-elevated: rgba(11, 24, 18, .88);--bg-panel: rgba(13, 29, 21, .96);--line: rgba(126, 231, 135, .2);--line-strong: rgba(126, 231, 135, .42);--text: #eef6e9;--text-muted: #a1b69e;--accent: #7ee787;--accent-strong: #b9f27c;--warning: #f5d76e;--shadow: 0 24px 80px rgba(0, 0, 0, .35);--radius-lg: 28px;--radius-md: 18px;--radius-sm: 12px;--content-width: min(1120px, calc(100vw - 2rem) );--font-display: "Monaco", "Lucida Console", "Courier New", monospace;--font-body: "Monaco", "Lucida Console", "Courier New", monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font-body);background:radial-gradient(circle at top left,rgba(126,231,135,.12),transparent 28%),radial-gradient(circle at 85% 15%,rgba(245,215,110,.08),transparent 18%),linear-gradient(180deg,#0a120e,#07100c);color:var(--text);min-height:100vh;position:relative;overflow-x:hidden}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background-image:linear-gradient(rgba(126,231,135,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(126,231,135,.035) 1px,transparent 1px);background-size:100% 28px,28px 100%;-webkit-mask-image:radial-gradient(circle at center,black 52%,transparent 100%);mask-image:radial-gradient(circle at center,black 52%,transparent 100%);opacity:.36}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.035) 0%,transparent 8%,transparent 50%,rgba(126,231,135,.04) 100%);background-size:100% 4px;mix-blend-mode:screen;opacity:.2}a{color:inherit;text-decoration:none}button,a{transition:transform .16s ease,border-color .16s ease,background-color .16s ease,color .16s ease,box-shadow .16s ease}a:hover,a:focus-visible,button:hover,button:focus-visible{transform:translateY(-1px)}a:focus-visible,button:focus-visible{outline:2px solid var(--accent-strong);outline-offset:4px}#root{min-height:100vh}#root:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;pointer-events:none;background:#000;opacity:0;transition:opacity .18s ease-out}body.portfolio-dim-active #root:after{opacity:.74;transition:opacity 9s linear}.portfolio-dim-glow{position:fixed;display:block;z-index:1001;pointer-events:none;font-family:var(--font-display);transform-origin:left center;text-transform:lowercase;white-space:nowrap;opacity:0;text-shadow:0 0 0 transparent;animation:portfolio-dim-glow-rise 9s linear forwards}@keyframes portfolio-dim-glow-rise{0%{opacity:0;text-shadow:0 0 0 transparent}28%{opacity:.42;text-shadow:0 0 .12em currentColor,0 0 .32em currentColor}66%{opacity:.78;text-shadow:0 0 .16em currentColor,0 0 .42em currentColor,0 0 .84em currentColor,0 0 1.7em currentColor}to{opacity:1;text-shadow:0 0 .18em currentColor,0 0 .48em currentColor,0 0 .96em currentColor,0 0 1.8em currentColor,0 0 3em currentColor,0 0 4.8em currentColor}}.app-shell{width:var(--content-width);margin:0 auto;padding:.75rem 0 3rem}.topbar{position:sticky;top:.6rem;z-index:10;display:grid;grid-template-columns:auto 1fr auto;gap:.65rem;align-items:center;padding:.5rem .7rem;background:#050c09d1;border:1px solid var(--line);border-radius:999px;box-shadow:0 12px 30px #00000038;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:background-color .22s ease,border-color .22s ease,box-shadow .22s ease,backdrop-filter .22s ease}.topbar--scrolled{background:#050c0994;border-color:#7ee78724;box-shadow:0 8px 20px #0000002e;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.topbar__brand,.topbar__nav,.topbar__socials,.hero__meta,.hero__actions,.hero__command-cluster,.project-card__actions,.contact-panel__links,.project-detail__links{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.topbar__brand,.topbar__nav,.topbar__socials{flex-wrap:nowrap}.topbar__brand{gap:.5rem;min-width:0}.topbar__nav{gap:.58rem}.topbar__socials{gap:.35rem}.topbar__prompt,.section__eyebrow,.project-detail__label,.project-card__status,.terminal__line,.hero__panel-label,.contact-panel__command,.footer__title,.info-card__label,.git-card__label,.timeline__company{color:var(--accent);text-transform:uppercase;letter-spacing:.16em;font-size:.76rem}.topbar__name{font-family:var(--font-display);font-weight:700;font-size:.9rem;white-space:nowrap}.topbar__lights{display:inline-flex;gap:.35rem}.topbar__lights span:nth-child(1),.terminal__bar span:nth-child(1){background:#ff5f562e;border-color:#ff5f5666}.topbar__lights span:nth-child(2),.terminal__bar span:nth-child(2){background:#ffbd2e29;border-color:#ffbd2e66}.topbar__lights span:nth-child(3),.terminal__bar span:nth-child(3){background:#27c93f29;border-color:#27c93f66}.topbar__lights span{width:.62rem;height:.62rem;border-radius:999px;border:1px solid transparent}.topbar__menu-button{display:none;justify-self:end;width:2.75rem;height:2.75rem;padding:.6rem;border:1px solid var(--line);border-radius:999px;background:#7ee7870d;color:var(--text);cursor:pointer}.topbar__menu-button span{display:block;width:100%;height:2px;margin:.22rem 0;border-radius:999px;background:currentColor}.topbar__nav{justify-content:center}.topbar__link{font-size:.78rem}.topbar__link,.footer__link,.text-link{color:var(--text-muted)}.topbar__link:hover,.footer__link:hover,.text-link:hover{color:var(--accent-strong)}.social-chip,.section__pill{display:inline-flex;align-items:center;gap:.5rem;padding:.55rem .8rem;border-radius:999px;border:1px solid var(--line);color:var(--text-muted);background:#7ee7870d}.topbar__socials .social-chip{justify-content:center;width:2rem;height:2rem;padding:0;border-color:#7ee78729}.topbar__socials .social-chip svg{display:block;width:1rem;height:1rem;fill:currentColor}.social-chip--large{padding-inline:1rem}.page{display:grid;gap:1.5rem;padding-top:1.5rem}.page--narrow{max-width:860px;margin:0 auto}.hero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.9fr);gap:1.5rem;align-items:stretch}.hero__terminal,.hero__panel,.section,.project-detail{border:1px solid var(--line);background:linear-gradient(180deg,#0a1510f5,#08110df5);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:0 16px 42px #0000003d;position:relative;overflow:hidden}.hero__terminal:before,.hero__panel:before,.section:before,.project-detail:before,.info-card:before,.project-card:before,.git-card:before,.contact-panel:before,.timeline__content:before,.carousel:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(90deg,rgba(126,231,135,.04),transparent 30%),linear-gradient(180deg,rgba(255,255,255,.02),transparent 22%)}.hero__terminal:after,.hero__panel:after,.section:after,.project-detail:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;transform:scale(.985)}.hero,.section,.project-detail,.footer{content-visibility:auto;contain-intrinsic-size:1px 720px}.hero__terminal,.hero__panel,.section,.project-detail,.info-card,.project-card,.git-card,.contact-panel,.timeline__content{contain:layout paint}.terminal__bar{display:flex;gap:.45rem;margin-bottom:1rem}.terminal__bar--small{margin-bottom:0}.terminal__bar span{width:.85rem;height:.85rem;border-radius:999px;border:1px solid transparent}.hero h1,.section h2,.project-detail h1,.project-detail h2,.timeline__heading h3,.project-card h3,.git-card h3{margin:0;font-family:var(--font-display);line-height:1.05}.hero h1{font-size:clamp(2.9rem,8vw,5.7rem);max-width:min(100%,11ch)}.hero__identity{display:grid;grid-template-columns:auto minmax(0,1fr);gap:1.1rem;align-items:center;margin-top:.35rem}.hero__identity-copy{min-width:0}.hero__avatar{flex:0 0 auto;width:clamp(5.25rem,12vw,8rem);height:auto;aspect-ratio:1;border:1px solid var(--line-strong);border-radius:999px;object-fit:cover;background:#7ee78714;box-shadow:0 0 0 .35rem #7ee7870a,0 14px 34px #00000047}.hero__name{position:relative;display:inline-grid;align-items:center;width:100%;max-width:min(100%,11ch);cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation}.hero__name-text{grid-area:1 / 1;font-size:xx-large;display:block;min-width:0;overflow-wrap:anywhere;transform-origin:left center;transition:opacity .26s ease,transform .36s cubic-bezier(.22,1,.36,1),filter .26s ease,letter-spacing .36s cubic-bezier(.22,1,.36,1);will-change:transform,opacity,filter,letter-spacing}.hero__name-text--full{opacity:1;transform:translateZ(0) scale(1) skew(0)}.hero__name-text--alias{opacity:0;color:var(--accent-strong);letter-spacing:.12em;transform:translate3d(-.12em,.08em,0) scale(.8) skew(-10deg);text-transform:lowercase}.hero__name:hover .hero__name-text--full,.hero__name:focus-visible .hero__name-text--full,.hero__name--touch-active .hero__name-text--full{opacity:0;filter:blur(8px);transform:translate3d(.18em,-.08em,0) scale(1.08) skew(8deg)}.hero__name:hover .hero__name-text--alias,.hero__name:focus-visible .hero__name-text--alias,.hero__name--touch-active .hero__name-text--alias{opacity:1;filter:blur(0);letter-spacing:.04em;transform:translateZ(0) scale(1) skew(0)}.hero__role{margin:.6rem 0;font-size:1.15rem;color:var(--warning)}.hero__terminal-meta,.section__chrome,.hero__status-grid{display:flex;justify-content:space-between;gap:.8rem;align-items:center}.hero__terminal-meta,.section__chrome{margin-bottom:1rem;color:var(--text-muted);font-size:.76rem;letter-spacing:.08em}.section__chrome{padding-bottom:1rem;border-bottom:1px solid rgba(126,231,135,.08)}.section__command{color:var(--warning)}.hero__intro,.section__intro,.project-card__summary,.project-detail__summary,.project-detail__description,.timeline__summary,.footer__text{color:var(--text-muted);line-height:1.75}.hero__meta{margin:1.3rem 0;color:var(--text-muted);font-size:.92rem}.hero__command-cluster{margin-bottom:1.3rem}.hero__command-chip{padding:.42rem .68rem;border-radius:999px;border:1px solid rgba(126,231,135,.16);background:#7ee7870a;color:var(--text-muted);font-size:.82rem}.button{display:inline-flex;justify-content:center;align-items:center;min-height:2.9rem;padding:.75rem 1rem;border-radius:999px;border:1px solid var(--line-strong)}.button--primary{background:var(--accent);color:#05110b;font-weight:700}.button--secondary{background:transparent;color:var(--text)}.hero__panel{display:flex;flex-direction:column;justify-content:space-between;gap:1rem}.hero__branch-card{padding:1rem;border-left:2px solid var(--accent);background:#7ee7870f}.hero__branch-card span{display:block;color:var(--text-muted);margin-bottom:.25rem}.hero__project-link{color:var(--accent-strong)}.hero__status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.hero__status-grid div{padding:.8rem .9rem;border:1px solid rgba(126,231,135,.1);border-radius:var(--radius-sm);background:#ffffff06}.hero__status-grid span{display:block;margin-bottom:.2rem;color:var(--text-muted);font-size:.74rem;text-transform:uppercase;letter-spacing:.12em}.section{display:grid;gap:1.5rem;scroll-margin-top:7rem}.section__header{display:flex;justify-content:space-between;gap:1rem;align-items:end}.copy-grid,.card-grid,.project-grid,.git-grid,.carousel__meta{display:grid;gap:1rem}.carousel{overflow:hidden;border-radius:var(--radius-lg);border:1px solid var(--line);background:#08120dbf}.carousel__track{display:flex;transition:transform .54s cubic-bezier(.22,1,.36,1),filter .18s ease;filter:blur(0);backface-visibility:hidden;will-change:transform,filter}.carousel__track--motion-blur{animation:carousel-motion-blur .54s cubic-bezier(.22,1,.36,1) both}@keyframes carousel-motion-blur{0%{filter:blur(0)}18%{filter:blur(2px)}38%{filter:blur(6px)}64%{filter:blur(4px)}84%{filter:blur(1.5px)}to{filter:blur(0)}}.carousel__slide{flex:0 0 100%;min-width:100%;padding:1.5rem;background:radial-gradient(circle at top right,rgba(255,255,255,.08),transparent 24%),linear-gradient(180deg,#09150ffa,#08110dfa)}.carousel__slide--emerald{border-left:4px solid #7ee787}.carousel__slide--amber{border-left:4px solid #f5d76e}.carousel__slide--cyan{border-left:4px solid #66d9ef}.carousel__slide--rose{border-left:4px solid #ff8ea1}.carousel__label{margin:0 0 .55rem;color:var(--accent);text-transform:uppercase;letter-spacing:.16em;font-size:.76rem}.carousel__slide h3{margin:0;font-family:var(--font-display);font-size:clamp(1.55rem,3vw,2.3rem)}.carousel__description{margin:.9rem 0 0;color:var(--text-muted);line-height:1.8;max-width:68ch}.carousel__meta{grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;padding:0;margin:1.2rem 0 0}.carousel__meta li{padding:.9rem 1rem;border-radius:var(--radius-sm);border:1px solid var(--line);background:#ffffff08;color:var(--text-muted)}.copy-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.copy-grid__item,.git-card p,.info-card__focus{margin:0;line-height:1.75;color:var(--text-muted)}.card-grid,.git-grid,.project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.info-card,.project-card,.git-card{border:1px solid var(--line);background:var(--bg-panel);border-radius:var(--radius-md);padding:1.25rem;position:relative;overflow:hidden}.tag-list{list-style:none;padding:0;margin:1rem 0 0;display:flex;gap:.6rem;flex-wrap:wrap}.tag-list li{padding:.45rem .65rem;border-radius:999px;border:1px solid var(--line);background:#7ee7870d;color:var(--text-muted);font-size:.9rem}.tag-list--muted li{background:#ffffff08}.timeline{display:grid;gap:1rem}.timeline__item{display:grid;grid-template-columns:1.5rem minmax(0,1fr);gap:1rem;align-items:start}.timeline__marker{width:1rem;height:1rem;border-radius:999px;margin-top:1.1rem;border:2px solid var(--accent);background:#7ee78724;box-shadow:0 0 0 6px #7ee7870f}.timeline__content{padding:1.25rem;border-radius:var(--radius-md);border:1px solid var(--line);background:#0a1510d1;position:relative;overflow:hidden}.contact-panel,.carousel{position:relative;overflow:hidden}.timeline__heading{display:flex;justify-content:space-between;gap:1rem;align-items:start}.timeline__period{color:var(--warning);font-size:.9rem}.timeline__list{margin:1rem 0 0;padding-left:1.1rem;color:var(--text-muted);line-height:1.7}.contact-panel{display:grid;gap:1rem;align-items:center}.contact-panel__availability{margin:.25rem 0 0;font-size:1.25rem}.project-detail{margin-top:1.5rem;display:grid;gap:1.4rem}.project-detail__section{padding-top:.4rem;border-top:1px solid var(--line)}.footer{display:flex;justify-content:center;align-items:center;margin-top:2rem;padding:.35rem 0 0;text-align:center}.footer__signature{margin:0;color:#eef6e98a;font-size:.76rem;letter-spacing:.08em;line-height:1.4}@supports ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))){.topbar,.footer,.hero__terminal,.hero__panel,.info-card,.project-card,.git-card,.contact-panel,.project-detail,.section,.timeline__content{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.topbar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.topbar--scrolled{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}}@media (max-width: 1040px){.topbar__nav{gap:.48rem}.hero,.copy-grid,.card-grid,.project-grid,.git-grid,.carousel__meta{grid-template-columns:1fr}}@media (max-width: 860px){.topbar{grid-template-columns:1fr auto;border-radius:18px}.topbar__menu-button{display:inline-flex;flex-direction:column;align-items:stretch;justify-content:center;width:2.15rem;height:2.15rem;padding:.42rem}.topbar__nav,.topbar__socials{display:none}.topbar--menu-open .topbar__nav,.topbar--menu-open .topbar__socials{display:flex;grid-column:1 / -1;width:100%}.topbar--menu-open .topbar__nav{flex-direction:column;align-items:stretch;gap:.25rem;padding-top:.35rem}.topbar--menu-open .topbar__socials{gap:.5rem;padding-top:.2rem}.topbar__link{width:100%;padding:.62rem .75rem;border:1px solid var(--line);border-radius:14px;background:#7ee7870a}}@media (max-width: 720px){.app-shell{width:min(100vw - 1rem,100%);padding-top:.45rem;padding-bottom:2rem}.topbar{grid-template-columns:1fr auto;top:.5rem;gap:.45rem .85rem;padding:.48rem .65rem;border-radius:18px}.topbar--scrolled{background:#050c0975}.topbar__brand{gap:.35rem}.topbar__lights{display:none}.topbar__prompt{font-size:.66rem;letter-spacing:.14em}.topbar__name{font-size:.82rem}.topbar__menu-button{display:inline-flex;flex-direction:column;align-items:stretch;justify-content:center;width:2.15rem;height:2.15rem;padding:.42rem}.topbar__nav,.topbar__socials{display:none}.topbar--menu-open .topbar__nav,.topbar--menu-open .topbar__socials{display:flex;grid-column:1 / -1;width:100%}.topbar--menu-open .topbar__nav{flex-direction:column;align-items:stretch;gap:.25rem;padding-top:.35rem}.topbar--menu-open .topbar__socials{gap:.5rem;padding-top:.2rem}.topbar__link{width:100%;padding:.62rem .75rem;border:1px solid var(--line);border-radius:14px;background:#7ee7870a}.topbar--menu-open .social-chip{width:2.1rem;height:2.1rem}.section,.hero__terminal,.hero__panel,.project-detail{padding:1rem;border-radius:20px}.page{gap:1rem;padding-top:1rem}.section{gap:1rem;scroll-margin-top:5.5rem}.section__header{gap:.6rem}.section h2,.project-detail h1{font-size:clamp(1.5rem,7vw,2rem)}.section__header,.timeline__heading,.footer{flex-direction:column;align-items:start}.hero h1{font-size:clamp(2rem,11vw,3rem);max-width:min(100%,11ch)}.hero__identity{gap:.85rem}.hero__avatar{width:clamp(4.5rem,20vw,5.75rem)}.hero__role{margin:.35rem 0;font-size:1rem}.hero__intro,.section__intro,.project-card__summary,.project-detail__summary,.project-detail__description,.timeline__summary,.footer__text,.copy-grid__item,.git-card p,.info-card__focus,.carousel__description{line-height:1.58;font-size:.92rem}.hero__meta{margin:.9rem 0;gap:.45rem;font-size:.84rem}.hero__terminal-meta,.section__chrome,.hero__status-grid{gap:.55rem}.hero__terminal-meta,.section__chrome{margin-bottom:.8rem;font-size:.68rem}.hero__actions,.project-card__actions,.contact-panel__links{gap:.55rem}.button{min-height:2.55rem;padding:.62rem .84rem;font-size:.9rem}.info-card,.project-card,.git-card,.timeline__content,.carousel__slide,.contact-panel{padding:.95rem}.hero__command-cluster{margin-bottom:.95rem;gap:.45rem}.hero__command-chip{font-size:.74rem}.hero__status-grid{grid-template-columns:1fr}.carousel__slide h3{font-size:clamp(1.25rem,6vw,1.7rem)}.carousel__meta{gap:.65rem;margin-top:.95rem}.carousel__meta li{padding:.75rem .8rem;font-size:.88rem}.tag-list{gap:.45rem;margin-top:.8rem}.tag-list li{padding:.36rem .55rem;font-size:.8rem}.timeline{gap:.8rem}.timeline__item{grid-template-columns:1rem minmax(0,1fr);gap:.75rem}.timeline__marker{width:.72rem;height:.72rem;margin-top:.95rem;box-shadow:0 0 0 4px #7ee7870f}.timeline__period,.contact-panel__availability{font-size:.96rem}.timeline__list{margin-top:.75rem;line-height:1.55;font-size:.9rem}.project-detail{margin-top:1rem;gap:1rem}.footer{margin-top:1.25rem;padding:.25rem 0 0;align-items:center}}@media (max-width: 480px){.app-shell{width:min(100vw - .7rem,100%)}.topbar{padding:.56rem .72rem}.topbar__prompt,.section__eyebrow,.project-detail__label,.project-card__status,.terminal__line,.hero__panel-label,.contact-panel__command,.footer__title,.info-card__label,.git-card__label,.timeline__company,.carousel__label,.section__command{font-size:.68rem;letter-spacing:.12em}.hero h1{font-size:clamp(1.8rem,10vw,2.5rem)}.hero__identity{align-items:flex-start;gap:.7rem}.hero__avatar{width:4.35rem}.section,.hero__terminal,.hero__panel,.project-detail,.info-card,.project-card,.git-card,.timeline__content,.carousel__slide,.contact-panel{padding:.85rem}.button{min-height:2.4rem;width:100%}.footer__signature{font-size:.72rem;letter-spacing:.06em}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.carousel__track{transition:none!important}*,*:before,*:after{animation:none!important;transition:none!important}}
