.site-header[data-v-30920d1a]{z-index:20;padding-top:var(--space-4);position:relative}.site-header__inner[data-v-30920d1a]{justify-content:space-between;align-items:center;gap:var(--space-5);border:1px solid var(--border);border-radius:var(--radius-pill);min-height:4rem;box-shadow:var(--shadow-glass);-webkit-backdrop-filter:blur(32px)saturate(165%)brightness(.93);backdrop-filter:blur(32px)saturate(165%)brightness(.93);background:linear-gradient(145deg,#ffffffa8,#31979506),#ffffff80;padding:.5rem .65rem .5rem .75rem;display:flex;position:relative;overflow:hidden}.site-header__inner[data-v-30920d1a]:after{z-index:3;border-radius:inherit;content:"";pointer-events:none;-webkit-mask-composite:xor;background:linear-gradient(110deg,#ffffffeb,#27674933 30%,#3197951f 58%,#d977061a 78%,#ffffffd1);padding:1.25px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.site-header__inner[data-v-30920d1a]>*{z-index:2;position:relative}.brand[data-v-30920d1a]{align-items:center;gap:var(--space-3);color:var(--color-ink);letter-spacing:.08em;font-weight:850;display:inline-flex}.brand__mark[data-v-30920d1a]{border:1px solid var(--border);width:2.35rem;height:2.35rem;color:var(--color-ink);letter-spacing:-.1em;background:#ffffff75;border-radius:50%;place-items:center;font-size:.8rem;display:grid}.site-nav[data-v-30920d1a]{isolation:isolate;align-items:center;gap:var(--space-1);border-radius:var(--radius-pill);border:1px solid var(--border);-webkit-backdrop-filter:saturate(135%)brightness(1.02);backdrop-filter:saturate(135%)brightness(1.02);background:#ffffff47;padding:.25rem;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff42,inset 0 -1px #3197951a}.site-nav__liquid[data-v-30920d1a]{z-index:3;width:var(--liquid-width);border-radius:var(--radius-pill);opacity:var(--liquid-opacity);-webkit-backdrop-filter:saturate(150%)brightness(1.055)contrast(1.025);backdrop-filter:saturate(150%)brightness(1.055)contrast(1.025);pointer-events:none;transform:translate3d(var(--liquid-x), 0, 0) scale(var(--liquid-scale-x), var(--liquid-scale-y));transform-origin:50%;will-change:transform, width;background:radial-gradient(at 50% 48%,#ffffff02 0 56%,#ffffff06 78%,#3197950a 100%),linear-gradient(145deg,#ffffff06,#31979503 48%,#d9770602);border:1px solid #27674957;transition:width .22s cubic-bezier(.2,.9,.2,1),transform .15s cubic-bezier(.18,.85,.2,1),border-width .17s,border-color .17s,box-shadow .18s,background .18s,opacity .18s;position:absolute;top:.25rem;bottom:.25rem;left:0;box-shadow:inset 0 1px #fff3,inset 0 -1px #31979514}.site-nav--interacting .site-nav__liquid[data-v-30920d1a]{background:radial-gradient(at 50% 48%,#ffffff03 0 45%,#ffffff0b 70%,#31979514 100%),linear-gradient(145deg,#ffffff0a,#31979504 48%,#d9770603);border-width:1.5px;border-color:#2767497a;box-shadow:inset 0 2px 1px #ffffff5c,inset 0 -2px 2px #31979521,inset 2px 0 2px #ffffff14,inset -2px 0 2px #27674917}.site-nav__liquid[data-v-30920d1a]:before{z-index:3;border-radius:inherit;background:conic-gradient(from 190deg at var(--liquid-light-x) 50%, #ffffffb8, #27674938 25%, #ffffff24 48%, #d977061a 72%, #ffffff9e);opacity:.52;-webkit-backdrop-filter:blur(1.2px)saturate(155%)brightness(1.035)contrast(1.08);backdrop-filter:blur(1.2px)saturate(155%)brightness(1.035)contrast(1.08);content:"";pointer-events:none;-webkit-mask-composite:xor;padding:1.5px;transition:padding .17s,opacity .17s,-webkit-backdrop-filter .17s,backdrop-filter .17s;position:absolute;inset:-1px;transform:scale(1.012);-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.site-nav--interacting .site-nav__liquid[data-v-30920d1a]:before{opacity:1;-webkit-backdrop-filter:blur(4px)saturate(190%)brightness(1.1)contrast(1.2);backdrop-filter:blur(4px)saturate(190%)brightness(1.1)contrast(1.2);padding:4px}.site-nav__refraction-band[data-v-30920d1a]{z-index:2;border-radius:inherit;opacity:0;transition:opacity .14s;position:absolute;inset:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#000 0 4px,#000000b8 7px,#0000 11px calc(100% - 11px),#000000b8 calc(100% - 7px),#000 calc(100% - 4px) 100%);mask-image:linear-gradient(90deg,#000 0 4px,#000000b8 7px,#0000 11px calc(100% - 11px),#000000b8 calc(100% - 7px),#000 calc(100% - 4px) 100%)}.site-nav--interacting .site-nav__refraction-band[data-v-30920d1a]{opacity:1}.site-nav__refraction-content[data-v-30920d1a]{top:0;bottom:0;left:calc(.25rem - var(--liquid-x));gap:var(--space-1);color:#1f2923c7;text-shadow:-.8px 0 #2767497a,.8px 0 #d9770638;filter:blur(.22px)saturate(1.25);transform-origin:50%;width:max-content;display:flex;position:absolute;transform:scaleX(1.08)}.site-nav__refraction-tab[data-v-30920d1a]{text-align:center;white-space:nowrap;place-items:center;width:4.5rem;min-width:4.5rem;height:100%;padding:.65rem 1rem;font-size:.95rem;font-weight:780;line-height:1;display:grid}.site-nav__liquid[data-v-30920d1a]:after{z-index:4;border-radius:inherit;background:conic-gradient(from 215deg at var(--liquid-light-x) 38%, #2767492e, #ffffff7a 22%, #ffffff0f 48%, #31979538 72%, #ffffff5c);opacity:.38;-webkit-backdrop-filter:blur(.5px)saturate(145%)brightness(1.025)contrast(1.08);backdrop-filter:blur(.5px)saturate(145%)brightness(1.025)contrast(1.08);content:"";pointer-events:none;-webkit-mask-composite:xor;padding:.75px;transition:padding .17s,opacity .17s,-webkit-backdrop-filter .17s,backdrop-filter .17s;position:absolute;inset:3px;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.site-nav--interacting .site-nav__liquid[data-v-30920d1a]:after{opacity:1;-webkit-backdrop-filter:blur(1.5px)saturate(175%)brightness(1.06)contrast(1.16);backdrop-filter:blur(1.5px)saturate(175%)brightness(1.06)contrast(1.16);padding:1.5px}.site-nav a[data-v-30920d1a]{z-index:2;border-radius:var(--radius-pill);min-width:4.5rem;color:var(--color-muted);text-align:center;padding:.65rem 1rem;font-size:.95rem;font-weight:750;transition:color .16s,transform .16s;position:relative}.site-nav a[data-v-30920d1a]:hover,.site-nav a.is-active[data-v-30920d1a]{color:var(--color-ink)}.site-nav a[data-v-30920d1a]:hover{transform:translateY(-.04rem)}.site-nav a.is-active[data-v-30920d1a]{color:var(--color-brand-strong)}.nav-toggle[data-v-30920d1a]{display:none}@media (width<=42rem){.site-header__inner[data-v-30920d1a]{overflow:visible}.brand>span[data-v-30920d1a]:last-child{display:none}.nav-toggle[data-v-30920d1a]{border:1px solid var(--border);border-radius:var(--radius-pill);min-height:2.75rem;color:var(--color-ink);font:inherit;background:#ffffff70;align-items:center;padding-inline:1rem;font-weight:750;display:inline-flex}.site-nav[data-v-30920d1a]{z-index:10;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(32px)saturate(165%);backdrop-filter:blur(32px)saturate(165%);background:linear-gradient(145deg,#ffffffc7,#31979506),#ffffffeb;align-items:stretch;display:none;position:absolute;top:calc(100% + .5rem);left:0;right:0}.site-nav__liquid[data-v-30920d1a]{display:none}.site-nav a.is-active[data-v-30920d1a]{background:#27674914;box-shadow:inset 0 1px #ffffff40,0 .45rem 1rem #1f29231f}.site-nav--open[data-v-30920d1a]{animation:.18s cubic-bezier(.2,.8,.2,1) mobile-nav-reveal-30920d1a;display:grid}}@keyframes mobile-nav-reveal-30920d1a{0%{opacity:0;transform:translateY(-.4rem)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}.app-shell[data-v-003456cb]{grid-template-rows:auto 1fr;min-height:100vh;display:grid}:root{--bg:#f2f0ea;--surface:#fff;--border:#d8d5cc;--text:#1f2923;--text-secondary:#68736b;--primary:#276749;--secondary:#319795;--game:#d97706;--color-canvas:var(--bg);--color-surface:color-mix(in srgb, var(--surface) 58%, transparent);--color-surface-hover:color-mix(in srgb, var(--surface) 76%, transparent);--color-ink:var(--text);--color-muted:var(--text-secondary);--color-border:var(--border);--color-brand:var(--primary);--color-brand-strong:color-mix(in srgb, var(--primary) 78%, var(--text));--color-brand-soft:color-mix(in srgb, var(--primary) 14%, transparent);--color-accent:var(--game);--game-accent:var(--game);--success:var(--secondary);--font-sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--radius-sm:.6rem;--radius-md:.9rem;--radius-lg:1.5rem;--radius-xl:2.25rem;--radius-pill:999px;--shadow-md:0 .85rem 2rem #1f29231a;--shadow-lg:0 1.5rem 4rem #1f292321;--shadow-glass:0 1.7rem 4.5rem #1f29231f, 0 .25rem .9rem #1f292314, inset 0 2.5px 0 #ffffffc7, inset 0 -2px 0 #3197951a, inset 2px 0 0 #d977060a, inset -2px 0 0 #27674917;--page-width:82rem;--page-gutter:clamp(1.25rem, 4vw, 3rem)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;min-width:20rem}body{background:linear-gradient(145deg, #ffffff3d, #f2f0eab8), var(--color-canvas);min-width:20rem;min-height:100vh;color:var(--color-ink);font-family:var(--font-sans);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;overflow-x:hidden}body:before,body:after{z-index:0;pointer-events:none;content:"";position:fixed}body:before{filter:blur(2rem)saturate(108%);background:radial-gradient(circle at 16% 25%,#27674924 0 7%,#0000 24%),radial-gradient(circle at 82% 18%,#d977061f 0 6%,#0000 23%),radial-gradient(circle at 76% 76%,#31979521 0 8%,#0000 26%),radial-gradient(circle at 26% 82%,#d8d5cc6b 0 5%,#0000 24%);animation:20s ease-in-out infinite alternate ambient-flow;inset:-18%}body:after{filter:blur(.1rem);background:#3197950b;border:1px solid #27674924;border-radius:42% 58% 64% 36%/48% 43% 57% 52%;width:18rem;height:18rem;animation:14s ease-in-out infinite alternate ambient-blob;top:17%;left:56%;box-shadow:inset 1.5rem 1.5rem 3rem #ffffff57,0 1.5rem 4rem #1f292314}#app{z-index:1;position:relative}@keyframes ambient-flow{0%{transform:translate(-1.5%,-1%)scale(1)}to{transform:translate(1.5%,1.5%)scale(1.035)}}@keyframes ambient-blob{0%{transform:translate(-1.5rem)rotate(-4deg)}to{transform:translate(1.5rem,1rem)rotate(5deg)}}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,a{outline-offset:.25rem}button:focus-visible,a:focus-visible{outline:.2rem solid var(--color-accent)}::selection{background:var(--color-brand);color:var(--surface)}@media (prefers-reduced-motion:reduce){body:before,body:after{animation:none}}.container{width:min(100% - (var(--page-gutter) * 2), var(--page-width));margin-inline:auto}.stage{align-items:center;min-height:calc(100vh - 5.25rem);padding-block:clamp(1.5rem,4vw,3.5rem);display:grid}.stage__grid{grid-template-columns:repeat(12,minmax(0,1fr));align-items:stretch;gap:clamp(1rem,2.5vw,2.25rem);display:grid}.stage__grid--home .profile-panel{grid-column:span 9}.stage__grid--home .mascot-column{grid-column:span 3}.stage__grid--projects .projects-panel,.stage__grid--experience .experience-panel{grid-column:2/span 10}.glass-panel{--glass-x:18%;--glass-y:12%;--glass-dots-opacity:.1;--glass-dots-angle:0deg;--glass-dots-stretch:1;-webkit-backdrop-filter:blur(30px)saturate(176%)brightness(1.05);backdrop-filter:blur(30px)saturate(176%)brightness(1.05);background:radial-gradient(circle at 13% 18%,#d977061a,#0000 29%),radial-gradient(circle at 82% 12%,#3197951c,#0000 38%),linear-gradient(112deg,#ffffff5c,#27674913 42%,#31979517 72%,#ffffff47),#ffffff3d;border:1px solid #ffffff6b;border-radius:clamp(2.25rem,4vw,3.25rem);transition:border-color .24s,box-shadow .24s,background .24s;position:relative;overflow:hidden;box-shadow:0 1.6rem 4.2rem #1f292324,0 .35rem .9rem #1f292314,inset 0 0 22px 4px #fff3,inset 0 12px 24px -12px #ffffff9e,inset 0 -14px 26px -14px #27674926,inset 12px 0 26px -16px #d9770612,inset -14px 0 28px -16px #31979521}.glass-panel:before{z-index:0;border-radius:inherit;opacity:.12;mix-blend-mode:multiply;content:"";pointer-events:none;will-change:opacity, mask-image;-webkit-mask-image:radial-gradient(circle 11rem at var(--glass-trail-x-0,var(--glass-x)) var(--glass-trail-y-0,var(--glass-y)), #000 0, #000000b8 46%, transparent 82%), radial-gradient(circle 11rem at var(--glass-trail-x-1,var(--glass-x)) var(--glass-trail-y-1,var(--glass-y)), #000 0, #000000b8 46%, transparent 82%), radial-gradient(circle 11rem at var(--glass-trail-x-2,var(--glass-x)) var(--glass-trail-y-2,var(--glass-y)), #000 0, #000000b8 46%, transparent 82%), radial-gradient(circle 11rem at var(--glass-trail-x-3,var(--glass-x)) var(--glass-trail-y-3,var(--glass-y)), #000 0, #000000b8 46%, transparent 82%), radial-gradient(circle 11rem at var(--glass-trail-x-4,var(--glass-x)) var(--glass-trail-y-4,var(--glass-y)), #000 0, #000000b8 46%, transparent 82%), radial-gradient(circle 11rem at var(--glass-trail-x-5,var(--glass-x)) var(--glass-trail-y-5,var(--glass-y)), #000 0, #000000b8 46%, transparent 82%), radial-gradient(circle 11rem at var(--glass-trail-x-6,var(--glass-x)) var(--glass-trail-y-6,var(--glass-y)), #000 0, #000000b8 46%, transparent 82%);-webkit-mask-image:radial-gradient(circle 11rem at var(--glass-trail-x-0,var(--glass-x)) var(--glass-trail-y-0,var(--glass-y)), #000 0, #000000b8 46%, transparent 82%), radial-gradient(circle 11rem at var(--glass-trail-x-1,var(--glass-x)) var(--glass-trail-y-1,var(--glass-y)), #000 0, #000000b8 46%, transparent 82%), radial-gradient(circle 11rem at var(--glass-trail-x-2,var(--glass-x)) var(--glass-trail-y-2,var(--glass-y)), #000 0, #000000b8 46%, transparent 82%), radial-gradient(circle 11rem at var(--glass-trail-x-3,var(--glass-x)) var(--glass-trail-y-3,var(--glass-y)), #000 0, #000000b8 46%, transparent 82%), radial-gradient(circle 11rem at var(--glass-trail-x-4,var(--glass-x)) var(--glass-trail-y-4,var(--glass-y)), #000 0, #000000b8 46%, transparent 82%), radial-gradient(circle 11rem at var(--glass-trail-x-5,var(--glass-x)) var(--glass-trail-y-5,var(--glass-y)), #000 0, #000000b8 46%, transparent 82%), radial-gradient(circle 11rem at var(--glass-trail-x-6,var(--glass-x)) var(--glass-trail-y-6,var(--glass-y)), #000 0, #000000b8 46%, transparent 82%);mask-image:radial-gradient(circle 11rem at var(--glass-trail-x-0,var(--glass-x)) var(--glass-trail-y-0,var(--glass-y)), #000 0, #000000b8 46%, transparent 82%), radial-gradient(circle 11rem at var(--glass-trail-x-1,var(--glass-x)) var(--glass-trail-y-1,var(--glass-y)), #000 0, #000000b8 46%, transparent 82%), radial-gradient(circle 11rem at var(--glass-trail-x-2,var(--glass-x)) var(--glass-trail-y-2,var(--glass-y)), #000 0, #000000b8 46%, transparent 82%), radial-gradient(circle 11rem at var(--glass-trail-x-3,var(--glass-x)) var(--glass-trail-y-3,var(--glass-y)), #000 0, #000000b8 46%, transparent 82%), radial-gradient(circle 11rem at var(--glass-trail-x-4,var(--glass-x)) var(--glass-trail-y-4,var(--glass-y)), #000 0, #000000b8 46%, transparent 82%), radial-gradient(circle 11rem at var(--glass-trail-x-5,var(--glass-x)) var(--glass-trail-y-5,var(--glass-y)), #000 0, #000000b8 46%, transparent 82%), radial-gradient(circle 11rem at var(--glass-trail-x-6,var(--glass-x)) var(--glass-trail-y-6,var(--glass-y)), #000 0, #000000b8 46%, transparent 82%);background:radial-gradient(circle,#27674985 0 1.05px,#0000 1.45px) 0 0/18px 18px,radial-gradient(circle,#d9770652 0 .9px,#0000 1.3px) 9px 9px/36px 36px;transition:opacity .22s;position:absolute;inset:0}.glass-panel:hover:before{opacity:var(--glass-dots-opacity)}.glass-panel:after{z-index:4;border-radius:inherit;background:conic-gradient(from 205deg at var(--glass-x) var(--glass-y), #fffffffa, #d977063d 15%, #ffffff80 35%, #2767494f 58%, #3197957a 80%, #fffffffa);opacity:.62;filter:blur(3px);content:"";pointer-events:none;-webkit-mask-composite:xor;padding:clamp(10px,.9vw,14px);position:absolute;inset:-2px;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.glass-panel:hover{background:radial-gradient(circle at 13% 18%,#d977061d,#0000 29%),radial-gradient(circle at 82% 12%,#31979520,#0000 38%),linear-gradient(112deg,#ffffff63,#27674916 42%,#3197951a 72%,#ffffff4d),#ffffff40;border-color:#ffffff8f;box-shadow:0 2rem 5rem #1f292326,0 .35rem 1rem #1f292317,inset 0 0 26px 5px #ffffff3b,inset 0 14px 28px -13px #ffffffad,inset 0 -16px 30px -15px #27674929,inset 14px 0 28px -16px #d9770613,inset -16px 0 30px -17px #31979524}.glass-panel>*{z-index:2;position:relative}.mascot-column{align-items:center;min-width:0;display:grid}.eyebrow{color:var(--color-brand-strong);letter-spacing:.18em;text-transform:uppercase;margin:0;font-size:.76rem;font-weight:900}.profile-panel{flex-direction:column;min-height:clamp(35rem,72vh,49rem);padding:clamp(2rem,5vw,5rem);display:flex}.profile-panel__topline{align-items:center;gap:var(--space-3);color:var(--color-muted);font-size:.85rem;font-weight:750;display:flex}.status-dot{background:var(--success);width:.58rem;height:.58rem;box-shadow:0 0 0 .28rem color-mix(in srgb, var(--success) 14%, transparent);border-radius:50%}.profile-panel__body{max-width:none;padding-block:var(--space-6);flex:1;align-content:center;display:grid}.profile-panel h1,.projects-panel h1{margin:var(--space-3) 0 0;letter-spacing:-.075em;font-size:clamp(3.2rem,7vw,7rem);line-height:.94}.profile-panel__greeting,.profile-panel h1 strong{white-space:nowrap;display:block}.profile-panel__greeting{color:var(--color-ink)}.profile-panel h1 strong{color:var(--color-brand)}.profile-panel h1{font-size:clamp(3.1rem,5.4vw,5.4rem)}.profile-panel__role{margin:var(--space-6) 0 0;color:var(--color-ink);font-size:clamp(1rem,1.7vw,1.25rem);font-weight:800}.profile-panel__intro{max-width:40rem;margin:var(--space-4) 0 0;color:var(--color-muted);font-size:clamp(1rem,1.5vw,1.12rem);line-height:1.85}.profile-metrics{gap:var(--space-3);margin:var(--space-6) 0 0;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.profile-metrics>div{border-radius:var(--radius-md);-webkit-backdrop-filter:blur(16px)saturate(145%);backdrop-filter:blur(16px)saturate(145%);background:linear-gradient(145deg,#ffffff6b,#3197950a),#ffffff38;border:1px solid #fff6;padding:1rem 1.1rem;box-shadow:inset 0 6px 12px -9px #ffffffb8,inset 0 -7px 14px -10px #2767491a}.profile-metrics dt{color:var(--color-accent);letter-spacing:-.04em;font-size:clamp(1.25rem,2.1vw,1.75rem);font-weight:900}.profile-metrics dd{color:var(--color-muted);margin:.25rem 0 0;font-size:.78rem;font-weight:800}.profile-overview{margin-top:var(--space-7);padding-top:var(--space-7);border-top:1px solid color-mix(in srgb, var(--border) 76%, transparent);grid-template-columns:minmax(0,1.08fr) minmax(17rem,.92fr);gap:clamp(1.5rem,3vw,2.5rem);display:grid}.profile-summary h2,.capability-section h2{margin:0 0 var(--space-4);color:var(--color-brand-strong);letter-spacing:.14em;font-size:.78rem;font-weight:900}.profile-summary>p{color:var(--color-muted);margin:0;font-size:1rem;line-height:1.72}.profile-summary>p+p{margin-top:var(--space-3)}.capability-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.capability-list li{gap:var(--space-3);border-radius:var(--radius-md);-webkit-backdrop-filter:blur(14px)saturate(138%);backdrop-filter:blur(14px)saturate(138%);background:linear-gradient(135deg,#ffffff5c,#31979509),#ffffff2e;border:1px solid #ffffff61;grid-template-columns:1.7rem minmax(0,1fr);padding:.72rem .85rem;display:grid;box-shadow:inset 0 6px 12px -9px #ffffffad,inset 0 -7px 14px -10px #27674917}.capability-list li>span{color:var(--color-brand-strong);letter-spacing:.1em;padding-top:.08rem;font-size:.66rem;font-weight:900}.capability-list h3{color:var(--color-ink);margin:0;font-size:.95rem}.capability-list p{color:var(--color-muted);margin:.3rem 0 0;font-size:.88rem;line-height:1.62}.profile-panel__facts{gap:var(--space-3);max-width:40rem;margin:var(--space-5) 0 0;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.profile-panel__facts>div{border-radius:var(--radius-md);-webkit-backdrop-filter:blur(14px)saturate(138%);backdrop-filter:blur(14px)saturate(138%);background:linear-gradient(135deg,#ffffff5c,#27674908),#ffffff2e;border:1px solid #ffffff61;min-width:0;padding:.8rem 1rem;box-shadow:inset 0 6px 12px -9px #ffffffad,inset 0 -7px 14px -10px #27674917}.profile-panel__facts dt{color:var(--color-brand-strong);letter-spacing:.12em;font-size:.68rem;font-weight:900}.profile-panel__facts dd{color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;margin:.3rem 0 0;font-size:.9rem;font-weight:750;overflow:hidden}.profile-panel__facts a{color:inherit}.profile-panel__facts .profile-panel__email{text-overflow:clip;white-space:normal;overflow-wrap:anywhere;overflow:visible}.profile-panel__facts a:hover{color:var(--color-brand-strong)}.profile-panel__tags{gap:var(--space-3);margin:var(--space-5) 0 0;flex-wrap:wrap;padding:0;list-style:none;display:flex}.profile-panel__tags li,.tag-list li{border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--color-muted);background:linear-gradient(145deg,#27674912,#31979506),#ffffff61;padding:.55rem .82rem;font-size:.8rem;font-weight:750}.stage-actions{z-index:2;justify-content:space-between;align-items:center;gap:var(--space-4);padding-top:var(--space-5);border-top:1px solid var(--border);color:var(--color-muted);letter-spacing:.08em;font-size:.8rem;font-weight:800;display:flex;position:relative}.stage-actions--hero{margin-top:var(--space-6)}.stage-actions__buttons{align-items:center;gap:var(--space-3);display:flex}.next-button,.text-button,.contact-button{justify-content:center;align-items:center;gap:var(--space-3);border-radius:var(--radius-pill);cursor:pointer;border:0;min-height:3rem;font-weight:850;display:inline-flex}.contact-button{border:1px solid color-mix(in srgb, var(--primary) 34%, var(--border));color:var(--color-brand-strong);background:#ffffff47;padding-inline:1.15rem}.contact-button:hover{border-color:var(--primary);background:#ffffff75}.next-button{background:linear-gradient(135deg, var(--primary), var(--secondary));color:var(--surface);padding-inline:1.25rem .75rem;box-shadow:0 .7rem 1.5rem #1f292329}.next-button span{background:#1f292329;border-radius:50%;place-items:center;width:2rem;height:2rem;transition:transform .18s;display:grid}.next-button:hover span{transform:translate(.18rem)}.text-button{color:var(--color-ink);background:0 0;padding-inline:0}.text-button:hover{color:var(--color-brand-strong)}.projects-panel,.experience-panel{flex-direction:column;min-height:clamp(35rem,72vh,49rem);padding:clamp(2rem,4vw,4rem);display:flex}.projects-panel__header,.experience-panel__header{z-index:2;align-items:end;gap:var(--space-7);grid-template-columns:minmax(0,1fr) minmax(15rem,.55fr);display:grid;position:relative}.projects-panel h1,.experience-panel h1{font-size:clamp(2.9rem,5vw,4.8rem)}.projects-panel__header>p,.experience-panel__header>p{color:var(--color-muted);margin:0 0 .4rem;font-size:.98rem;line-height:1.75}.project-list{z-index:2;margin-block:var(--space-6);flex:1;align-content:center;display:grid;position:relative}.project-row{gap:var(--space-4);padding-block:var(--space-5);border-top:1px solid var(--border);grid-template-columns:3rem minmax(0,1fr);display:grid}.project-row:last-child{border-bottom:1px solid var(--border)}.project-row__index{color:var(--color-brand-strong);letter-spacing:.12em;font-size:.78rem;font-weight:900}.project-row__title{justify-content:space-between;align-items:center;gap:var(--space-4);display:flex}.project-row h2{letter-spacing:-.025em;margin:0;font-size:clamp(1.2rem,2vw,1.6rem)}.project-row__title>span{border-radius:var(--radius-pill);color:var(--color-brand-strong);white-space:nowrap;background:#3197951a;padding:.4rem .65rem;font-size:.72rem;font-weight:850}.project-row p{margin:var(--space-2) 0 0;color:var(--color-muted);line-height:1.7}.tag-list{gap:var(--space-2);margin:var(--space-3) 0 0;flex-wrap:wrap;padding:0;list-style:none;display:flex}.tag-list li{padding:.35rem .58rem;font-size:.72rem}.online-project-list{align-content:center;gap:var(--space-4);margin-block:var(--space-6);flex:1;display:grid}.projects-section{margin-top:var(--space-6)}.projects-section+.projects-section{padding-top:var(--space-6);border-top:1px solid var(--border)}.projects-section .online-project-list{margin:var(--space-4) 0 0}.online-project-card,.participated-project,.demo-card{border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(18px)saturate(145%);backdrop-filter:blur(18px)saturate(145%);background:linear-gradient(145deg,#fff6,#3197950a),#fff3;border:1px solid #ffffff6b;transition:background-color .18s,border-color .18s;box-shadow:inset 0 8px 16px -11px #ffffffbd,inset 0 -9px 18px -12px #2767491a,0 .65rem 1.8rem #1f29230e}.online-project-card:hover,.participated-project:hover,.demo-card:hover{border-color:color-mix(in srgb, var(--primary) 42%, var(--border));background-color:var(--color-surface-hover)}.online-project-card{padding:clamp(1.25rem,2.4vw,2rem)}.online-project-card__header{align-items:start;gap:var(--space-4);grid-template-columns:2.25rem minmax(0,1fr) auto;display:grid}.online-project-card__header>span{color:var(--color-brand-strong);letter-spacing:.12em;padding-top:.28rem;font-size:.72rem;font-weight:900}.online-project-card__header p{margin:0 0 var(--space-1);color:var(--color-muted);font-size:.72rem;font-weight:800}.online-project-card__header h2{letter-spacing:-.035em;margin:0;font-size:clamp(1.4rem,2.2vw,2rem)}.online-project-card__website{margin-top:var(--space-2);color:var(--color-brand-strong);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, var(--primary) 34%, transparent);text-decoration-color:color-mix(in srgb, var(--primary) 34%, transparent);text-underline-offset:.24em;align-items:center;gap:.35rem;font-size:.78rem;font-weight:850;transition:color .16s,text-decoration-color .16s;display:inline-flex}.online-project-card__website:hover{color:var(--secondary);text-decoration-color:currentColor}.online-project-card__access-note{margin-top:var(--space-2);border:1px solid color-mix(in srgb, var(--primary) 22%, var(--border));border-radius:var(--radius-pill);background:color-mix(in srgb, var(--surface) 48%, transparent);color:var(--color-muted);padding:.3rem .55rem;font-size:.74rem;font-weight:800;display:inline-flex}.online-project-card__header strong{border-radius:var(--radius-pill);color:var(--color-accent);white-space:nowrap;background:#d9770617;border:1px solid #d9770647;padding:.45rem .7rem;font-size:.72rem}.online-project-card__overview{margin:var(--space-4) 0 0 3.25rem;color:var(--color-muted);font-size:.96rem;line-height:1.72}.online-project-card__details{gap:var(--space-5);margin:var(--space-4) 0 0 3.25rem;padding-top:var(--space-4);border-top:1px solid color-mix(in srgb, var(--border) 82%, transparent);grid-template-columns:minmax(0,1.45fr) minmax(13rem,.55fr);display:grid}.online-project-card__details h3{margin:0 0 var(--space-3);color:var(--color-brand-strong);letter-spacing:.1em;font-size:.72rem}.responsibility-list{gap:var(--space-2);color:var(--color-muted);margin:0;padding:0;font-size:.88rem;line-height:1.62;list-style:none;display:grid}.responsibility-list li{padding-left:1rem;position:relative}.responsibility-list li:before{background:var(--color-brand);content:"";border-radius:50%;width:.32rem;height:.32rem;position:absolute;top:.64em;left:0}.experience-section{margin-top:var(--space-6)}.experience-section+.experience-section{padding-top:var(--space-6);border-top:1px solid var(--border)}.section-heading{align-items:center;gap:var(--space-3);display:flex}.section-heading>span{color:var(--color-brand-strong);letter-spacing:.12em;font-size:.7rem;font-weight:900}.section-heading p{color:var(--color-muted);letter-spacing:.12em;margin:0;font-size:.64rem;font-weight:850}.section-heading h2{margin:.15rem 0 0;font-size:clamp(1.35rem,2vw,1.8rem)}.participated-project{gap:var(--space-5);margin-top:var(--space-4);padding:var(--space-5);grid-template-columns:minmax(0,1.1fr) minmax(16rem,.9fr);display:grid}.participated-project__summary>span{color:var(--color-brand-strong);font-size:.7rem;font-weight:850}.participated-project h3,.demo-card h3{margin:var(--space-2) 0 0;font-size:1.15rem}.participated-project__summary>p,.demo-card__content>p,.demo-intro{margin:var(--space-2) 0 0;color:var(--color-muted);font-size:.9rem;line-height:1.68}.participated-project>.responsibility-list{align-content:center}.demo-intro{margin-left:2.05rem}.demo-grid{gap:var(--space-4);margin-top:var(--space-4);grid-template-columns:minmax(0,1fr);display:grid}.demo-card{gap:var(--space-5);min-width:0;padding:var(--space-5);grid-template-columns:minmax(0,1.15fr) minmax(15rem,.85fr);display:grid}.demo-card--playable{border-color:color-mix(in srgb, var(--game-accent) 32%, #ffffff6b)}.demo-card--active{border-color:color-mix(in srgb, var(--game-accent) 58%, var(--border));background-color:color-mix(in srgb, var(--surface) 72%, transparent)}.demo-card__content,.demo-card__details{min-width:0}.demo-card__meta{justify-content:space-between;align-items:flex-start;gap:var(--space-2);color:var(--color-brand-strong);font-size:.68rem;font-weight:850;display:flex}.demo-card__meta strong{color:var(--color-accent);text-align:right}.demo-card__details{padding-left:var(--space-5);border-left:1px solid color-mix(in srgb, var(--border) 78%, transparent)}.demo-card__details>span{color:var(--color-brand-strong);letter-spacing:.08em;font-size:.68rem;font-weight:850}.demo-card__outcomes{gap:var(--space-2);margin:var(--space-3) 0 0;color:var(--color-muted);padding:0;font-size:.82rem;line-height:1.58;list-style-position:inside;display:grid}.demo-card__launch{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-4) 0 0;border:0;border-top:1px solid color-mix(in srgb, var(--game-accent) 25%, var(--border));color:var(--color-ink);text-align:left;cursor:pointer;background:0 0;grid-column:1/-1;grid-template-columns:auto minmax(0,1fr) auto;margin-top:0;display:grid}.demo-card__play{background:var(--game-accent);color:#fff;text-indent:.08em;border-radius:50%;place-items:center;width:2.35rem;height:2.35rem;font-size:.7rem;transition:transform .18s,box-shadow .18s;display:grid;box-shadow:0 .55rem 1.15rem #d977062e}.demo-card__launch>span:nth-child(2){gap:.12rem;display:grid}.demo-card__launch strong{font-size:.82rem}.demo-card__launch small{color:var(--color-muted);font-size:.68rem}.demo-card__arrow{color:var(--color-accent);font-size:1.1rem;transition:transform .18s}.demo-card__launch:hover .demo-card__play{transform:scale(1.08);box-shadow:0 .7rem 1.5rem #d977063d}.demo-card__launch:hover .demo-card__arrow{transform:translateY(.12rem)}.demo-card--active .demo-card__launch:hover .demo-card__arrow{transform:translateY(-.12rem)}.demo-player{z-index:1;gap:var(--space-4);border-radius:var(--radius-xl);width:100%;min-width:0;color:var(--color-ink);background:radial-gradient(circle at 18% 12%,#2767491c,#0000 34%),radial-gradient(circle at 84% 84%,#3197951a,#0000 36%),linear-gradient(145deg,#ffffff61,#f2f0ea85);border:1px solid #ffffff94;grid-template-rows:auto auto;padding:clamp(1rem,2.5vw,1.6rem);display:grid;position:relative;overflow:hidden;box-shadow:inset 0 2px #ffffffc2,0 1rem 2.8rem #1f29231a}.demo-player__toolbar{justify-content:space-between;align-items:center;gap:var(--space-4);width:100%;min-height:3.5rem;padding:0 0 var(--space-3);border-bottom:1px solid color-mix(in srgb, var(--border) 82%, transparent);color:var(--color-ink);display:flex}.demo-player__identity,.demo-player__actions{align-items:center;display:flex}.demo-player__identity{gap:var(--space-3);min-width:0}.demo-player__status{background:#34d399;border-radius:50%;flex:none;width:.58rem;height:.58rem;box-shadow:0 0 0 .28rem #34d3991f}.demo-player__identity p,.demo-player__identity h2{margin:0}.demo-player__identity p{color:var(--color-muted);letter-spacing:.14em;font-size:.6rem;font-weight:850}.demo-player__identity h2{text-overflow:ellipsis;white-space:nowrap;margin-top:.15rem;font-size:clamp(.9rem,2vw,1.08rem);overflow:hidden}.demo-player__actions{gap:var(--space-2);flex:none}.demo-player__actions>span{color:var(--color-muted);font-size:.68rem}.demo-player__actions button{border:1px solid color-mix(in srgb, var(--border) 82%, white);height:2.55rem;color:var(--color-ink);cursor:pointer;background:#ffffff75;border-radius:50%;justify-content:center;align-items:center;width:2.55rem;padding:0;font-size:1.55rem;line-height:1;display:inline-flex}.demo-player__actions button:hover{border-color:color-mix(in srgb, var(--primary) 34%, var(--border));background:#ffffffb8}.demo-player__stage{overscroll-behavior:contain;place-items:center;padding:clamp(.35rem,1.5vw,1rem);display:grid}.demo-player__viewport{aspect-ratio:640/1136;touch-action:none;overscroll-behavior:none;background:#0a0e0b;border:clamp(.28rem,.7vw,.45rem) solid #ffffffb3;border-radius:clamp(1rem,2.4vw,1.75rem);width:min(100%,32rem);position:relative;overflow:hidden;box-shadow:0 1.5rem 4rem #1f292333,0 .35rem 1rem #1f29231f,inset 0 0 0 1px #1f29231f}.demo-player__viewport iframe{z-index:1;touch-action:none;overscroll-behavior:none;background:#0a0e0b;border:0;width:100%;height:100%;display:block;position:relative}.demo-player__loading{z-index:0;place-content:center;justify-items:center;gap:var(--space-3);color:#f2f5f3c2;letter-spacing:.04em;font-size:.78rem;display:grid;position:absolute;inset:0}.demo-player__loading span{border:2px solid #ffffff24;border-top-color:#34d399;border-radius:50%;width:2rem;height:2rem;animation:.8s linear infinite demo-player-spin}.demo-player-enter-active,.demo-player-leave-active{transition:opacity .22s,transform .22s}.demo-player-enter-from,.demo-player-leave-to{opacity:0;transform:translateY(.8rem)scale(.992)}@keyframes demo-player-spin{to{transform:rotate(1turn)}}.not-found{width:min(100%,46rem);margin-inline:auto;padding:clamp(2.5rem,8vw,6rem)}.not-found h1{margin:var(--space-3) 0;letter-spacing:-.06em;font-size:clamp(3rem,8vw,6rem);line-height:1}.not-found>p:not(.eyebrow){margin:0 0 var(--space-7);color:var(--color-muted)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip-link{z-index:100;top:var(--space-3);left:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-brand);color:var(--surface);position:absolute;transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}::view-transition-group(digital-human){z-index:50;animation-duration:.76s;animation-timing-function:cubic-bezier(.2,.8,.2,1)}::view-transition-old(root){animation-duration:.42s}::view-transition-new(root){animation-duration:.42s}@media (width<=62rem){.stage__grid--home .profile-panel,.stage__grid--projects .projects-panel,.stage__grid--experience .experience-panel{grid-column:1/-1}.stage__grid--home .mascot-column{display:none}.profile-overview,.online-project-card__details,.participated-project,.demo-card{grid-template-columns:1fr}.demo-card__details{padding:var(--space-4) 0 0;border-top:1px solid color-mix(in srgb, var(--border) 78%, transparent);border-left:0}}@media (width<=52rem){.stage{min-height:auto}.stage__grid{grid-template-columns:1fr}.stage__grid--home .profile-panel,.stage__grid--projects .projects-panel,.stage__grid--experience .experience-panel{grid-column:1}.profile-panel,.projects-panel,.experience-panel{min-height:auto}.projects-panel__header,.experience-panel__header{gap:var(--space-4);grid-template-columns:1fr}}@media (width<=36rem){.profile-panel,.projects-panel,.experience-panel{padding:var(--space-5);border-radius:var(--radius-lg)}.profile-panel h1{letter-spacing:-.06em;font-size:clamp(2.65rem,12.5vw,3.35rem);line-height:1}.projects-panel h1,.experience-panel h1{font-size:clamp(2.65rem,13vw,3.6rem);line-height:1.02}.project-row{grid-template-columns:2rem minmax(0,1fr)}.project-row__title{align-items:flex-start;gap:var(--space-2);flex-direction:column}.profile-panel__facts{grid-template-columns:1fr}.profile-metrics{gap:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr))}.profile-metrics>div{padding:.8rem .55rem}.profile-metrics dt{white-space:nowrap;font-size:clamp(1rem,4.6vw,1.2rem)}.profile-metrics dd{font-size:.66rem}.online-project-card__header{grid-template-columns:2rem minmax(0,1fr)}.online-project-card__header strong{grid-column:2;justify-self:start}.online-project-card__overview,.online-project-card__details{margin-left:0}.stage-actions{flex-wrap:wrap}.stage-actions__buttons{flex-direction:column;align-items:stretch;width:100%}.contact-button,.next-button{width:100%}.demo-player__toolbar{min-height:4rem;padding:.55rem .75rem}.demo-player__identity p,.demo-player__actions>span{display:none}.demo-player{padding:var(--space-3);border-radius:var(--radius-lg)}.demo-player__viewport{border-width:.24rem;border-radius:1rem;width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.glass-panel:before{transform:none!important}}
