:root{--bg:#101112;--panel:#17191a;--text:#f1f2f2;--muted:#8c9092;--line:rgba(255,255,255,.13);--accent:#e9eff0;--max:1120px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:"Microsoft YaHei","PingFang SC",system-ui,sans-serif;line-height:1.75;letter-spacing:0;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}#starfield{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;background:#0c0d0e}.site-header{position:fixed;top:0;left:0;right:0;z-index:20;display:flex;align-items:center;justify-content:space-between;height:76px;padding:0 clamp(24px,5vw,72px);background:linear-gradient(180deg,rgba(12,13,14,.9),transparent);transition:background .3s}.site-header.scrolled{background:rgba(12,13,14,.86);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.brand{font:700 14px/1 ui-monospace,Consolas,monospace;letter-spacing:.22em}.brand span{color:#ef5047}.site-header nav{display:flex;gap:clamp(18px,2.5vw,38px)}.site-header nav a{position:relative;color:#b8bbbd;font-size:12px}.site-header nav a:after{content:"";position:absolute;left:0;bottom:-7px;width:100%;height:1px;background:#fff;transform:scaleX(0);transform-origin:right;transition:transform .25s}.site-header nav a:hover{color:#fff}.site-header nav a:hover:after{transform:scaleX(1);transform-origin:left}.hero{position:relative;z-index:1;display:flex;align-items:flex-end;min-height:100svh;padding:0 max(6vw,24px) 18vh}.hero:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:36%;z-index:-1;background:linear-gradient(transparent,var(--bg))}.hero-content{width:min(var(--max),88vw);margin:0 auto}.eyebrow{display:flex;align-items:center;gap:12px;margin:0 0 22px;color:rgba(255,255,255,.5);font:11px/1.4 ui-monospace,Consolas,monospace;letter-spacing:.18em}.status-dot{width:6px;height:6px;border-radius:50%;background:#54e881;box-shadow:0 0 12px #54e881}.hero h1{max-width:900px;min-height:2.5em;margin:0;font-size:clamp(34px,6vw,76px);font-weight:300;line-height:1.25}.identity{display:flex;align-items:center;gap:18px;margin-top:28px;color:#d4d6d7}.identity p{margin:0;font-size:16px}.window-dots{display:flex;gap:7px}.window-dots i{display:block;width:10px;height:10px;border-radius:50%;background:#ef5047}.window-dots i:nth-child(2){background:#f5c34b}.window-dots i:nth-child(3){background:#4fd06f}.scroll-cue{position:absolute;left:50%;bottom:32px;width:30px;height:48px;border:1px solid rgba(255,255,255,.28);border-radius:18px;transform:translateX(-50%)}.scroll-cue span{position:absolute;top:10px;left:50%;width:3px;height:7px;border-radius:2px;background:#fff;transform:translateX(-50%);animation:scroll 1.8s infinite}.section{position:relative;z-index:2;padding:140px max(6vw,24px)}.section-inner{width:min(var(--max),100%);margin:auto}.about{background:var(--bg)}.section-heading{display:grid;grid-template-columns:1fr 2fr;align-items:end;padding-bottom:42px;border-bottom:1px solid var(--line)}.section-heading p{margin:0;color:var(--muted);font:11px/1.4 ui-monospace,Consolas,monospace;letter-spacing:.16em}.section-heading h2{margin:0;font-size:clamp(30px,4vw,52px);font-weight:300;line-height:1.2}.section-heading h2 span{color:var(--muted)}.profile-grid{display:grid;grid-template-columns:1fr 2fr;gap:70px;padding:70px 0}.portrait-wrap{position:relative;width:240px}.portrait{display:block;width:240px;height:240px;object-fit:cover;filter:grayscale(1);border:1px solid var(--line)}.portrait-index{display:block;margin-top:12px;color:var(--muted);font:10px/1.4 ui-monospace,Consolas,monospace;letter-spacing:.12em}.bio{max-width:680px}.bio p{margin:0 0 20px;color:#aeb1b2;font-size:15px}.bio .lead{color:#f0f1f1;font-size:clamp(18px,2vw,25px);line-height:1.8}.skills{display:grid;grid-template-columns:1fr 1fr;column-gap:80px;border-top:1px solid var(--line)}.skill{display:grid;grid-template-columns:120px 1fr 30px;align-items:center;gap:22px;height:76px;border-bottom:1px solid var(--line)}.skill span{font-size:12px}.skill b{position:relative;height:2px;background:rgba(255,255,255,.14)}.skill b:after{content:"";position:absolute;inset:0 auto 0 0;width:var(--level);background:var(--accent);transform-origin:left;animation:grow 1.5s ease-out both}.skill small{color:var(--muted);font:10px ui-monospace,Consolas,monospace}.contact{background:var(--panel);padding-bottom:100px}.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:70px;border-top:1px solid var(--line);border-left:1px solid var(--line)}.contact-item{display:flex;flex-direction:column;align-items:flex-start;min-height:190px;padding:30px;background:transparent;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);cursor:pointer;text-align:left;transition:background .25s,transform .25s}.contact-item:hover{background:rgba(255,255,255,.06);transform:translateY(-5px)}.contact-kind{color:var(--muted);font:10px ui-monospace,Consolas,monospace;letter-spacing:.16em}.contact-item strong{margin:auto 0;font-size:clamp(17px,2vw,24px);font-weight:400}.contact-item small{color:var(--muted);font-size:11px}.closing{margin:100px 0 0;color:#606466;font:clamp(24px,6vw,72px)/1 ui-monospace,Consolas,monospace;overflow-wrap:anywhere}footer{position:relative;z-index:2;display:flex;justify-content:space-between;padding:24px max(6vw,24px);background:#0b0c0d;color:#646769;font:9px ui-monospace,Consolas,monospace;letter-spacing:.15em}.toast{position:fixed;z-index:50;left:50%;bottom:30px;padding:10px 18px;background:#f3f4f4;color:#121314;font-size:12px;opacity:0;transform:translate(-50%,15px);pointer-events:none;transition:.25s}.toast.show{opacity:1;transform:translate(-50%,0)}@keyframes scroll{0%{opacity:0;transform:translate(-50%,0)}40%{opacity:1}100%{opacity:0;transform:translate(-50%,15px)}}@keyframes grow{from{transform:scaleX(0)}}@media(max-width:760px){.site-header{height:64px;padding:0 20px}.site-header nav{gap:18px;overflow-x:auto}.site-header nav a:nth-last-child(-n+3){display:none}.hero{padding:0 24px 20vh}.hero-content{width:100%}.hero h1{font-size:36px;min-height:3.8em}.section{padding:96px 24px}.section-heading,.profile-grid{grid-template-columns:1fr}.section-heading{gap:16px}.profile-grid{gap:40px;padding:50px 0}.portrait-wrap,.portrait{width:140px}.portrait{height:140px}.skills{grid-template-columns:1fr}.skill{grid-template-columns:92px 1fr 24px;gap:12px}.contact-grid{grid-template-columns:1fr;margin-top:50px}.contact-item{min-height:140px}.closing{margin-top:70px}footer{padding:22px 24px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
