@font-face{font-display:swap;font-family:Noto Sans Arabic;font-style:normal;font-weight:700;src:url(fonts/noto-sans-arabic-v18-arabic-700.woff2) format("woff2"),url(fonts/noto-sans-arabic-v18-arabic-700.woff) format("woff")}@font-face{font-display:swap;font-family:Noto Sans TC;font-style:normal;font-weight:700;src:url(fonts/noto-sans-tc-v26-latin-700.woff2) format("woff2"),url(fonts/noto-sans-tc-v26-latin-700.woff) format("woff")}@font-face{font-display:swap;font-family:Noto Sans JP;font-style:normal;font-weight:700;src:url(fonts/noto-sans-jp-v42-latin-700.woff2) format("woff2"),url(fonts/noto-sans-jp-v42-latin-700.woff) format("woff")}@font-face{font-display:swap;font-family:Noto Sans;font-style:normal;font-weight:700;src:url(fonts/noto-sans-v27-latin-700.woff2) format("woff2"),url(fonts/noto-sans-v27-latin-700.woff) format("woff")}@font-face{font-display:swap;font-family:Noto Sans KR;font-style:normal;font-weight:700;src:url(fonts/noto-sans-kr-v27-latin-700.woff2) format("woff2"),url(fonts/noto-sans-kr-v27-latin-700.woff) format("woff")}:root{--color-text: #fafafa;--color-bg: #000;--color-link: #fff;--color-link-hover: #fff;--glitch-width: 100%;--glitch-height: 100%;--gap-horizontal: 10px;--gap-vertical: 5px;--time-anim: 4s;--delay-anim: 6s;--blend-mode-1: none;--blend-mode-2: none;--blend-mode-3: none;--blend-mode-4: none;--blend-mode-5: overlay;--blend-color-1: transparent;--blend-color-2: transparent;--blend-color-3: transparent;--blend-color-4: transparent;--blend-color-5: #aa55ff;--color-github: #24292f;--color-bluesky: #1185FE;--color-linkedin: #0077B5;--color-youtube: #FF0000}html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;background:#1d2121}html,body{width:100%;min-height:100%}body{margin:0;color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:hidden}a{text-decoration:none;color:var(--color-link)}a:hover,a:active{color:var(--color-link-hover)}a:focus-visible{color:var(--color-link-hover);outline:2px dashed currentColor;outline-offset:.2em}*,*:after,*:before{box-sizing:border-box}main{display:block;position:relative;width:100%;height:100%;overflow:hidden}.content{display:flex;justify-content:center;align-items:center;min-height:100vh;min-height:100svh;margin:0 auto}.icons__container{position:fixed;z-index:5;bottom:0;display:grid;width:100%;padding:clamp(.75rem,2vh,1.5rem);grid-template-columns:repeat(auto-fit,minmax(10vmin,15vmin));justify-content:center}.icon{font-size:13vmin;display:flex;justify-content:center;align-items:center}.icon svg{display:block;width:auto;height:1em;max-width:100%;overflow:visible}.github{color:var(--color-github)}.bluesky{color:var(--color-bluesky)}.linkedin{color:var(--color-linkedin)}.flickr{color:#fff}.youtube{color:var(--color-youtube)}a.github>svg{background-image:radial-gradient(circle,white 67%,transparent 68%);background-size:100% 100%;background-position:center;background-repeat:no-repeat}a.linkedin>svg{background-size:85% 85%;background-position:center;background-repeat:no-repeat}a.flickr>svg{background-size:70% 50%;background-position:center;background-repeat:no-repeat}a.flickr>svg{background-image:linear-gradient(to left,#ff0084 50%,#0063dc 50%)}a.linkedin>svg{background-image:linear-gradient(#fff,#fff)}a.flickr:hover>svg,a.github:hover>svg,a.linkedin:hover>svg,a.flickr:focus-visible>svg,a.github:focus-visible>svg,a.linkedin:focus-visible>svg{background-image:none}a.instagram>svg>path{fill:url(#instagram__gradient)}a.instagram:hover>svg>path{fill:var(--color-link-hover)}a.instagram:focus-visible>svg>path{fill:var(--color-link-hover)}.youtube:hover .brand-knockout,.youtube:focus-visible .brand-knockout{fill:transparent}.icon-defs{position:absolute;overflow:hidden}.greeting__container{position:absolute;left:0;right:0;z-index:1;text-align:center;transition:filter .15s linear;animation:glitch-anim-text var(--time-anim) linear infinite;animation-delay:calc(var(--delay-anim) + var(--time-anim) * .2)}.greeting__text{display:inline-block;vertical-align:middle;font-size:8vw;font-family:Noto Sans,sans-serif;font-weight:700;line-height:1.3;white-space:nowrap}.greeting__cursor{display:inline-block;vertical-align:middle;width:clamp(.2rem,.7vw,.6rem);height:clamp(2.2rem,min(9vw,11vh),7rem);background-color:#3090c7;animation:cursor__blink .5s step-end infinite}.glitch-page{height:100%;width:100%;margin:0 auto}.glitch__container{position:absolute;top:0;left:0;width:var(--glitch-width);height:var(--glitch-height);overflow:hidden;contain:strict;transition:filter .15s linear}.glitch__container:after{content:"";position:absolute;inset:calc(-1 * var(--gap-vertical)) calc(-1 * var(--gap-horizontal));background-image:var(--glitch-image);background-position:var(--glitch-position, center);background-repeat:no-repeat;background-size:cover;opacity:0;pointer-events:none;will-change:transform,opacity,clip-path;animation:glitch-anim-tear 5s linear infinite;animation-delay:calc(var(--delay-anim) + .15s)}.glitch__img{position:absolute;top:calc(-1 * var(--gap-vertical));left:calc(-1 * var(--gap-horizontal));width:calc(100% + var(--gap-horizontal) * 2);height:calc(100% + var(--gap-vertical) * 2);background-image:var(--glitch-image);background-position:var(--glitch-position, center);background-repeat:no-repeat;background-color:var(--blend-color-1);background-size:cover;transform:translateZ(0);backface-visibility:hidden;background-blend-mode:var(--blend-mode-1)}.glitch__img:nth-child(n+2){opacity:0;will-change:transform,opacity,clip-path;animation-duration:var(--time-anim);animation-delay:var(--delay-anim);animation-timing-function:linear;animation-iteration-count:infinite}.glitch__img:nth-child(2){background-color:var(--blend-color-2);background-blend-mode:var(--blend-mode-2);animation-name:glitch-anim-1}.glitch__img:nth-child(3){background-color:var(--blend-color-3);background-blend-mode:var(--blend-mode-3);animation-name:glitch-anim-2}.glitch__img:nth-child(4){background-color:var(--blend-color-4);background-blend-mode:var(--blend-mode-4);animation-name:glitch-anim-3}.glitch__img:nth-child(5){background-color:var(--blend-color-5);background-blend-mode:var(--blend-mode-5);animation-name:glitch-anim-flash}.glitch-page:after{content:"";position:fixed;z-index:4;inset:0;background-image:repeating-linear-gradient(to bottom,#ffffff06 0 1px,#00000014 1px 3px);opacity:.07;pointer-events:none;mix-blend-mode:soft-light;will-change:opacity;animation:scanline-flicker 4s linear infinite}.signal-break{position:fixed;z-index:3;top:0;right:0;bottom:clamp(6rem,17vmin,10rem);left:0;overflow:hidden;padding:clamp(.75rem,2.5vw,2.5rem);color:#a8ffbc;opacity:0;visibility:hidden;pointer-events:none;scrollbar-width:none;transition:opacity .12s linear,visibility 0s linear .12s;will-change:opacity}.signal-break.is-active{opacity:1;visibility:visible;transition-delay:0s}.signal-break__code{width:min(100%,86rem);min-height:100%;margin:0;font:700 clamp(.62rem,1.15vw,.95rem) / 1.38 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.025em;white-space:pre-wrap;overflow-wrap:anywhere;text-shadow:0 1px 2px #000,0 0 .35rem rgba(0,0,0,.95),0 0 .55rem rgba(79,255,135,.65)}.signal-break__code:after{content:"\2588";color:#e8fff0;animation:terminal-cursor .45s step-end infinite}body.signal-break--active .glitch__container,body.signal-break--active .greeting__container{filter:blur(3px) brightness(.58) saturate(.75)}@keyframes cursor__blink{0%,to{background-color:transparent}50%{background-color:#3090c7}}@keyframes glitch-anim-1{0%{opacity:1;transform:translate3d(var(--gap-horizontal),0,0);clip-path:polygon(0 2%,100% 2%,100% 5%,0 5%)}2%{clip-path:polygon(0 15%,100% 15%,100% 15%,0 15%)}4%{clip-path:polygon(0 10%,100% 10%,100% 20%,0 20%)}6%{clip-path:polygon(0 1%,100% 1%,100% 2%,0 2%)}8%{clip-path:polygon(0 33%,100% 33%,100% 33%,0 33%)}10%{clip-path:polygon(0 44%,100% 44%,100% 44%,0 44%)}12%{clip-path:polygon(0 50%,100% 50%,100% 20%,0 20%)}14%{clip-path:polygon(0 70%,100% 70%,100% 70%,0 70%)}16%{clip-path:polygon(0 80%,100% 80%,100% 80%,0 80%)}18%{clip-path:polygon(0 50%,100% 50%,100% 55%,0 55%)}20%{clip-path:polygon(0 70%,100% 70%,100% 80%,0 80%)}21.9%{opacity:1;transform:translate3d(var(--gap-horizontal),0,0)}22%,to{opacity:0;transform:translateZ(0);clip-path:polygon(0 0,0 0,0 0,0 0)}}@keyframes glitch-anim-2{0%{opacity:1;transform:translate3d(calc(-1 * var(--gap-horizontal)),0,0);clip-path:polygon(0 25%,100% 25%,100% 30%,0 30%)}3%{clip-path:polygon(0 3%,100% 3%,100% 3%,0 3%)}5%{clip-path:polygon(0 5%,100% 5%,100% 20%,0 20%)}7%{clip-path:polygon(0 20%,100% 20%,100% 20%,0 20%)}9%{clip-path:polygon(0 40%,100% 40%,100% 40%,0 40%)}11%{clip-path:polygon(0 52%,100% 52%,100% 59%,0 59%)}13%{clip-path:polygon(0 60%,100% 60%,100% 60%,0 60%)}15%{clip-path:polygon(0 75%,100% 75%,100% 75%,0 75%)}17%{clip-path:polygon(0 65%,100% 65%,100% 40%,0 40%)}19%{clip-path:polygon(0 45%,100% 45%,100% 50%,0 50%)}20%{clip-path:polygon(0 14%,100% 14%,100% 33%,0 33%)}21.9%{opacity:1;transform:translate3d(calc(-1 * var(--gap-horizontal)),0,0)}22%,to{opacity:0;transform:translateZ(0);clip-path:polygon(0 0,0 0,0 0,0 0)}}@keyframes glitch-anim-3{0%{opacity:1;transform:translate3d(0,calc(-1 * var(--gap-vertical)),0) scale3d(-1,-1,1);clip-path:polygon(0 1%,100% 1%,100% 3%,0 3%)}1.5%{clip-path:polygon(0 10%,100% 10%,100% 9%,0 9%)}2%{clip-path:polygon(0 5%,100% 5%,100% 6%,0 6%)}2.5%{clip-path:polygon(0 20%,100% 20%,100% 20%,0 20%)}3%{clip-path:polygon(0 10%,100% 10%,100% 10%,0 10%)}5%{clip-path:polygon(0 30%,100% 30%,100% 25%,0 25%)}5.5%{clip-path:polygon(0 15%,100% 15%,100% 16%,0 16%)}7%{clip-path:polygon(0 40%,100% 40%,100% 39%,0 39%)}8%{clip-path:polygon(0 20%,100% 20%,100% 21%,0 21%)}9%{clip-path:polygon(0 60%,100% 60%,100% 55%,0 55%)}10.5%{clip-path:polygon(0 30%,100% 30%,100% 31%,0 31%)}11%{clip-path:polygon(0 70%,100% 70%,100% 69%,0 69%)}13%{clip-path:polygon(0 40%,100% 40%,100% 41%,0 41%)}14%{clip-path:polygon(0 80%,100% 80%,100% 75%,0 75%)}14.5%{clip-path:polygon(0 50%,100% 50%,100% 51%,0 51%)}15%{clip-path:polygon(0 90%,100% 90%,100% 90%,0 90%)}16%{clip-path:polygon(0 60%,100% 60%,100% 60%,0 60%)}18%{clip-path:polygon(0 100%,100% 100%,100% 99%,0 99%)}20%{clip-path:polygon(0 70%,100% 70%,100% 71%,0 71%)}21.9%{opacity:1;transform:translate3d(0,calc(-1 * var(--gap-vertical)),0) scale3d(-1,-1,1)}22%,to{opacity:0;transform:translateZ(0);clip-path:polygon(0 0,0 0,0 0,0 0)}}@keyframes glitch-anim-text{0%{transform:translate3d(calc(-1 * var(--gap-horizontal)),0,0) scale3d(-1,-1,1);clip-path:polygon(0 20%,100% 20%,100% 21%,0 21%)}2%{clip-path:polygon(0 33%,100% 33%,100% 33%,0 33%)}4%{clip-path:polygon(0 44%,100% 44%,100% 44%,0 44%)}5%{clip-path:polygon(0 50%,100% 50%,100% 20%,0 20%)}6%{clip-path:polygon(0 70%,100% 70%,100% 70%,0 70%)}7%{clip-path:polygon(0 80%,100% 80%,100% 80%,0 80%)}8%{clip-path:polygon(0 50%,100% 50%,100% 55%,0 55%)}9%{clip-path:polygon(0 70%,100% 70%,100% 80%,0 80%)}9.9%{transform:translate3d(calc(-1 * var(--gap-horizontal)),0,0) scale3d(-1,-1,1)}10%,to{transform:translateZ(0) scaleZ(1);clip-path:polygon(0 0,100% 0,100% 100%,0% 100%)}}@keyframes glitch-anim-flash{0%,5%{opacity:.2;transform:translate3d(var(--gap-horizontal),var(--gap-vertical),0)}5.5%,to{opacity:0;transform:translateZ(0)}}@keyframes glitch-anim-tear{0%{opacity:.7;transform:translate3d(-3vw,0,0);clip-path:polygon(0 12%,100% 12%,100% 17%,0 17%)}4%{opacity:.85;transform:translate3d(2vw,0,0);clip-path:polygon(0 53%,100% 53%,100% 61%,0 61%)}8%{opacity:.65;transform:translate3d(-1.5vw,0,0);clip-path:polygon(0 28%,100% 28%,100% 34%,0 34%)}12%{opacity:.8;transform:translate3d(1vw,0,0);clip-path:polygon(0 76%,100% 76%,100% 79%,0 79%)}15%{opacity:.55;transform:translate3d(-.5vw,0,0);clip-path:polygon(0 44%,100% 44%,100% 46%,0 46%)}16%,to{opacity:0;transform:translateZ(0);clip-path:polygon(0 0,0 0,0 0,0 0)}}@keyframes scanline-flicker{0%,to{opacity:.07}34%{opacity:.09}35%{opacity:.04}36%{opacity:.08}71%{opacity:.06}72%{opacity:.1}73%{opacity:.07}}@keyframes terminal-cursor{50%{opacity:0}}@media(prefers-reduced-motion:reduce){.glitch__img:nth-child(n+2),.glitch__container:after,.greeting__container,.greeting__cursor,.glitch-page:after,.signal-break__code:after{animation:none}.signal-break{display:none}body.signal-break--active .glitch__container,body.signal-break--active .greeting__container{filter:none}}
