
:root{--bg:#f4f2fb;--surface:#fff;--surface-2:#eeebf7;--text:#171226;--muted:#675f78;--line:rgba(50,37,77,.14);--accent:#6c42e8;--accent-2:#0e8fa4;--glow:rgba(108,66,232,.18);--shadow:0 26px 70px rgba(40,25,79,.12);color-scheme:light}
html[data-theme="dark"]{--bg:#090614;--surface:#141023;--surface-2:#1b1530;--text:#f2efff;--muted:#aaa2bf;--line:rgba(193,178,255,.16);--accent:#a983ff;--accent-2:#5de1e6;--glow:rgba(131,91,255,.24);--shadow:0 26px 80px rgba(0,0,0,.38);color-scheme:dark}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:105px}
body{margin:0;background:var(--bg);color:var(--text);font-family:"DM Sans","Microsoft JhengHei","PingFang TC","Noto Sans TC",sans-serif;line-height:1.7;overflow-x:hidden;transition:background .35s,color .35s}
button,a{font:inherit}a{color:inherit}svg{width:24px;height:24px;fill:currentColor}:where(a,button,input,[tabindex]):focus-visible{outline:3px solid var(--accent);outline-offset:4px}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:1000;background:var(--accent);color:#fff;padding:.7rem 1rem;border-radius:.6rem}.skip-link:focus{top:1rem}
.ambient{position:fixed;z-index:-1;border-radius:50%;filter:blur(120px);opacity:.34;pointer-events:none}.ambient-one{width:560px;height:560px;left:-250px;top:90px;background:#6d35e9}.ambient-two{width:520px;height:520px;right:-220px;top:680px;background:#0c8d9a}
.command-bar{position:sticky;top:18px;z-index:30;width:max-content;max-width:calc(100% - 24px);margin:18px auto 0;padding:9px 12px;display:flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:22px;background:color-mix(in srgb,var(--surface) 78%,transparent);box-shadow:0 14px 40px rgba(0,0,0,.18);backdrop-filter:blur(20px)}
.icon-link,.text-control{position:relative;width:44px;height:44px;border:0;border-radius:14px;display:grid;place-items:center;color:var(--muted);background:transparent;cursor:pointer;transition:transform .2s,color .2s,background .2s,box-shadow .2s;text-decoration:none}.icon-link:hover,.text-control:hover,.icon-link:focus-visible,.text-control:focus-visible{outline:0;color:var(--text);background:var(--surface-2);transform:translateY(-2px);box-shadow:0 8px 25px var(--glow)}.icon-link[data-tooltip]::after{content:attr(data-tooltip);position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%,-5px);padding:4px 8px;background:var(--text);color:var(--bg);font:500 11px "Space Mono",monospace;border-radius:5px;opacity:0;visibility:hidden;transition:.2s;white-space:nowrap}.icon-link:hover::after{opacity:1;visibility:visible;transform:translate(-50%,0)}.text-control{font:700 13px "Space Mono",monospace}.nav-divider{height:26px;width:1px;background:var(--line);margin:0 5px}
.hero,main,.footer{width:min(1240px,calc(100% - 48px));margin-inline:auto}.hero{min-height:690px;display:grid;grid-template-columns:1.15fr .85fr;gap:80px;align-items:center;padding:90px 0 80px}.eyebrow,.section-kicker{font:700 12px "Space Mono",monospace;letter-spacing:.22em;text-transform:uppercase;color:var(--muted)}.eyebrow{display:flex;align-items:center;gap:9px}.status-dot{width:8px;height:8px;border-radius:50%;background:#5de1a7;box-shadow:0 0 0 6px rgba(93,225,167,.1),0 0 18px #5de1a7;animation:pulse 2s infinite}.hero h1{font-size:clamp(64px,8.5vw,122px);letter-spacing:-.065em;line-height:.88;margin:30px 0;color:var(--text)}.hero h1 small{display:block;margin:24px 0 0;font:700 clamp(14px,1.6vw,21px) "Space Mono",monospace;letter-spacing:.32em;color:var(--accent)}.hero h2{max-width:770px;font-size:clamp(26px,3.4vw,46px);line-height:1.28;letter-spacing:-.035em;margin:0 0 24px}.hero-intro{max-width:690px;color:var(--muted);font-size:18px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:38px}.button{padding:13px 20px;border-radius:99px;text-decoration:none;font-weight:700;border:1px solid var(--line);transition:.25s}.button:hover{transform:translateY(-3px);box-shadow:0 13px 30px var(--glow)}.button.primary{background:var(--accent);color:#fff;border-color:transparent}.button.ghost{background:var(--surface)}
.signal-card{height:440px;position:relative;border:1px solid var(--line);border-radius:42px;background:linear-gradient(145deg,color-mix(in srgb,var(--surface) 92%,transparent),color-mix(in srgb,var(--accent) 8%,var(--surface)));overflow:hidden;box-shadow:var(--shadow);display:grid;place-items:center}.signal-grid{position:absolute;inset:0;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(to bottom,black,transparent)}.monogram{z-index:2;font:700 84px "Space Mono",monospace;letter-spacing:-.14em;background:linear-gradient(135deg,var(--accent-2),var(--accent));-webkit-background-clip:text;color:transparent;filter:drop-shadow(0 0 30px var(--glow))}.signal-card p{position:absolute;bottom:24px;left:28px;font:700 10px/1.8 "Space Mono",monospace;letter-spacing:.18em;color:var(--muted)}.orbit{position:absolute;border:1px solid var(--accent);border-radius:50%;opacity:.35}.orbit-a{width:250px;height:250px;animation:orbit 14s linear infinite}.orbit-b{width:330px;height:140px;transform:rotate(32deg);animation:orbitB 11s linear infinite}
.section{padding:110px 0;border-top:1px solid var(--line)}.section-kicker{margin:0 0 50px}.section-kicker span{color:var(--accent);margin-left:14px}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:110px;align-items:end}.intro-grid h2,.split-section h2,.perxona-heading h2{font-size:clamp(30px,4vw,54px);line-height:1.2;letter-spacing:-.04em;margin:0}.intro-grid>p{font-size:20px;color:var(--muted);margin:0}
.experience-list{display:flex;flex-direction:column}.experience-card{display:grid;grid-template-columns:96px 1fr;gap:26px;padding:38px 30px;border-top:1px solid var(--line);transition:background .25s,transform .25s,border-color .25s}.experience-card:first-child{border-top:0}.experience-card:hover{background:linear-gradient(90deg,var(--glow),transparent);transform:translateX(7px);border-color:var(--accent)}.experience-card.featured{border:1px solid var(--line);border-radius:28px;background:linear-gradient(100deg,var(--glow),color-mix(in srgb,var(--surface) 94%,transparent));margin-bottom:18px;box-shadow:var(--shadow)}.brand-logo{width:78px;height:78px;border:1px solid var(--line);border-radius:22px;display:grid;place-items:center;background:#100b21;box-shadow:0 12px 25px rgba(0,0,0,.2);font-weight:800}.brand-logo span{font-size:23px}.brand-tmy{color:#b593ff}.brand-honhai{background:#fff;color:#ef3847}.brand-honhai span{font-size:36px;font-family:"Space Mono"}.brand-104{background:#fff;color:#ed8c1a}.brand-tpv{background:#075589;color:#fff}.brand-glows{background:#111;color:#b756ff}.role-line{display:flex;justify-content:space-between;gap:24px}.role-line h3{font-size:28px;line-height:1.25;margin:0 0 7px}.role-line h4{font-size:19px;color:var(--accent);margin:0}.role-line time{white-space:nowrap;color:var(--muted);font:400 12px "Space Mono",monospace;letter-spacing:.13em}.meta{color:var(--muted);margin:12px 0 17px}.experience-copy ul{margin:0;padding-left:20px;color:var(--muted)}.experience-copy li{margin:7px 0}.experience-copy li::marker{color:var(--accent)}
.split-section{display:grid;grid-template-columns:1fr 1fr;gap:90px}.split-section>div{padding:38px;border:1px solid var(--line);border-radius:28px;background:color-mix(in srgb,var(--surface) 75%,transparent);transition:.25s}.split-section>div:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:color-mix(in srgb,var(--accent) 60%,var(--line))}.split-section .section-kicker{margin-bottom:25px}.split-section p:not(.section-kicker){color:var(--muted)}.split-section .accent{color:var(--accent)!important;font-weight:700}.skill-cloud{display:flex;gap:9px;flex-wrap:wrap}.skill-cloud span,.project-card div span{padding:7px 12px;border-radius:99px;border:1px solid var(--line);background:var(--surface-2);color:var(--muted);font-size:13px;transition:.2s}.skill-cloud span:hover{color:var(--text);border-color:var(--accent);transform:translateY(-2px)}
.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.project-card{min-height:330px;padding:30px;border:1px solid var(--line);border-radius:26px;background:var(--surface);display:flex;flex-direction:column;transition:.3s}.project-card:hover{transform:translateY(-9px) rotate(-.4deg);box-shadow:var(--shadow);border-color:var(--accent)}.project-card:nth-child(2):hover{transform:translateY(-9px) rotate(.4deg)}.project-no{font:700 12px "Space Mono",monospace;color:var(--accent)}.project-card h3{font-size:28px;margin:28px 0 12px}.project-card p{color:var(--muted);margin:0 0 auto}.project-card div{display:flex;flex-wrap:wrap;gap:7px;margin-top:24px}
.perxona-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:35px}.perxona-heading .section-kicker{margin-bottom:20px}.perxona-heading>p{max-width:410px;color:var(--muted)}.perxona-stage{height:640px;border:1px solid var(--line);border-radius:32px;overflow:hidden;background:var(--surface);box-shadow:var(--shadow)}.perxona-stage sv-agent{display:block;width:100%;height:640px}
.footer{padding:80px 0 24px}.social-links{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;padding-bottom:70px}.social-links a,.social-links button{border:1px solid var(--line);border-radius:99px;padding:14px 22px;background:var(--surface);text-decoration:none;color:var(--text);font-weight:700;cursor:pointer;transition:.25s}.social-links a:hover,.social-links button:hover{background:var(--accent);color:#fff;border-color:transparent;transform:translateY(-4px);box-shadow:0 12px 30px var(--glow)}.footer-bottom{border-top:1px solid var(--line);padding-top:22px;display:flex;justify-content:space-between;color:var(--muted);font:400 11px "Space Mono",monospace;letter-spacing:.13em}
.qr-dialog{width:min(520px,calc(100% - 28px));padding:45px;border:1px solid var(--line);border-radius:34px;background:var(--surface);color:var(--text);text-align:center;box-shadow:0 35px 110px rgba(0,0,0,.65)}.qr-dialog::backdrop{background:rgba(5,2,14,.78);backdrop-filter:blur(9px)}.qr-dialog[open]{animation:dialogIn .25s ease}.qr-dialog .section-kicker{margin:0 0 15px}.qr-dialog h2{font-size:30px;margin:0 0 7px}.qr-dialog>p:not(.section-kicker){color:var(--muted);margin:0 0 26px}.dialog-close{position:absolute;right:18px;top:14px;border:0;background:transparent;color:var(--muted);font-size:36px;line-height:1;cursor:pointer;transition:.2s}.dialog-close:hover{color:var(--text);transform:rotate(90deg)}.qr-image-link{display:block;margin:auto;background:#fff;padding:25px;border-radius:25px;width:min(330px,100%)}.qr-image-link img{display:block;width:100%;aspect-ratio:1;image-rendering:pixelated}.qr-url{display:inline-block;margin-top:25px;color:var(--accent);font-weight:800;text-decoration:none;font-size:20px}.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s,transform .7s}.reveal.visible{opacity:1;transform:none}
@keyframes pulse{50%{opacity:.55;transform:scale(.85)}}@keyframes orbit{to{transform:rotate(360deg)}}@keyframes orbitB{to{transform:rotate(392deg)}}@keyframes dialogIn{from{opacity:0;transform:translateY(15px) scale(.97)}}
@media(max-width:900px){.hero{grid-template-columns:1fr;min-height:auto;padding-top:85px;gap:40px}.signal-card{height:320px}.intro-grid,.split-section{grid-template-columns:1fr;gap:32px}.project-grid{grid-template-columns:1fr}.perxona-heading{display:block}.perxona-heading>p{margin-top:16px}.role-line{display:block}.role-line time{display:block;margin-top:12px}}
@media(max-width:620px){.command-bar{top:8px;margin-top:8px;padding:6px 7px}.icon-link,.text-control{width:38px;height:38px;border-radius:11px}.nav-divider{margin:0 1px}.hero,main,.footer{width:min(100% - 28px,1240px)}.hero{padding:68px 0}.hero h1{font-size:55px}.hero h1 small{font-size:12px;letter-spacing:.2em}.hero h2{font-size:27px}.hero-intro{font-size:16px}.signal-card{height:280px;border-radius:28px}.section{padding:75px 0}.section-kicker{margin-bottom:34px}.intro-grid>p{font-size:17px}.experience-card,.experience-card.featured{grid-template-columns:1fr;padding:25px 18px;border-radius:23px}.brand-logo{width:62px;height:62px;border-radius:17px}.role-line h3{font-size:22px}.role-line h4{font-size:17px}.experience-card:hover{transform:translateY(-4px)}.split-section>div{padding:25px}.project-card{min-height:290px}.perxona-stage,.perxona-stage sv-agent{height:520px}.qr-dialog{padding:38px 22px 28px}.qr-dialog h2{font-size:25px}.qr-image-link{padding:18px}.footer-bottom{display:block;text-align:center}.footer-bottom p:last-child{margin-top:8px}.social-links{padding-bottom:50px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}
html[data-theme="dark"] .button.primary{color:#031019}
.avatar-consent{height:100%;display:grid;place-content:center;justify-items:center;text-align:center;padding:32px;background:radial-gradient(circle at 50% 38%,var(--glow),transparent 38%)}.avatar-consent-icon{width:78px;height:78px;display:grid;place-items:center;border:1px solid var(--accent);border-radius:24px;color:var(--accent);font:700 22px "Space Mono",monospace;box-shadow:0 0 35px var(--glow)}.avatar-consent h3{margin:24px 0 8px;font-size:clamp(25px,3vw,38px)}.avatar-consent>p:not(.avatar-status){max-width:520px;margin:0 0 24px;color:var(--muted)}.avatar-consent .button{min-width:190px;cursor:pointer}.avatar-consent .button:disabled{opacity:.65;cursor:wait}.avatar-status{min-height:1.7em;margin:14px 0 0;color:var(--muted);font-size:13px}
