@import"https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@300;400;500;600;700;800&family=Fraunces:opsz,wght@9..144,400;9..144,500;9..144,600;9..144,700&family=Fira+Code:wght@400;500;600;700&display=swap";@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{box-sizing:border-box}html,body,#app{min-height:100%}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--fg);font-family:var(--font-body);-webkit-font-smoothing:antialiased;font-size:15px;line-height:1.55;transition:background .4s,color .4s;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer;color:inherit;background:0 0;border:0}}@layer components{.app-shell{isolation:isolate;flex-direction:column;min-height:100vh;display:flex;position:relative}.site-nav{z-index:20;border-bottom:1px solid var(--border);background-color:var(--bg);position:relative}.site-nav__inner,.site-footer__inner{justify-content:space-between;align-items:center;gap:1.5rem;width:min(1200px,100%);margin:0 auto;padding:1.1rem 2.25rem;display:flex}.site-nav__brand{color:var(--muted);font-family:var(--font-mono);letter-spacing:.02em;font-size:12px}.app-main{min-height:0;display:flex;position:relative}.route-stage{isolation:isolate;touch-action:pan-y pinch-zoom;flex:auto;display:grid;position:relative;overflow:clip}.route-stage__page{grid-area:1/1;min-width:0}.site-nav__links,.site-footer__links{flex-wrap:wrap;align-items:center;gap:1.25rem;display:flex}.site-nav__link{color:var(--muted);border-bottom:2px solid #0000;padding:.4rem .15rem;font-size:13px;font-weight:600;transition:color .2s,border-color .2s}.site-nav__link:hover,.site-nav__link.active{color:var(--fg)}.site-nav__link.active{border-bottom-color:var(--fg)}.lang-toggle{border:1px solid var(--border);background:var(--card);font-family:var(--font-mono);border-radius:999px;padding:.2rem;font-size:11px;display:flex}.lang-toggle button{color:var(--muted);border-radius:999px;padding:.25rem .65rem;font-weight:600}.lang-toggle button.on{background:var(--fg);color:var(--bg)}.page{width:min(1080px,100%);margin:0 auto;padding:5rem 0 7.5rem}.page-title{font-family:var(--font-display);letter-spacing:-.03em;margin:0 0 .75rem;font-size:clamp(40px,6vw,72px);font-weight:700;line-height:1}.page-sub{color:var(--muted);margin:0 0 3.75rem;font-size:15px}.back-to-top{z-index:45;border:1px solid var(--fg);place-items:center;width:42px;height:42px;display:inline-grid;position:fixed;bottom:clamp(1rem,3vw,1.8rem);right:clamp(1rem,3vw,1.8rem)}@supports (color:color-mix(in lab,red,red)){.back-to-top{border:1px solid color-mix(in oklab,var(--fg) 12%,var(--border))}}.back-to-top{background:var(--card);border-radius:999px}@supports (color:color-mix(in lab,red,red)){.back-to-top{background:color-mix(in oklab,var(--card) 94%,var(--bg))}}.back-to-top{box-shadow:0 14px 32px var(--fg)}@supports (color:color-mix(in lab,red,red)){.back-to-top{box-shadow:0 14px 32px color-mix(in oklab,var(--fg) 10%,transparent)}}.back-to-top{color:var(--fg);font-family:var(--font-mono);opacity:0;pointer-events:none;font-size:18px;transition:opacity .18s,transform .18s,border-color .18s,background-color .18s;transform:translateY(10px)scale(.94)}.back-to-top.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)scale(1)}.back-to-top:hover{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.back-to-top:hover{border-color:color-mix(in oklab,var(--accent) 52%,var(--border))}}.back-to-top:hover{background:var(--card)}@supports (color:color-mix(in lab,red,red)){.back-to-top:hover{background:color-mix(in oklab,var(--card) 88%,white)}}.back-to-top:hover{transform:translateY(-2px)scale(1.02)}.back-to-top:focus-visible{outline:2px solid var(--accent)}@supports (color:color-mix(in lab,red,red)){.back-to-top:focus-visible{outline:2px solid color-mix(in oklab,var(--accent) 70%,white)}}.back-to-top:focus-visible{outline-offset:3px}.tags,.p-stack,.tl-stack{flex-wrap:wrap;gap:.4rem;display:flex}.r-meta,.project-card .p-period,.project-card .p-link{color:var(--subtle);font-family:var(--font-mono);font-size:11px}.project-card .p-name,.resume-head h1{font-family:var(--font-display);letter-spacing:-.02em;flex-wrap:wrap;align-items:center;gap:.5rem;font-weight:700;display:flex}.project-card .p-desc,.resume-head .r-sub,.rs-entry ul{color:var(--muted)}.tag,.status-badge{align-items:center;display:inline-flex}.tag{background:var(--fg);border-radius:999px}@supports (color:color-mix(in lab,red,red)){.tag{background:color-mix(in oklab,var(--fg) 6%,transparent)}}.tag{color:var(--muted);font-family:var(--font-mono);padding:.2rem .5rem;font-size:10px}.stack-block .tags.primary .tag{background:var(--fg);color:var(--bg);padding:.3125rem .75rem;font-size:12px}.status-badge{border:1px solid var(--border);color:var(--subtle);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;border-radius:4px;padding:.125rem .45rem;font-size:9px}.home{text-align:center;flex-direction:column;align-items:center;gap:clamp(3.25rem,8vw,5.75rem);display:flex}.home-hero{flex-direction:column;justify-content:center;align-items:center;gap:1.75rem;min-height:calc(100svh - 270px);display:flex}.magmigo-logo{font-family:var(--font-display);font-size:clamp(64px,12vw,168px);font-weight:var(--font-weight-display);letter-spacing:-.04em;line-height:1.06;display:inline-block;position:relative}.magmigo-logo .mg-text{z-index:2;padding-bottom:.06em;display:inline-block;position:relative}.magmigo-logo.g-orbs .mg-text{color:#0000;background:linear-gradient(90deg,#c026d3,#60a5fa,#f472b6,#a78bfa,#c026d3) 0 0/300% 100%;-webkit-background-clip:text;background-clip:text;animation:6s linear infinite wash}.magmigo-logo.g-wash .mg-text{color:#0000;background:linear-gradient(90deg,#c026d3,#60a5fa,#34d399,#f59e0b,#ec4899,#c026d3) 0 0/500% 100%;-webkit-background-clip:text;background-clip:text;animation:10s linear infinite wash}.magmigo-logo.g-split .mg-text{color:#0000;background:linear-gradient(90deg,#c026d3,#c026d3,#60a5fa,#60a5fa,#c026d3,#c026d3) 0 0/300% 100%;-webkit-background-clip:text;background-clip:text;animation:5s linear infinite wash}.magmigo-logo.g-ghost .mg-text{color:#0000;-webkit-text-stroke:2px var(--fg);background:linear-gradient(90deg,#c026d399,#60a5fa99,#f472b699,#c026d399) 0 0/300% 100%;-webkit-background-clip:text;background-clip:text;animation:7s linear infinite wash,3s ease-in-out infinite ghostGlow}.home-tagline{max-width:560px;color:var(--muted);text-wrap:pretty;font-size:17px}.home-intro{max-width:480px;color:var(--subtle);font-size:14px;font-style:italic}.contact-card{border:1px solid var(--border);background:linear-gradient(180deg,var(--card),var(--card));border-radius:16px;flex-direction:column;align-items:center;gap:.45rem;margin-top:0;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.contact-card{background:linear-gradient(180deg,color-mix(in oklab,var(--card) 92%,transparent),color-mix(in oklab,var(--card) 82%,var(--bg)))}}.contact-card{box-shadow:0 10px 28px var(--fg);padding:.55rem .8rem .6rem}@supports (color:color-mix(in lab,red,red)){.contact-card{box-shadow:0 10px 28px color-mix(in oklab,var(--fg) 5%,transparent)}}.contact-card__eyebrow{color:var(--subtle);font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;font-size:10px}.contact-card__links{justify-content:center;gap:.7rem;display:flex}.contact-icon{width:28px;height:28px;color:var(--muted);border-radius:8px;justify-content:center;align-items:center;transition:transform .22s,color .22s,opacity .22s;display:inline-flex}.contact-icon svg{width:17px;height:17px}.contact-icon:hover{color:var(--fg);transform:translateY(-2px)}.contact-icon:focus-visible{outline:2px solid var(--accent)}@supports (color:color-mix(in lab,red,red)){.contact-icon:focus-visible{outline:2px solid color-mix(in oklab,var(--accent) 70%,white)}}.contact-icon:focus-visible{outline-offset:2px}.now-playing{border:1px solid var(--border);background:var(--card);color:var(--muted);font-family:var(--font-mono);border-radius:999px;align-items:center;gap:.65rem;padding:.7rem 1rem;font-size:11px;display:inline-flex}.home-presence{flex-direction:column;align-items:center;gap:.75rem;display:inline-flex}.home-focus{text-align:left;width:min(920px,100%)}.home-focus__head{gap:.45rem;margin-bottom:1rem;display:grid}.home-focus__eyebrow{color:var(--subtle);font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;font-size:10px}.home-focus h2{font-family:var(--font-display);margin:0;font-size:clamp(26px,4vw,42px);font-weight:700;line-height:1.08}.home-focus__grid{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:.8rem;display:grid}.home-focus-card{border:1px solid var(--fg);min-height:166px;position:relative;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.home-focus-card{border:1px solid color-mix(in oklab,var(--fg) 7%,var(--border))}}.home-focus-card{background:linear-gradient(135deg,var(--card),var(--card)),var(--card);border-radius:20px}@supports (color:color-mix(in lab,red,red)){.home-focus-card{background:linear-gradient(135deg,color-mix(in oklab,var(--card) 96%,var(--bg)),color-mix(in oklab,var(--card) 82%,var(--bg))),var(--card)}}.home-focus-card{box-shadow:0 18px 40px var(--fg);padding:1.15rem}@supports (color:color-mix(in lab,red,red)){.home-focus-card{box-shadow:0 18px 40px color-mix(in oklab,var(--fg) 5%,transparent)}}.home-focus-card{transition:transform .22s,border-color .22s,box-shadow .22s}.home-focus-card:first-child{grid-row:span 2;min-height:100%}.home-focus-card:hover{border-color:var(--fg);transform:translateY(-2px)}@supports (color:color-mix(in lab,red,red)){.home-focus-card:hover{border-color:color-mix(in oklab,var(--fg) 16%,var(--border))}}.home-focus-card:hover{box-shadow:0 24px 48px var(--fg)}@supports (color:color-mix(in lab,red,red)){.home-focus-card:hover{box-shadow:0 24px 48px color-mix(in oklab,var(--fg) 8%,transparent)}}.home-focus-card__mark{background:var(--focus-accent);border-radius:999px;width:2.4rem;height:.42rem;margin-bottom:1.05rem;display:block}.home-focus-card--rose{--focus-accent:#f472b6}.home-focus-card--mint{--focus-accent:#34d399}.home-focus-card--blue{--focus-accent:#60a5fa}.home-focus-card h3{color:var(--fg);font-family:var(--font-display);margin:0;font-size:clamp(18px,2vw,22px);font-weight:700;line-height:1.18}.home-focus-card p{max-width:23rem;color:var(--muted);margin:.75rem 0 0;font-size:13px;line-height:1.7}.np-bars{align-items:flex-end;gap:2px;height:12px;display:inline-flex}.np-bars i{background:var(--muted);width:2px;animation:.9s ease-in-out infinite bars;display:block}.np-bars i:first-child{height:40%;animation-delay:0s}.np-bars i:nth-child(2){height:100%;animation-delay:.2s}.np-bars i:nth-child(3){height:60%;animation-delay:.4s}.np-bars i:nth-child(4){height:80%;animation-delay:.1s}.about-prose{max-width:640px;color:var(--fg);font-size:17px;line-height:1.7}.about-prose p{margin:0 0 1.125rem}.stack-block{margin-top:3rem}.stack-block h3{color:var(--subtle);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;margin:0 0 .9rem;font-size:13px}.timeline-showcase{border:1px solid var(--fg);margin:1.4rem 0 0;position:relative;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.timeline-showcase{border:1px solid color-mix(in oklab,var(--fg) 6%,var(--border))}}.timeline-showcase{background:var(--card);border-radius:32px}@supports (color:color-mix(in lab,red,red)){.timeline-showcase{background:color-mix(in oklab,var(--card) 94%,var(--bg))}}.timeline-showcase{box-shadow:0 20px 44px var(--fg);padding:clamp(1.4rem,2.8vw,2.2rem)}@supports (color:color-mix(in lab,red,red)){.timeline-showcase{box-shadow:0 20px 44px color-mix(in oklab,var(--fg) 5%,transparent)}}.timeline-showcase{isolation:isolate;--timeline-meta-width:108px;--timeline-axis-width:40px;--timeline-gap:1.2rem}.timeline-showcase__noise{background-image:radial-gradient(var(--fg) .8px,transparent .8px);position:absolute;inset:0}@supports (color:color-mix(in lab,red,red)){.timeline-showcase__noise{background-image:radial-gradient(color-mix(in oklab,var(--fg) 8%,transparent) .8px,transparent .8px)}}.timeline-showcase__noise{opacity:.18;pointer-events:none;background-size:22px 22px;-webkit-mask-image:linear-gradient(#0000006b,#0000 82%);mask-image:linear-gradient(#0000006b,#0000 82%)}.timeline-showcase__head,.timeline-showcase__list,.timeline-story__card{z-index:1;position:relative}.timeline-showcase__head{border-bottom:1px solid var(--fg);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:1rem 1.5rem;margin-bottom:2rem;padding-bottom:1.2rem;display:grid}@supports (color:color-mix(in lab,red,red)){.timeline-showcase__head{border-bottom:1px solid color-mix(in oklab,var(--fg) 6%,var(--border))}}.timeline-showcase__range,.timeline-showcase__stats,.timeline-story__counter,.timeline-story__eyebrow,.timeline-story__link{color:var(--subtle);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;font-size:11px}.timeline-showcase__summary{max-width:44rem;color:var(--fg);margin:.45rem 0 0;font-size:clamp(16px,2vw,19px);line-height:1.65}.timeline-showcase__stats{white-space:nowrap}.timeline-showcase__list{gap:1.25rem;display:grid}.timeline-showcase__beam{top:.45rem;bottom:.45rem;left:calc(var(--timeline-meta-width) + var(--timeline-gap) + (var(--timeline-axis-width) / 2));width:2px;position:absolute;transform:translate(-50%)}.timeline-showcase__beam-track,.timeline-showcase__beam-fill{border-radius:999px;position:absolute;inset:0}.timeline-showcase__beam-track{background:var(--fg)}@supports (color:color-mix(in lab,red,red)){.timeline-showcase__beam-track{background:color-mix(in oklab,var(--fg) 10%,var(--border))}}.timeline-showcase__beam-fill{background:var(--fg)}@supports (color:color-mix(in lab,red,red)){.timeline-showcase__beam-fill{background:color-mix(in oklab,var(--fg) 82%,var(--border))}}.timeline-showcase__beam-fill{opacity:.9;transform-origin:top top;transform:scaleY(0)}.timeline-story{grid-template-columns:var(--timeline-meta-width) var(--timeline-axis-width) minmax(0,1fr);gap:var(--timeline-gap);align-items:flex-start;padding:.2rem 0;display:grid;position:relative}.timeline-story__meta{flex-direction:column;align-items:flex-start;gap:.55rem;padding-top:.95rem;display:flex}.timeline-story__counter{font-size:10px}.timeline-story__period{border:1px solid var(--fg);align-items:center;padding:.35rem .75rem;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.timeline-story__period{border:1px solid color-mix(in oklab,var(--fg) 10%,var(--border))}}.timeline-story__period{background:var(--bg);border-radius:999px}@supports (color:color-mix(in lab,red,red)){.timeline-story__period{background:color-mix(in oklab,var(--bg) 72%,transparent)}}.timeline-story__period{color:var(--fg);font-family:var(--font-mono);font-size:11px;font-weight:600}.timeline-story__spine{justify-items:center;padding-top:1.05rem;display:grid;position:relative}.timeline-story__pulse,.timeline-story__node{border-radius:50%}.timeline-story__pulse{background:var(--fg);width:34px;height:34px;position:absolute;top:.2rem}@supports (color:color-mix(in lab,red,red)){.timeline-story__pulse{background:color-mix(in oklab,var(--fg) 10%,transparent)}}.timeline-story__pulse{opacity:0;transition:opacity .24s,transform .24s;transform:scale(.65)}.timeline-story__node{z-index:1;border:2px solid var(--fg);width:12px;height:12px;position:relative}@supports (color:color-mix(in lab,red,red)){.timeline-story__node{border:2px solid color-mix(in oklab,var(--fg) 74%,var(--border))}}.timeline-story__node{background:var(--bg);box-shadow:0 0 0 6px var(--card)}@supports (color:color-mix(in lab,red,red)){.timeline-story__node{box-shadow:0 0 0 6px color-mix(in oklab,var(--card) 92%,transparent)}}.timeline-story__node{transition:background .25s,border-color .25s,box-shadow .25s,transform .25s}.timeline-story__card{border:1px solid var(--fg);overflow:hidden}@supports (color:color-mix(in lab,red,red)){.timeline-story__card{border:1px solid color-mix(in oklab,var(--fg) 8%,var(--border))}}.timeline-story__card{background:var(--card);border-radius:24px}@supports (color:color-mix(in lab,red,red)){.timeline-story__card{background:color-mix(in oklab,var(--card) 97%,var(--bg))}}.timeline-story__card{box-shadow:0 18px 40px var(--fg);padding:1.45rem 1.5rem 1.4rem}@supports (color:color-mix(in lab,red,red)){.timeline-story__card{box-shadow:0 18px 40px color-mix(in oklab,var(--fg) 6%,transparent)}}.timeline-story__card{transition:transform .26s,border-color .26s,box-shadow .26s}.timeline-story__watermark{color:var(--fg);position:absolute;bottom:.55rem;right:.9rem}@supports (color:color-mix(in lab,red,red)){.timeline-story__watermark{color:color-mix(in oklab,var(--fg) 4%,transparent)}}.timeline-story__watermark{font-family:var(--font-display);letter-spacing:-.08em;-webkit-user-select:none;user-select:none;font-size:clamp(56px,8vw,104px);line-height:1}.timeline-story__card-top,.timeline-story__title,.timeline-story__desc,.timeline-story__footer{z-index:1;position:relative}.timeline-story__card-top{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.85rem;display:flex}.timeline-story__eyebrow{font-size:10px}.timeline-story__title{font-family:var(--font-display);letter-spacing:-.04em;flex-wrap:wrap;align-items:center;gap:.5rem;margin:0 0 .75rem;font-size:clamp(28px,3vw,36px);font-weight:700;line-height:1.02;display:flex}.timeline-story__desc{max-width:38rem;color:var(--muted);margin:0;font-size:14px;line-height:1.7}.timeline-story__footer{justify-content:space-between;align-items:flex-end;gap:1rem;margin-top:1rem;display:flex}.timeline-story__link{white-space:nowrap;font-size:10px}.timeline-story__ext{color:var(--subtle);font-size:16px;transition:color .2s,transform .2s}.timeline-story:hover .timeline-story__card{border-color:var(--fg);transform:translateY(-2px)}@supports (color:color-mix(in lab,red,red)){.timeline-story:hover .timeline-story__card{border-color:color-mix(in oklab,var(--fg) 16%,var(--border))}}.timeline-story:hover .timeline-story__card{box-shadow:0 24px 48px var(--fg)}@supports (color:color-mix(in lab,red,red)){.timeline-story:hover .timeline-story__card{box-shadow:0 24px 48px color-mix(in oklab,var(--fg) 9%,transparent)}}.timeline-story:hover .timeline-story__ext{color:var(--fg);transform:translate(2px,-2px)}.timeline-story.is-active .timeline-story__pulse{opacity:1;transform:scale(1)}.timeline-story.is-active .timeline-story__node{border-color:var(--fg);background:var(--fg);box-shadow:0 0 0 8px var(--fg);transform:scale(1.08)}@supports (color:color-mix(in lab,red,red)){.timeline-story.is-active .timeline-story__node{box-shadow:0 0 0 8px color-mix(in oklab,var(--fg) 12%,transparent)}}.timeline-story.is-active .timeline-story__card{border-color:var(--fg)}@supports (color:color-mix(in lab,red,red)){.timeline-story.is-active .timeline-story__card{border-color:color-mix(in oklab,var(--fg) 16%,var(--border))}}.timeline-story.is-active .timeline-story__card{box-shadow:0 26px 54px var(--fg)}@supports (color:color-mix(in lab,red,red)){.timeline-story.is-active .timeline-story__card{box-shadow:0 26px 54px color-mix(in oklab,var(--fg) 8%,transparent)}}.timeline-story--placeholder .timeline-story__node{box-shadow:none;background:0 0;border-style:dashed}.timeline-story--placeholder .timeline-story__card{background:var(--card);border-style:dashed}@supports (color:color-mix(in lab,red,red)){.timeline-story--placeholder .timeline-story__card{background:color-mix(in oklab,var(--card) 94%,var(--bg))}}.projects-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.25rem;display:grid}.project-card{border:1px solid var(--border);background:var(--card);border-radius:20px;flex-direction:column;gap:.9rem;padding:1.5rem;transition:transform .3s,border-color .3s;display:flex}.project-card:hover{border-color:var(--fg);transform:translateY(-3px)}@supports (color:color-mix(in lab,red,red)){.project-card:hover{border-color:color-mix(in oklab,var(--fg) 30%,var(--border))}}.p-head{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.project-card .p-name{font-size:24px}.project-card .p-link:hover{color:var(--fg)}.hello-page{isolation:isolate;place-items:center;min-height:calc(100vh - 180px);display:grid;position:relative;overflow:hidden}.hello-page__grid,.hello-page__halo,.hello-page__scan{pointer-events:none;position:absolute}.hello-page__grid{background-image:linear-gradient(90deg,var(--fg) 1px,transparent 1px),linear-gradient(180deg,var(--fg) 1px,transparent 1px);inset:0}@supports (color:color-mix(in lab,red,red)){.hello-page__grid{background-image:linear-gradient(90deg,color-mix(in oklab,var(--fg) 4%,transparent) 1px,transparent 1px),linear-gradient(180deg,color-mix(in oklab,var(--fg) 4%,transparent) 1px,transparent 1px)}}.hello-page__grid{opacity:.32;background-size:28px 28px;-webkit-mask-image:radial-gradient(circle,#000 42%,#0000 88%);mask-image:radial-gradient(circle,#000 42%,#0000 88%)}.hello-page__halo{filter:blur(22px);opacity:.72;border-radius:999px}.hello-page__halo--left{background:var(--fg);width:14rem;height:14rem;top:12%;left:8%}@supports (color:color-mix(in lab,red,red)){.hello-page__halo--left{background:color-mix(in oklab,var(--fg) 12%,transparent)}}.hello-page__halo--left{animation:12s ease-in-out infinite helloDrift}.hello-page__halo--right{background:var(--accent);width:18rem;height:18rem;bottom:10%;right:8%}@supports (color:color-mix(in lab,red,red)){.hello-page__halo--right{background:color-mix(in oklab,var(--accent) 16%,transparent)}}.hello-page__halo--right{animation:15s ease-in-out infinite reverse helloDrift}.hello-page__scan{background:var(--fg);inset-inline:12%;height:1px;top:22%}@supports (color:color-mix(in lab,red,red)){.hello-page__scan{background:color-mix(in oklab,var(--fg) 18%,transparent)}}.hello-page__scan{box-shadow:0 0 22px var(--fg)}@supports (color:color-mix(in lab,red,red)){.hello-page__scan{box-shadow:0 0 22px color-mix(in oklab,var(--fg) 18%,transparent)}}.hello-page__scan{opacity:.4;animation:8s linear infinite helloScan}.hello-shell{z-index:2;place-items:center;gap:1rem;width:min(100%,46rem);display:grid;position:relative}.hello-shell__label{border:1px solid var(--fg);justify-content:center;align-items:center;padding:.45rem .85rem;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.hello-shell__label{border:1px solid color-mix(in oklab,var(--fg) 8%,var(--border))}}.hello-shell__label{background:var(--card);border-radius:999px}@supports (color:color-mix(in lab,red,red)){.hello-shell__label{background:color-mix(in oklab,var(--card) 88%,transparent)}}.hello-shell__label{color:var(--subtle);font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;box-shadow:0 10px 24px var(--fg);font-size:10px}@supports (color:color-mix(in lab,red,red)){.hello-shell__label{box-shadow:0 10px 24px color-mix(in oklab,var(--fg) 6%,transparent)}}.hello-panel,.hello-final,.hello-signal{width:min(100%,38rem);position:relative}.hello-panel{border:1px solid var(--fg)}@supports (color:color-mix(in lab,red,red)){.hello-panel{border:1px solid color-mix(in oklab,var(--fg) 8%,var(--border))}}.hello-panel{background:linear-gradient(180deg,var(--card),var(--card)),radial-gradient(circle at top,var(--accent),transparent 58%);border-radius:30px}@supports (color:color-mix(in lab,red,red)){.hello-panel{background:linear-gradient(180deg,color-mix(in oklab,var(--card) 96%,transparent),color-mix(in oklab,var(--card) 88%,var(--bg))),radial-gradient(circle at top,color-mix(in oklab,var(--accent) 9%,transparent),transparent 58%)}}.hello-panel{box-shadow:0 28px 70px var(--fg);padding:1rem 1.2rem 1.25rem}@supports (color:color-mix(in lab,red,red)){.hello-panel{box-shadow:0 28px 70px color-mix(in oklab,var(--fg) 9%,transparent)}}.hello-panel{animation:.72s cubic-bezier(.2,.9,.2,1) both helloPanelIn}.hello-panel__chrome{gap:.45rem;margin-bottom:1rem;display:flex}.hello-panel__chrome span{background:var(--fg);border-radius:50%;width:9px;height:9px;display:block}@supports (color:color-mix(in lab,red,red)){.hello-panel__chrome span{background:color-mix(in oklab,var(--fg) 18%,transparent)}}.hello-input-wrap{text-align:center;width:100%;transition:transform .95s cubic-bezier(.3,0,.2,1),opacity .7s}.hello-input-wrap.falling{opacity:0;transform:translateY(100vh)rotate(10deg)scale(.94)}.hello-hint,.hello-sub,.hello-final__eyebrow,.hello-lang{color:var(--subtle);font-family:var(--font-mono)}.hello-hint{letter-spacing:.08em;text-transform:uppercase;margin-bottom:1rem;font-size:11px}.hello-input{border:none;border-bottom:2px solid var(--fg);width:100%}@supports (color:color-mix(in lab,red,red)){.hello-input{border-bottom:2px solid color-mix(in oklab,var(--fg) 12%,var(--border))}}.hello-input{color:var(--fg);text-align:center;font-family:var(--font-display);font-size:clamp(40px,7vw,80px);font-weight:var(--font-weight-display);letter-spacing:-.03em;background:0 0;outline:none;padding:.5rem 0;transition:border-color .3s,transform .3s}.hello-input::placeholder{color:var(--subtle);opacity:.6}.hello-input:focus{border-bottom-color:var(--fg);transform:scale(1.01)}.hello-input.invalid{border-bottom-color:#ef4444;animation:.4s shake}.hello-sub{letter-spacing:.08em;text-transform:uppercase;min-height:14px;margin-top:.875rem;font-size:10px}.hello-signal{isolation:isolate;place-items:center;min-height:15rem;display:grid;position:relative}.hello-signal__beam{background:linear-gradient(90deg,transparent,var(--fg),var(--fg),var(--fg),transparent);width:min(72vw,30rem);height:1px;position:absolute}@supports (color:color-mix(in lab,red,red)){.hello-signal__beam{background:linear-gradient(90deg,transparent,color-mix(in oklab,var(--fg) 12%,transparent),color-mix(in oklab,var(--fg) 44%,transparent),color-mix(in oklab,var(--fg) 12%,transparent),transparent)}}.hello-signal__beam{box-shadow:0 0 26px var(--fg)}@supports (color:color-mix(in lab,red,red)){.hello-signal__beam{box-shadow:0 0 26px color-mix(in oklab,var(--fg) 12%,transparent)}}.hello-signal__beam{opacity:0;animation:.92s cubic-bezier(.2,.9,.2,1) forwards helloSignalBeam}.hello-signal__ring{border:1px solid var(--fg);width:10rem;height:10rem;position:absolute}@supports (color:color-mix(in lab,red,red)){.hello-signal__ring{border:1px solid color-mix(in oklab,var(--fg) 14%,var(--border))}}.hello-signal__ring{opacity:0;border-radius:50%;animation:.9s ease-out forwards helloSignalRing}.hello-signal__ring--late{animation-delay:.14s}.hello-signal__ring--far{width:13.5rem;height:13.5rem;animation-delay:.28s}.hello-signal__text{z-index:1;color:#0000;font-family:var(--font-display);letter-spacing:-.05em;text-shadow:0 0 24px #c026d32e,0 0 52px #60a5fa1f;background:linear-gradient(90deg,#c026d3,#60a5fa);-webkit-background-clip:text;background-clip:text;font-size:clamp(58px,11vw,144px);font-weight:900;animation:.96s cubic-bezier(.16,1,.3,1.15) helloSignalText;position:relative}.hello-signal__text:before,.hello-signal__text:after{content:attr(data-text);z-index:-1;color:#ffffffc7;opacity:0;filter:blur(.6px);-webkit-text-fill-color:currentColor;pointer-events:none;position:absolute;inset:0}.hello-signal__text:before{color:#c026d385;animation:.96s cubic-bezier(.16,1,.3,1.15) helloSignalGhostLeft}.hello-signal__text:after{color:#60a5fa85;animation:.96s cubic-bezier(.16,1,.3,1.15) helloSignalGhostRight}.hello-final{text-align:center;justify-items:center;gap:.9rem;display:grid}.hello-final__eyebrow{letter-spacing:.16em;text-transform:uppercase;font-size:10px}.hello-big{background:linear-gradient(90deg,var(--fg),var(--fg),var(--fg))}@supports (color:color-mix(in lab,red,red)){.hello-big{background:linear-gradient(90deg,color-mix(in oklab,var(--fg) 88%,#c026d3),color-mix(in oklab,var(--fg) 74%,#60a5fa),color-mix(in oklab,var(--fg) 88%,#c026d3))}}.hello-big{color:#0000;font-family:var(--font-display);font-size:clamp(72px,14vw,200px);font-weight:var(--font-weight-display);letter-spacing:-.05em;text-shadow:0 18px 38px var(--fg);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;line-height:.95}@supports (color:color-mix(in lab,red,red)){.hello-big{text-shadow:0 18px 38px color-mix(in oklab,var(--fg) 10%,transparent)}}.hello-big{animation:.72s cubic-bezier(.16,1,.3,1) helloBigIn,9s linear infinite wash}.hello-lang{letter-spacing:.16em;text-transform:uppercase;font-size:12px}.fountain-layer{z-index:4;pointer-events:none;position:fixed;inset:0;overflow:hidden}.fountain-particle{white-space:nowrap;color:var(--fg);font-family:var(--font-display);text-shadow:0 10px 18px var(--fg);font-weight:700;position:absolute}@supports (color:color-mix(in lab,red,red)){.fountain-particle{text-shadow:0 10px 18px color-mix(in oklab,var(--fg) 14%,transparent)}}.fountain-particle{will-change:transform,opacity}.api-page{max-width:1080px}.api-doc{gap:1.25rem;display:grid}.api-doc__section{border-top:1px solid var(--border);gap:.8rem;padding:1rem 0;display:grid}.api-doc__section h2,.api-doc__section h3,.api-doc__section p{margin:0}.api-doc__section h2{font-family:var(--font-display);font-size:28px;line-height:1.1}.api-doc__section h3{color:var(--muted);font-size:13px;font-weight:600}.api-doc__section p{max-width:68rem;color:var(--muted)}.api-doc code{color:var(--fg);font-family:var(--font-mono);font-size:12px}.api-doc__base{border:1px solid var(--border);background:var(--card);border-radius:8px;width:fit-content;max-width:100%;padding:.5rem .65rem;display:inline-flex;overflow-x:auto}.api-doc__table{gap:.45rem;display:grid}.api-doc__row{border-bottom:1px solid var(--border);grid-template-columns:4.25rem minmax(16rem,24rem) 1fr;align-items:baseline;gap:.75rem;padding:.6rem 0;display:grid}@supports (color:color-mix(in lab,red,red)){.api-doc__row{border-bottom:1px solid color-mix(in oklab,var(--border) 64%,transparent)}}.api-doc__row{color:var(--muted)}.api-doc pre{border:1px solid var(--border);background:var(--card);border-radius:8px;max-width:100%;margin:0;padding:.9rem;overflow-x:auto}@supports (color:color-mix(in lab,red,red)){.api-doc pre{background:color-mix(in oklab,var(--card) 86%,var(--bg))}}.api-doc pre{line-height:1.5}@media(max-width:720px){.api-doc__row{grid-template-columns:1fr;gap:.25rem}}.hutao-page{padding-top:3.75rem}.hutao-grid{-webkit-user-select:none;user-select:none;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem;margin-top:1.875rem;display:grid}.hutao-toolbar{border:1px solid var(--border);background:var(--card);border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-top:1.875rem;padding:.8rem;display:flex}@supports (color:color-mix(in lab,red,red)){.hutao-toolbar{background:color-mix(in oklab,var(--card) 82%,var(--bg))}}.hutao-toolbar__meta,.hutao-toolbar__actions{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.hutao-toolbar__meta{color:var(--muted);font-family:var(--font-mono);font-size:11px}.hutao-action{border:1px solid var(--border);background:var(--bg);min-height:34px;color:var(--fg);font-family:var(--font-mono);border-radius:8px;padding:.45rem .72rem;font-size:11px;transition:border-color .18s,opacity .18s,transform .18s}.hutao-action:hover:not(:disabled){border-color:var(--fg)}@supports (color:color-mix(in lab,red,red)){.hutao-action:hover:not(:disabled){border-color:color-mix(in oklab,var(--fg) 28%,var(--border))}}.hutao-action:hover:not(:disabled){transform:translateY(-1px)}.hutao-action:disabled{cursor:not-allowed;opacity:.46}.hutao-action--primary{background:var(--fg);color:var(--bg)}.hutao-download-error{color:#ff5b5b;margin-top:.75rem}@supports (color:color-mix(in lab,red,red)){.hutao-download-error{color:color-mix(in oklab,#ff5b5b 82%,var(--fg))}}.hutao-download-error{font-family:var(--font-mono);font-size:11px}.hutao-card,.hutao-state{aspect-ratio:3/4;border:1px solid var(--border);background:var(--card);border-radius:8px}.hutao-card{width:100%;color:inherit;text-align:left;transition:border-color .18s,transform .18s;display:grid;position:relative;overflow:hidden}.hutao-card:hover,.hutao-card.is-selected{border-color:var(--fg)}@supports (color:color-mix(in lab,red,red)){.hutao-card:hover,.hutao-card.is-selected{border-color:color-mix(in oklab,var(--fg) 30%,var(--border))}}.hutao-card.is-selected{box-shadow:inset 0 0 0 2px var(--fg)}@supports (color:color-mix(in lab,red,red)){.hutao-card.is-selected{box-shadow:inset 0 0 0 2px color-mix(in oklab,var(--fg) 62%,white)}}.hutao-card:hover{transform:translateY(-2px)}.hutao-card__preview{width:100%;height:100%;color:inherit;text-align:left;-webkit-user-drag:none;touch-action:manipulation;display:block;position:absolute;inset:0}.hutao-card__preview img{object-fit:cover;width:100%;height:100%;display:block}.hutao-caption{background:var(--bg);padding:.5rem .625rem;display:block;position:absolute;bottom:0;left:0;right:0}@supports (color:color-mix(in lab,red,red)){.hutao-caption{background:color-mix(in oklab,var(--bg) 84%,transparent)}}.hutao-caption{color:var(--fg);font-size:12px;line-height:1.35}.hutao-card__select,.hutao-card__download{z-index:1;color:#fff;min-height:32px;font-family:var(--font-mono);opacity:0;pointer-events:none;background:#00000085;border:1px solid oklab(100% 0 5.96046e-8/.26);justify-content:center;align-items:center;font-size:10px;line-height:1;transition:background .18s,border-color .18s,opacity .18s,transform .18s;display:inline-flex;position:absolute;transform:translateY(-4px)}.hutao-card:hover .hutao-card__select,.hutao-card:hover .hutao-card__download,.hutao-card:focus-within .hutao-card__select,.hutao-card:focus-within .hutao-card__download,.hutao-card.has-controls .hutao-card__select,.hutao-card.has-controls .hutao-card__download,.hutao-card.is-selected .hutao-card__select,.hutao-card.is-selected .hutao-card__download{opacity:1;pointer-events:auto;transform:none}.hutao-card__select{border-radius:999px;width:2rem;height:2rem;padding:0;top:.55rem;left:.55rem}.hutao-card__checkmark{border:1px solid #ffffffbd;border-radius:999px;width:1rem;height:1rem;display:block;position:relative}.hutao-card.is-selected .hutao-card__checkmark{background:#fff;border-color:#fff}.hutao-card.is-selected .hutao-card__checkmark:after{content:"";border-bottom:2px solid #000;border-right:2px solid #000;width:.33rem;height:.55rem;position:absolute;top:.16rem;left:.29rem;transform:rotate(45deg)}.hutao-card__download{border-radius:999px;width:2rem;height:2rem;padding:0;font-size:14px;top:.55rem;right:.55rem}.hutao-card__select:hover,.hutao-card__download:hover:not(:disabled){background:#000000ad}.hutao-card__download:disabled{cursor:not-allowed;opacity:.52}.hutao-state{color:var(--subtle);font-family:var(--font-mono);justify-content:center;align-items:center;margin-top:1.875rem;font-size:11px;display:flex}.hutao-state--error{color:#ff5b5b}@supports (color:color-mix(in lab,red,red)){.hutao-state--error{color:color-mix(in oklab,#ff5b5b 80%,var(--fg))}}.hutao-lightbox{z-index:1000;background:#000000d6;place-items:center;padding:1.25rem;display:grid;position:fixed;inset:0}.hutao-lightbox__figure{gap:.75rem;width:min(100%,1120px);max-height:calc(100vh - 2.5rem);margin:0;display:grid}.hutao-lightbox__media{background:#ffffff12;border-radius:8px;min-height:min(68vh,46rem);display:grid;position:relative}.hutao-lightbox__media img{object-fit:contain;opacity:0;border-radius:8px;grid-area:1/1;width:100%;max-height:calc(100vh - 7rem);transition:opacity .18s;display:block}.hutao-lightbox__media img.is-loaded{opacity:1}.hutao-lightbox__placeholder{color:#ffffffb8;min-height:min(68vh,46rem);font-family:var(--font-mono);text-align:center;grid-area:1/1;place-items:center;padding:2rem;font-size:12px;display:grid}.hutao-lightbox__placeholder--error{color:#ff9a9a}.hutao-lightbox__caption{color:#fff;justify-content:space-between;align-items:center;gap:1rem;font-size:13px;line-height:1.35;display:flex}.hutao-lightbox__count{color:#ffffffad;font-family:var(--font-mono);white-space:nowrap;margin-left:auto;font-size:11px}.hutao-lightbox__close,.hutao-lightbox__download,.hutao-lightbox__nav{color:#fff;background:#ffffff1a;border:1px solid #fff3;place-items:center;transition:background .18s,border-color .18s;display:grid;position:fixed}.hutao-lightbox__close:hover,.hutao-lightbox__download:hover:not(:disabled),.hutao-lightbox__nav:hover{background:#ffffff2e;border-color:#ffffff6b}.hutao-lightbox__download:disabled{cursor:not-allowed;opacity:.52}.hutao-lightbox__close{border-radius:999px;width:2.5rem;height:2.5rem;font-size:1.625rem;line-height:1;top:1rem;right:1rem}.hutao-lightbox__download{min-height:2.5rem;font-family:var(--font-mono);border-radius:999px;padding:0 .9rem;font-size:11px;top:1rem;right:4.25rem}.hutao-lightbox__nav{border-radius:999px;width:3rem;height:4.5rem;font-size:3.5rem;line-height:1;top:50%;transform:translateY(-50%)}.hutao-lightbox__nav--prev{left:1rem}.hutao-lightbox__nav--next{right:1rem}@media(max-width:720px){.hutao-lightbox{padding:.75rem}.hutao-lightbox__figure{max-height:calc(100vh - 1.5rem)}.hutao-lightbox__figure img{max-height:calc(100vh - 8rem)}.hutao-lightbox__media,.hutao-lightbox__placeholder{min-height:min(62vh,34rem)}.hutao-lightbox__caption{flex-direction:column;align-items:flex-start;gap:.25rem}.hutao-lightbox__count{margin-left:0}.hutao-lightbox__nav{width:3rem;height:3rem;font-size:2.75rem;top:auto;bottom:1rem;transform:none}.hutao-lightbox__nav--prev{left:calc(50% - 3.5rem)}.hutao-lightbox__nav--next{right:calc(50% - 3.5rem)}.hutao-toolbar{align-items:stretch}.hutao-toolbar__actions{width:100%}.hutao-action{flex:9rem}}.tweaks-panel{z-index:100;border:1px solid var(--border);background:var(--card);width:min(280px,100vw - 32px);font-family:var(--font-mono);border-radius:18px;padding:1.125rem;font-size:11px;position:fixed;bottom:24px;right:24px;box-shadow:0 20px 60px #00000026}.tweaks-panel h4{color:var(--subtle);letter-spacing:.15em;text-transform:uppercase;margin:0 0 .75rem;font-size:11px}.tweaks-row{margin-bottom:.9rem}.tweaks-row .label{color:var(--muted);margin-bottom:.375rem;font-size:10px}.tweaks-row .opts{flex-wrap:wrap;gap:.4rem;display:flex}.tweaks-row .opt,.pill-btn{border:1px solid var(--border);border-radius:999px}.tweaks-row .opt{color:var(--muted);padding:.3rem .625rem;font-size:10px}.tweaks-row .opt.on,.pill-btn--primary{border-color:var(--fg);background:var(--fg);color:var(--bg)}.resume-page{width:min(820px,100%);margin:0 auto;padding:2.5rem 0 5rem}.resume-nav-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.625rem;display:flex}.resume-variant-switcher{border:1px solid var(--border);background:var(--card);font-family:var(--font-mono);border-radius:999px;padding:.2rem;font-size:11px;display:flex}.resume-variant-switcher button{color:var(--muted);border-radius:999px;padding:.25rem .65rem;font-weight:600}.resume-variant-switcher button.on{background:var(--fg);color:var(--bg)}.resume-top{flex-wrap:wrap;align-items:center;gap:1.5rem;margin-bottom:2.5rem;display:flex}.resume-avatar{border:1px solid var(--border);background:var(--card);object-fit:cover;border-radius:50%;width:96px;height:96px}.resume-head h1{margin:0;font-size:34px}.resume-head .r-contacts{flex-wrap:wrap;gap:.625rem;margin-top:.75rem;display:flex}.resume-head .r-contacts a,.pill-btn{font-family:var(--font-mono);align-items:center;gap:.375rem;padding:.45rem .875rem;font-size:11px;display:inline-flex}.resume-head .r-contacts a{border:1px solid var(--border);color:var(--muted);border-radius:999px}.resume-head .r-contacts a:hover{border-color:var(--fg);color:var(--fg)}.resume-section{border-top:1px solid var(--border);padding:1rem 0}.rs-head{justify-content:space-between;align-items:center;width:100%;padding:.5rem 0;display:flex}.rs-head h2{font-family:var(--font-display);letter-spacing:-.01em;margin:0;font-size:18px;font-weight:700}.chev{color:var(--subtle);font-family:var(--font-mono);font-size:12px;transition:transform .2s}.resume-section.closed .chev{transform:rotate(-90deg)}.rs-body{color:var(--fg);padding:.625rem 0 1rem;font-size:14px;line-height:1.65}.resume-section.closed .rs-body{display:none}.rs-entry{padding:.625rem 0}.r-title{font-weight:600}.rs-entry ul{margin:.5rem 0 0 1.125rem;padding:0}.resume-actions{float:right;gap:.625rem;margin-bottom:-1rem;display:flex;position:sticky;top:1rem}.resume-note,.resume-footnote{color:var(--subtle);font-family:var(--font-mono)}.resume-note{margin-top:.5rem;font-size:12px}.resume-footnote{text-align:center;margin-top:2.5rem;font-size:10px}@media(max-width:768px){.resume-nav-controls{grid-column:1/-1;justify-content:space-between;width:100%}}.site-footer{border-top:1px solid var(--border);color:var(--muted);font-family:var(--font-mono);margin-top:auto;font-size:13px}.site-footer__inner{flex-direction:column;align-items:stretch}.site-footer__top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;display:flex}.site-footer__copyright{color:var(--fg);font-weight:500}.site-footer__resume{border:1px solid var(--border);background:var(--card);border-radius:999px;justify-content:center;align-items:center;min-height:34px;padding:.45rem .9rem;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.site-footer__resume{background:color-mix(in oklab,var(--card) 82%,var(--bg))}}.site-footer__resume{color:var(--fg);transition:transform .22s,border-color .22s,background-color .22s}.site-footer__resume:hover{border-color:var(--fg);transform:translateY(-1px)}@supports (color:color-mix(in lab,red,red)){.site-footer__resume:hover{border-color:color-mix(in oklab,var(--fg) 20%,var(--border))}}.site-footer__resume:hover{background:var(--card)}@supports (color:color-mix(in lab,red,red)){.site-footer__resume:hover{background:color-mix(in oklab,var(--card) 92%,var(--bg))}}.site-footer__resume:focus-visible{outline:2px solid var(--accent)}@supports (color:color-mix(in lab,red,red)){.site-footer__resume:focus-visible{outline:2px solid color-mix(in oklab,var(--accent) 70%,white)}}.site-footer__resume:focus-visible{outline-offset:2px}.site-footer__dedication{color:var(--muted);letter-spacing:.12em;padding:0;font-size:12px;transition:color .26s,transform .26s,opacity .26s}.site-footer__dedication:hover{color:var(--fg);transform:scale(1.04)}.site-footer__links a:hover{color:var(--fg)}.dedication-secret{z-index:999;pointer-events:none;position:fixed;inset:0}.dedication-secret__veil,.dedication-secret__heart{visibility:hidden;opacity:0;position:absolute;inset:0}.dedication-secret__veil{background:radial-gradient(circle at center,var(--fg),#000000b8),#00000094}@supports (color:color-mix(in lab,red,red)){.dedication-secret__veil{background:radial-gradient(circle at center,color-mix(in oklab,var(--fg) 8%,transparent),#000000b8),#00000094}}.dedication-secret__heart{place-items:center;display:grid}.dedication-secret__aura{aspect-ratio:1;filter:blur(8px);opacity:0;background:radial-gradient(circle,#ff4a7a6b,#ff4a7a0f 52%,#0000 72%);border-radius:50%;width:min(42vw,18rem);position:absolute}.dedication-secret__svg{color:#ff4a7a;filter:drop-shadow(0 0 24px #ff4a7a47)drop-shadow(0 0 48px #ff4a7a29);will-change:transform,opacity;width:min(24vw,8.5rem)}}@layer utilities{.visible{visibility:visible}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-2{margin-top:calc(var(--spacing) * 2)}.flex{display:flex}.flex-1{flex:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.flex-wrap{flex-wrap:wrap}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.border{border-style:var(--tw-border-style);border-width:1px}.px-4{padding-inline:calc(var(--spacing) * 4)}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-\(--fg\){color:var(--fg)}.text-\(--muted\){color:var(--muted)}.opacity-50{opacity:.5}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}@media(min-width:40rem){.sm\:px-6{padding-inline:calc(var(--spacing) * 6)}}@media(min-width:64rem){.lg\:px-9{padding-inline:calc(var(--spacing) * 9)}}}:root{--bg:#fafaf9;--bg-rgb:250, 250, 249;--fg:#0a0a0a;--muted:#6b6b66;--card:#fff;--border:#00000014;--subtle:#8a8a83;--accent:#0a0a0a;--font-body:"Fira Code", ui-monospace, "SF Mono", Menlo, monospace;--font-display:"Fira Code", ui-monospace, "SF Mono", Menlo, monospace;--font-mono:"Fira Code", ui-monospace, "SF Mono", Menlo, monospace;--font-weight-display:600}@keyframes wash{to{background-position:-300% 0}}.route-swipe-forward-enter-active,.route-swipe-forward-leave-active,.route-swipe-back-enter-active,.route-swipe-back-leave-active{will-change:transform,opacity,filter;transition:transform .56s cubic-bezier(.22,1,.36,1),opacity .42s,filter .56s}.route-swipe-forward-enter-active,.route-swipe-back-enter-active{z-index:2}.route-swipe-forward-leave-active,.route-swipe-back-leave-active{z-index:1}.route-swipe-forward-leave-to,.route-swipe-back-enter-from{opacity:0;filter:blur(12px);transform:translate(-7.5%)scale(.985)}.route-swipe-forward-enter-from,.route-swipe-back-leave-to{opacity:0;filter:blur(12px);transform:translate(7.5%)scale(.985)}.route-swipe-forward-enter-to,.route-swipe-forward-leave-from,.route-swipe-back-enter-to,.route-swipe-back-leave-from{opacity:1;filter:blur();transform:translate(0)scale(1)}@keyframes ghostGlow{0%,to{filter:drop-shadow(0 0 20px #c026d366)}50%{filter:drop-shadow(0 0 40px #60a5fa99)}}@keyframes bars{0%,to{transform:scaleY(.4)}50%{transform:scaleY(1)}}@keyframes shake{10%,90%{transform:translate(-3px)}20%,80%{transform:translate(4px)}30%,50%,70%{transform:translate(-6px)}40%,60%{transform:translate(6px)}}@keyframes helloPanelIn{0%{opacity:0;transform:translateY(22px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes helloDrift{0%,to{transform:translate(0)scale(1)}50%{transform:translateY(-18px)scale(1.05)}}@keyframes helloScan{0%{opacity:0;transform:translateY(-5rem)}10%,90%{opacity:.42}to{opacity:0;transform:translateY(22rem)}}@keyframes helloSignalRing{0%{opacity:0;transform:scale(.45)}25%{opacity:.55}to{opacity:0;transform:scale(1.35)}}@keyframes helloSignalBeam{0%{opacity:0;transform:scaleX(.24)}35%{opacity:.72}to{opacity:.18;transform:scaleX(1)}}@keyframes helloSignalText{0%{opacity:0;filter:blur(14px);transform:scale(.32)rotate(-12deg)}26%{opacity:1;filter:blur();transform:scale(1.18)rotate(4deg)}58%{transform:scale(.94)rotate(-1.6deg)}76%{transform:scale(1.05)rotate(.8deg)}to{opacity:1;filter:blur();transform:scale(1)rotate(0)}}@keyframes helloSignalGhostLeft{0%{opacity:0;transform:translate(0)scale(.86)}24%{opacity:.64}62%{opacity:.32;transform:translate(-.08em,-.03em)scale(1.04)}to{opacity:.18;transform:translate(-.04em,-.015em)scale(1)}}@keyframes helloSignalGhostRight{0%{opacity:0;transform:translate(0)scale(.88)}28%{opacity:.62}64%{opacity:.28;transform:translate(.08em,.03em)scale(1.03)}to{opacity:.16;transform:translate(.04em,.015em)scale(1)}}@keyframes helloBigIn{0%{opacity:0;transform:translateY(18px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@media(prefers-reduced-motion:reduce){.route-swipe-forward-enter-active,.route-swipe-forward-leave-active,.route-swipe-back-enter-active,.route-swipe-back-leave-active{transition-duration:1ms}}@media(max-width:899px){.timeline-showcase{--timeline-axis-width:32px;--timeline-gap:.95rem;padding:1.25rem}.timeline-showcase__head{grid-template-columns:1fr;margin-bottom:1.5rem}.timeline-showcase__beam{left:calc(var(--timeline-axis-width) / 2);top:6rem}.timeline-story{grid-template-columns:var(--timeline-axis-width) minmax(0,1fr);gap:var(--timeline-gap)}.timeline-story__meta{flex-flow:wrap;grid-column:2;align-items:center;gap:.6rem;margin-bottom:.4rem;padding-top:.15rem}.timeline-story__spine{grid-area:1/1/span 2;padding-top:.7rem}.timeline-story__card{grid-column:2;padding:1.2rem 1.15rem 1.15rem}.timeline-story__footer{flex-direction:column;align-items:flex-start}.timeline-story__watermark{font-size:clamp(48px,18vw,84px)}}@media(max-width:768px){.site-nav__inner,.site-footer__inner{padding:1rem}.site-nav__inner{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.8rem .75rem;display:grid}.site-nav__brand{text-align:left;grid-area:1/1;width:auto;min-width:0}.site-nav__links{flex-wrap:nowrap;grid-column:1/-1;justify-content:space-between;gap:.35rem}.site-nav__link{text-align:center;white-space:nowrap;flex:1 1 0;min-width:0;padding:.45rem .1rem;font-size:12px}.lang-toggle{grid-area:1/2;justify-self:end}.page{padding:3.5rem 0 5rem}.home-hero{min-height:calc(100svh - 260px)}.home-focus{text-align:center}.home-focus__grid{grid-template-columns:1fr}.home-focus-card:first-child{grid-row:auto}.home-focus-card{text-align:left;min-height:0}.site-footer__inner{text-align:center;justify-content:center}.projects-grid{grid-template-columns:1fr}.p-head{flex-direction:column;align-items:flex-start}.resume-actions{float:none;flex-wrap:wrap;justify-content:flex-start;margin-bottom:1.5rem;position:static}.resume-page{padding-top:2rem}.timeline-showcase{border-radius:24px}.timeline-showcase__summary{font-size:15px}.timeline-story__title{font-size:clamp(24px,9vw,30px)}.hello-shell,.hello-panel,.hello-final,.hello-signal{width:100%}.hello-panel{border-radius:24px;padding:.95rem 1rem 1.15rem}.hello-input{font-size:clamp(34px,11vw,58px)}.hello-big{font-size:clamp(58px,18vw,112px)}.hello-shell__label{letter-spacing:.13em;font-size:9px}.hello-page__halo--left,.hello-page__halo--right{width:11rem;height:11rem}.dedication-secret__svg{width:min(34vw,7rem)}.tweaks-panel{bottom:12px;right:12px}.back-to-top{bottom:14px;right:14px}}@media(max-width:420px){.site-nav__inner{padding-top:.8rem;padding-bottom:.8rem}.site-nav__links{gap:.25rem}.site-nav__link{font-size:11px}}@media print{.site-nav,.site-footer,.resume-actions,.resume-variant-switcher{display:none!important}body{color:#000;background:#fff}.resume-page{padding:0!important}.resume-section{page-break-inside:avoid}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}
