html body{min-height:100svh;display:flex;flex-direction:column}html body>main{flex:1 0 auto;width:100%}html body>footer{margin-top:auto}.sx-term[hidden]{display:none}.sx-term{position:fixed;inset:0;z-index:999985;display:flex;flex-direction:column;background:#0c0c0cf7;animation:sxFade .2s ease;font-family:var(--sf2),"JetBrains Mono",monospace}.sx-term.sx-win{inset:50% auto auto 50%;transform:translate(-50%,-50%);width:min(880px,92vw);height:min(560px,80vh);border:1px solid rgba(255,107,157,.35);border-radius:10px;box-shadow:0 0 0 100vmax #0000008c,0 24px 60px #0009;overflow:hidden}.sx-term.sx-mini{inset:auto 28px 76px auto;transform:none;width:300px;height:auto;border:1px solid rgba(255,107,157,.35);border-radius:10px;box-shadow:0 12px 30px #00000080;overflow:hidden;cursor:pointer}.sx-term.sx-mini .sx-term-body,.sx-term.sx-mini .sx-dot{display:none}.sx-term.sx-mini .sx-term-title{margin-left:0;white-space:nowrap}.sx-term.sx-mini .sx-term-bar{border-bottom:none}.sx-term-bar{display:flex;align-items:center;gap:8px;padding:12px 18px;border-bottom:1px solid rgba(255,107,157,.25)}.sx-dot{width:11px;height:11px;border-radius:50%;background:#ff6b9d8c}.sx-dot:nth-child(2){opacity:.6}.sx-dot:nth-child(3){opacity:.35}.sx-term-title{margin:0 auto 0 12px;font-size:12.5px;color:#7a8a9e}.sx-term-body{flex:1;overflow-y:auto;padding:20px 24px 40px;font-size:14px;line-height:1.7;color:#d5dce8}.sx-row{white-space:pre-wrap;word-break:break-word}.sx-row a{color:#ff6b9d}.sx-cmd{color:#94a3b8}.sx-err{color:#ff8a8a}.sx-pink{color:#ff6b9d}.sx-term-line{display:flex;align-items:center;gap:10px}.sx-prompt{color:#ff6b9d;flex:none}.sx-term-line input{flex:1;min-width:0;background:transparent;border:none;outline:none;color:#e8edf5;font:inherit;caret-color:#ff6b9d;padding:0}.sx-modal[hidden],.sx-hint[hidden]{display:none}.sx-modal{position:fixed;inset:0;z-index:999980;display:grid;place-items:center;padding:24px}.sx-backdrop{position:absolute;inset:0;background:#0a0a0ab8;backdrop-filter:blur(6px);animation:sxFade .25s ease}.sx-card{position:relative;display:flex;flex-direction:column;background:#181818;border:1px solid rgba(255,107,157,.35);border-radius:14px;box-shadow:0 30px 80px #0009;animation:sxPop .35s cubic-bezier(.16,1,.3,1);overflow:hidden}.sx-resume{width:min(900px,100%);height:min(88vh,1000px)}.sx-resume iframe{flex:1;width:100%;border:0;background:#2a2a2a}.sx-keys{width:min(440px,100%)}.sx-bar{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid rgba(255,255,255,.07)}.sx-title{font-family:var(--f3);font-size:24px;font-weight:700;color:#e8edf5;margin-right:auto}.sx-btn{font-family:var(--sf2),monospace;font-size:12px;color:#94a3b8;text-decoration:none;border:1px solid rgba(255,255,255,.14);border-radius:100px;padding:5px 12px;transition:color .2s ease,border-color .2s ease}.sx-btn:hover{color:#ff6b9d;border-color:#ff6b9d}.sx-x{background:none;border:none;color:#7a8a9e;font-size:16px;padding:4px 6px;transition:color .2s ease}.sx-x:hover{color:#ff6b9d}.sx-list{list-style:none;margin:0;padding:10px 20px 18px}.sx-list li{display:flex;align-items:center;gap:16px;padding:8px 0;font-family:var(--f2),sans-serif;font-size:14px;color:#94a3b8;border-bottom:1px dashed rgba(255,255,255,.06)}.sx-list li:last-child{border-bottom:none}.sx-list li>span{width:90px;display:inline-flex;gap:6px}.sx-list kbd,.sx-hint b{font-family:var(--sf2),monospace;font-size:12px;color:#ff6b9d;background:#ff6b9d1a;border:1px solid rgba(255,107,157,.3);border-radius:6px;padding:2px 8px;font-weight:500}.sx-hint{position:fixed;left:50%;bottom:28px;transform:translate(-50%);z-index:999970;max-width:calc(100vw - 32px);font-family:var(--sf2),monospace;font-size:12px;color:#94a3b8;line-height:2;background:#181818;border:1px solid rgba(255,107,157,.35);border-radius:12px;padding:8px 16px;box-shadow:0 14px 40px #00000080;text-align:center;animation:sxFade .25s ease}.sx-key{position:fixed;top:24px;right:28px;z-index:9000;width:34px;height:34px;padding:0;display:grid;place-items:center;background:#181818;border:1px solid rgba(255,107,157,.4);border-radius:50%;font-family:var(--f3, "Gaegu", cursive);font-size:22px;font-weight:700;line-height:1;color:#ff6b9d;box-shadow:0 6px 18px #ff6b9d26;animation:sxFloat 3.4s ease-in-out infinite;transition:background .2s ease,color .2s ease,box-shadow .2s ease}.sx-key:hover{background:#ff6b9d;color:#181818;box-shadow:0 8px 24px #ff6b9d66}.sx-term-btn{position:absolute;top:clamp(56px,11vh,110px);right:80px;z-index:1000;padding:6px 4px;line-height:1.3;background:none;border:none;font-family:var(--sf2, "JetBrains Mono"),monospace;font-size:15px;color:#a9b4c2;cursor:pointer;transition:color .2s ease}.sx-term-btn .sx-term-glyph{color:#ff6b9d}.sx-term-btn:hover{color:#fff}@media(max-width:900px),(hover:none){.sx-term-btn{display:none}}@keyframes sxFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@media(max-width:900px),(hover:none){.sx-key{display:none}}@media(prefers-reduced-motion:reduce){.sx-key{animation:none}}html.sx-lock{overflow:hidden}@keyframes sxFade{0%{opacity:0}to{opacity:1}}@keyframes sxPop{0%{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:none}}@media(max-width:640px){.sx-hint{display:none!important}}:root{--bg: #04060E;--s1: #080D1A;--s2: #0C1220;--bdr: #1a2540;--border: #1a2540;--card: rgba(8, 13, 26, .5);--v: #7C5CFF;--accent: #7C5CFF;--accent2: #00D4FF;--accent3: #FF6B9D;--c: #00D4FF;--p:#FF6B9D;--g:#4ADE80;--amber:#FCD34D;--text:#E8EDF5;--t1:#E8EDF5;--text2:#7A8A9E;--t2:#7A8A9E;--f1: "Quicksand", sans-serif;--f2: "Plus Jakarta Sans", sans-serif ;--sf1: "Space Grotesk", sans-serif;--sf2: "JetBrains Mono", monospace;--f3: "Gaegu", "Kalam", cursive;--f4: "Fraunces", Georgia, serif;--nav-h: calc(clamp(56px, 11vh, 110px) + 74px) ;--ease: cubic-bezier(.16, 1, .3, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{color:var(--text);font-family:var(--f2);overflow-x:hidden;transition:background-color .3s ease;background-color:#181818!important;background-image:none!important;color:#e8edf5!important}body{min-height:100svh;display:flex;flex-direction:column}main{position:relative;z-index:1;flex:1 0 auto;width:100%}body>footer{margin-top:auto}.nav-container{z-index:9999!important}.page{max-width:1200px;margin:0 auto;padding:0 5vw}section{padding:100px 0;scroll-margin-top:58px;position:relative;z-index:1;background:transparent}.s-ttl{font-family:var(--f1);font-optical-sizing:auto;font-style:normal;text-transform:lowercase!important;font-size:clamp(24px,4vw,38px)!important;font-weight:700!important;line-height:1.1!important;letter-spacing:-.03em!important;margin-top:10px!important;margin-bottom:32px!important}.s-ttl span,.s-ttl .glow-txt,.s-ttl .proj-title,.s-ttl .skills-accent,.s-ttl .exp-accent-text{color:#ff6b9d!important}h1.custom-title-node,h1.exp-h1{font-family:var(--f3)!important;font-size:clamp(34px,4.4vw,50px)!important;font-weight:700!important;letter-spacing:.01em!important;line-height:1!important;color:#e8edf5!important;margin:0 0 24px!important;text-align:left!important;text-transform:none!important}h1.custom-title-node .title-accent,h1.exp-h1 span{color:#ff6b9d!important}@media(min-width:769px){*,*:before,*:after,html,body,a,button,input,select,textarea,[role=button]{cursor:none!important}}:root{--f3: "Gaegu", "Kalam", cursive;--f4: "Fraunces", Georgia, serif;--nav-h: calc(clamp(56px, 11vh, 110px) + 74px) ;--ease: cubic-bezier(.16, 1, .3, 1)}.reveal{opacity:1!important;transform:none!important}.nav-container[data-astro-cid-5blmo7yk]{position:absolute;top:0;left:0;right:0;z-index:1000;display:flex;justify-content:center;padding:clamp(56px,11vh,110px) 16px 0;pointer-events:none}.nav-container[data-astro-cid-5blmo7yk] nav[data-astro-cid-5blmo7yk]{pointer-events:auto;display:flex;align-items:center;gap:4px;background:none!important;border:none!important;box-shadow:none!important;border-radius:0;padding:0}.nav-container[data-astro-cid-5blmo7yk] nav[data-astro-cid-5blmo7yk] .nl[data-astro-cid-5blmo7yk]{--pad: 14px;position:relative;display:inline-flex;align-items:center;justify-content:center;padding:6px var(--pad);background:none;border:none;border-radius:0;color:#7a8a9e;font-family:var(--f1);font-size:17px;font-weight:500;letter-spacing:.02em;text-decoration:none;transition:color .2s ease}.nav-container[data-astro-cid-5blmo7yk] nav[data-astro-cid-5blmo7yk] .nav-icon-link[data-astro-cid-5blmo7yk]{--pad: 11px}.nav-container[data-astro-cid-5blmo7yk] nav[data-astro-cid-5blmo7yk] .nl[data-astro-cid-5blmo7yk]:after{content:"";position:absolute;left:var(--pad);right:var(--pad);bottom:0;height:2px;background:#ff6b9d;transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}.nav-container[data-astro-cid-5blmo7yk] nav[data-astro-cid-5blmo7yk] .nl[data-astro-cid-5blmo7yk]:hover{color:#e8edf5}.nav-container[data-astro-cid-5blmo7yk] nav[data-astro-cid-5blmo7yk] .nl[data-astro-cid-5blmo7yk].on{color:#ff6b9d}.nav-container[data-astro-cid-5blmo7yk] nav[data-astro-cid-5blmo7yk] .nl[data-astro-cid-5blmo7yk].on:after{transform:scaleX(1)}.nav-icon[data-astro-cid-5blmo7yk]{display:block}.nav-menu[data-astro-cid-5blmo7yk]{position:relative;display:flex}.nav-dropdown[data-astro-cid-5blmo7yk]{position:absolute;top:calc(100% + 14px);right:0;min-width:190px;padding:6px 0;display:flex;flex-direction:column;background:#1c1c1e;border:1px solid rgba(255,255,255,.08);border-radius:4px;box-shadow:0 16px 36px #00000080;animation:ddIn .2s var(--ease)}.nav-dropdown[data-astro-cid-5blmo7yk][hidden]{display:none}.dd-item[data-astro-cid-5blmo7yk]{padding:10px 18px;border-left:2px solid transparent;font-family:var(--f1);font-size:14px;font-weight:500;color:#7a8a9e;text-decoration:none;transition:color .2s ease,background-color .2s ease,border-color .2s ease}.dd-item[data-astro-cid-5blmo7yk]:hover{color:#e8edf5;background:#ff6b9d0d;border-left-color:#ff6b9d80}.dd-item[data-astro-cid-5blmo7yk].on{color:#ff6b9d;border-left-color:#ff6b9d}@keyframes ddIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@media(max-width:560px){.nav-container[data-astro-cid-5blmo7yk]{padding-top:26px}.nav-container[data-astro-cid-5blmo7yk] nav[data-astro-cid-5blmo7yk]{gap:0}.nav-container[data-astro-cid-5blmo7yk] nav[data-astro-cid-5blmo7yk] .nl[data-astro-cid-5blmo7yk]{--pad: 9px;font-size:14px}.nav-container[data-astro-cid-5blmo7yk] nav[data-astro-cid-5blmo7yk] .nav-icon-link[data-astro-cid-5blmo7yk]{--pad: 9px}}footer[data-astro-cid-sz7xmlte]{border:none!important;background:transparent;padding:24px 0 30px;position:relative;z-index:10;width:100%}.footer-container[data-astro-cid-sz7xmlte]{max-width:1500px;margin:0 auto;padding:0 3vw;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px}.footer-left[data-astro-cid-sz7xmlte]{display:flex;justify-content:flex-start;min-width:0}.footer-right[data-astro-cid-sz7xmlte]{display:flex;justify-content:flex-end}.song[data-astro-cid-sz7xmlte]{display:inline-flex;align-items:center;gap:8px;max-width:230px;min-width:0;font-family:var(--sf2),monospace;font-size:12px;color:#7a8a9e;text-decoration:none;transition:color .2s ease}.song[data-astro-cid-sz7xmlte][hidden]{display:none}.song[data-astro-cid-sz7xmlte]:hover{color:#ff6b9d}.song-icon[data-astro-cid-sz7xmlte]{flex:none;font-size:11px;color:#ff6b9d}.song-clip[data-astro-cid-sz7xmlte]{display:block;overflow:hidden;min-width:0;width:190px;white-space:nowrap;-webkit-mask-image:linear-gradient(to right,transparent,#000 10px,#000 calc(100% - 14px),transparent);mask-image:linear-gradient(to right,transparent,#000 10px,#000 calc(100% - 14px),transparent)}.song-track[data-astro-cid-sz7xmlte]{display:inline-block;white-space:nowrap;padding-left:2px}.song-track[data-astro-cid-sz7xmlte].scroll{padding-left:0;animation:ticker 12s linear infinite}.song-track[data-astro-cid-sz7xmlte].scroll>span[data-astro-cid-sz7xmlte]{display:inline-block}@keyframes ticker{0%{transform:translate(0)}to{transform:translate(-50%)}}.footer-center[data-astro-cid-sz7xmlte]{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px}.footer-copy[data-astro-cid-sz7xmlte]{font-family:var(--f1);font-size:15.5px;color:#e8edf5;font-weight:500;letter-spacing:-.01em}.footer-rights[data-astro-cid-sz7xmlte]{font-family:var(--f1);font-size:12px;color:#7a8a9e;opacity:.65;letter-spacing:.05em}.footer-links[data-astro-cid-sz7xmlte]{display:flex;align-items:center;gap:20px}.footer-icon[data-astro-cid-sz7xmlte]{display:flex;align-items:center;justify-content:center;border:none!important;color:#7a8a9e;background:transparent!important;transition:color .2s var(--ease),transform .2s ease}.footer-icon[data-astro-cid-sz7xmlte] svg[data-astro-cid-sz7xmlte]{width:20px;height:20px;fill:currentColor}.footer-icon[data-astro-cid-sz7xmlte]:hover{color:#ff6b9d!important;transform:scale(1.1)}@media(prefers-reduced-motion:reduce){.song-track[data-astro-cid-sz7xmlte].scroll{animation:none}}@media(max-width:860px){.footer-container[data-astro-cid-sz7xmlte]{grid-template-columns:1fr;justify-items:center;gap:20px}.footer-center[data-astro-cid-sz7xmlte]{order:1}.footer-right[data-astro-cid-sz7xmlte]{order:2;justify-content:center}.footer-left[data-astro-cid-sz7xmlte]{order:3;justify-content:center}}html,body,a[data-astro-cid-ofxtmv4x],button[data-astro-cid-ofxtmv4x],select[data-astro-cid-ofxtmv4x],input[data-astro-cid-ofxtmv4x],[data-astro-cid-ofxtmv4x][role=button]{cursor:none!important}.minimal-pointer[data-astro-cid-ofxtmv4x],#spark-canvas[data-astro-cid-ofxtmv4x]{position:fixed!important;top:0;left:0;pointer-events:none;z-index:999999!important}#spark-canvas[data-astro-cid-ofxtmv4x]{width:100vw;height:100vh}.minimal-pointer[data-astro-cid-ofxtmv4x]{will-change:transform}.pointer-inner[data-astro-cid-ofxtmv4x]{transform-origin:top left;transition:transform .15s cubic-bezier(.16,1,.3,1)}.pointer-inner[data-astro-cid-ofxtmv4x] svg[data-astro-cid-ofxtmv4x]{display:block}.minimal-pointer[data-astro-cid-ofxtmv4x].hovering .pointer-inner[data-astro-cid-ofxtmv4x]{transform:scale(.85)}.minimal-pointer[data-astro-cid-ofxtmv4x].hovering svg[data-astro-cid-ofxtmv4x] path[data-astro-cid-ofxtmv4x]{stroke:#ff6b9d;filter:drop-shadow(0 0 6px rgba(255,107,157,.7))}@media(max-width:768px){.minimal-pointer[data-astro-cid-ofxtmv4x],#spark-canvas[data-astro-cid-ofxtmv4x]{display:none!important}html,body,a[data-astro-cid-ofxtmv4x],button[data-astro-cid-ofxtmv4x],select[data-astro-cid-ofxtmv4x],input[data-astro-cid-ofxtmv4x]{cursor:auto!important}}
