body{color:#fff;background-color:#0a0a0a;font-family:Inter,Noto Sans JP,Hiragino Sans,Yu Gothic,sans-serif}a{transition:opacity .2s}a:hover{opacity:.8}.desktop-header-nav{display:none}.language-toggle{color:#e2e8f0eb;letter-spacing:0;background:0 0;border:0;border-radius:0;align-items:center;gap:.38rem;min-width:0;height:2.2rem;margin:0;padding:0 .2rem;font-family:Inter,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;transition:opacity .2s,color .2s;display:inline-flex;position:relative;overflow:hidden}.language-toggle:before{pointer-events:none;content:"";opacity:.64;transform-origin:0;background:linear-gradient(90deg,#7dd3fc94,#8fb4ff47,#0000);height:1px;transition:opacity .2s,transform .24s cubic-bezier(.22,1,.36,1);position:absolute;bottom:.3rem;left:.2rem;right:.2rem;transform:scaleX(.78)}.language-toggle:after{pointer-events:none;content:"";opacity:.74;background:#020617db;border:1px solid #bfdbfe9e;width:.24rem;height:.24rem;transition:border-color .2s,box-shadow .2s;position:absolute;bottom:.15rem;left:.2rem}.language-toggle:hover{color:#f8fafcfa}.language-toggle:hover:before{opacity:.92;transform:scaleX(1)}.language-toggle:hover:after{border-color:#e0f2fee0;box-shadow:0 0 10px #7dd3fc38}.language-toggle__label{color:#94a3b894;font-size:.66rem;font-weight:650}.language-toggle__value{color:#f8fafcf5;min-width:1.35rem;font-size:.76rem;font-weight:750}.language-toggle__next{color:#7dd3fc94;opacity:0;white-space:nowrap;max-width:0;font-size:.66rem;font-weight:650;transition:max-width .24s cubic-bezier(.22,1,.36,1),opacity .2s,transform .24s cubic-bezier(.22,1,.36,1);overflow:hidden;transform:translate(-.2rem)}.language-toggle:hover .language-toggle__next{opacity:1;max-width:2.3rem;transform:translate(0)}.language-toggle:focus-visible{outline-offset:4px;outline:1px solid #8fb4ff9e}.mobile-line-menu-button{width:2.75rem;height:2.75rem;box-shadow:none;color:#e2e8f0eb;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:.28rem;transition:color .2s,transform .2s;display:inline-flex}.mobile-line-menu-button span{background:currentColor;border-radius:999px;height:1.5px;transition:opacity .2s,transform .24s,width .2s,box-shadow .2s;display:block;box-shadow:0 0 10px #8fb4ff24}.mobile-line-menu-button span:first-child{width:1.25rem}.mobile-line-menu-button span:nth-child(2){width:1.55rem}.mobile-line-menu-button span:nth-child(3){width:.92rem}.mobile-line-menu-button:hover,.mobile-line-menu-button.is-open{color:#bfdbfefa}.mobile-line-menu-button:hover span,.mobile-line-menu-button.is-open span{box-shadow:0 0 13px #8fb4ff47}.mobile-line-menu-button.is-open span:first-child{width:1.45rem;transform:translateY(5.6px)rotate(45deg)}.mobile-line-menu-button.is-open span:nth-child(2){opacity:0}.mobile-line-menu-button.is-open span:nth-child(3){width:1.45rem;transform:translateY(-5.6px)rotate(-45deg)}.mobile-line-backdrop{-webkit-backdrop-filter:blur(14px)saturate(1.04);backdrop-filter:blur(14px)saturate(1.04);background:linear-gradient(115deg,#0e749014,#0000 28%),linear-gradient(245deg,#6366f114,#0000 36%),linear-gradient(#000000db,#020617f0)}.mobile-line-backdrop:before{pointer-events:none;content:"";opacity:.28;background-image:linear-gradient(#7dd3fc0e 1px,#0000 1px),linear-gradient(90deg,#93c5fd0a 1px,#0000 1px),radial-gradient(circle,#e2e8f02e 0 1px,#0000 1.4px);background-position:0 0,0 0,0 0;background-size:44px 44px,44px 44px,132px 132px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#000,#000 68%,#0000 92%);mask-image:linear-gradient(90deg,#000,#000 68%,#0000 92%)}.mobile-line-backdrop:after{pointer-events:none;content:"";opacity:.34;background:linear-gradient(128deg,#0000 0 18%,#7dd3fc1f 18.1% 18.35%,#0000 18.45% 44%,#818cf814 44.1% 44.3%,#0000 44.45%),linear-gradient(32deg,#0000 0 56%,#e2e8f014 56.1% 56.25%,#0000 56.35%),repeating-linear-gradient(#ffffff03 0 1px,#0000 1px 8px);position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#000 0% 58%,#0000 90%);mask-image:linear-gradient(90deg,#000 0% 58%,#0000 90%)}.mobile-line-sidebar{-webkit-backdrop-filter:blur(30px)saturate(1.1);backdrop-filter:blur(30px)saturate(1.1);background:linear-gradient(90deg,#7dd3fc0e,#0000 24%),linear-gradient(#030712f4,#020617fc);border-left:1px solid #94a3b824;transition:transform .34s cubic-bezier(.22,1,.36,1);overflow:hidden;transform:translate(105%);box-shadow:-34px 0 96px #0000007a,-12px 0 44px #0f172a47,inset 1px 0 #ffffff09,inset 14px 0 32px #0e74900e}.mobile-line-sidebar.is-open{transform:translate(0)}.mobile-line-sidebar:before{pointer-events:none;content:"";opacity:.34;background-image:linear-gradient(#7dd3fc0f 1px,#0000 1px),linear-gradient(90deg,#93c5fd0b 1px,#0000 1px),repeating-linear-gradient(135deg,#0000 0 21px,#e2e8f009 21px 22px,#0000 22px 54px);background-position:0 0,0 0,0 0;background-size:38px 38px,38px 38px,100% 100%;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0% 64%,#0000 94%);mask-image:linear-gradient(#000 0% 64%,#0000 94%)}.mobile-line-sidebar:after{pointer-events:none;content:"";opacity:.42;background:linear-gradient(#0000 0%,#7dd3fc66 22%,#818cf83d 48%,#0000 78%) 0 0/1px 100% no-repeat,linear-gradient(90deg,#e2e8f01c,#0000 16%) 0 6.5rem/100% 1px no-repeat,linear-gradient(90deg,#7dd3fc17,#0000 28%) 0 calc(100% - 5.6rem)/100% 1px no-repeat,repeating-linear-gradient(#ffffff03 0 1px,#0000 1px 7px);position:absolute;inset:0}.mobile-line-sidebar-nav{filter:drop-shadow(0 0 18px #0e749033)}.mobile-line-sidebar-nav a:focus-visible{outline-offset:7px;outline:1px solid #8fb4ff85}@media (prefers-reduced-motion:reduce){.language-toggle,.language-toggle:before,.language-toggle:after,.language-toggle__next,.mobile-line-menu-button,.mobile-line-menu-button span,.mobile-line-sidebar{transition:none}}@media (width>=1024px) and (hover:hover) and (pointer:fine){.desktop-header-nav{display:flex}.mobile-line-menu-button,.mobile-line-overlay{display:none}}.project-terminal-shell{animation:none}.skill-timeline-fill{background:linear-gradient(#67e8f985,#93c5fd66,#818cf852);height:0;animation:28s linear infinite skill-timeline-fill;box-shadow:0 0 14px #7dd3fc47}.skill-timeline-gradient{filter:drop-shadow(0 0 10px #7dd3fc75);opacity:.85;background:linear-gradient(#0000,#67e8f92e,#7dd3fc9e,#93c5fd38,#0000);border-radius:999px;height:4rem;animation:28s linear infinite skill-timeline-gradient;top:-2rem}.project-terminal-shell:before{pointer-events:none;content:"";opacity:.28;background-image:radial-gradient(circle at 12% 22%,#e2e8f03d 0 1px,#0000 1.5px),radial-gradient(circle at 28% 72%,#94a3b833 0 1px,#0000 1.5px),radial-gradient(circle at 72% 34%,#7dd3fc29 0 1px,#0000 1.5px),radial-gradient(circle at 88% 68%,#94a3b833 0 1px,#0000 1.5px);background-position:0 0,0 0,0 0,0 0,0 0,0 0;background-size:210px 180px,260px 220px,240px 190px,280px 230px;animation:none;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000,#000 18% 82%,#0000);mask-image:linear-gradient(#0000,#000 18% 82%,#0000)}.project-terminal-shell:after{pointer-events:none;content:"";background:linear-gradient(90deg,#0000,#e2e8f06b,#94a3b861,#0000);height:1px;position:absolute;top:0;left:14%;right:14%;box-shadow:0 0 24px #94a3b838,0 0 42px #082f493d}.project-editor-workspace{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(115deg,#7dd3fc09,#0000 36%),linear-gradient(#0f172abd,#02061794);border:1px solid #94a3b824;border-radius:8px;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff08,0 22px 72px -58px #38bdf8b3}.project-editor-workspace:after{pointer-events:none;content:"";border-radius:inherit;border:1px solid #ffffff07;position:absolute;inset:0}.project-editor-tabs-shell{background:0 0;border:0;border-radius:0;position:relative;overflow:hidden}.project-editor-tabs-shell:before{pointer-events:none;content:"";opacity:.34;background:repeating-linear-gradient(90deg,#ffffff03 0 1px,#0000 1px 26px),linear-gradient(90deg,#7dd3fc0f,#0000 26%,#818cf80b);position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0%,#0000 82%);mask-image:linear-gradient(#000 0%,#0000 82%)}.project-editor-tabs-titlebar{background:#0206175c;border-bottom:1px solid #94a3b81f;align-items:center;gap:.65rem;padding:.58rem .75rem;font-family:Inter,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;display:flex;position:relative}.project-editor-tabs-controls{align-items:center;gap:.36rem;display:flex}.project-editor-tabs-controls span{background:#64748b94;border-radius:50%;width:.56rem;height:.56rem;box-shadow:0 0 10px #94a3b814}.project-editor-tabs-controls span:nth-child(2){background:#7dd3fc80}.project-editor-tabs-controls span:nth-child(3){background:#818cf880}.project-editor-tabs-title{color:#94a3b8b8;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.72rem;font-weight:650;overflow:hidden}.project-editor-tabs{scrollbar-width:thin;scrollbar-color:#7dd3fc3d transparent;background:#02061742;border-bottom:1px solid #7dd3fc1f;margin:0;padding:0;list-style:none;display:flex;position:relative;overflow-x:auto}.project-editor-tabs li{flex:none;display:flex}.project-editor-tabs::-webkit-scrollbar{height:.35rem}.project-editor-tabs::-webkit-scrollbar-thumb{background:#7dd3fc38;border-radius:999px}.project-editor-tab{color:#94a3b8db;text-align:left;background:#0f172a52;border:0;border-right:1px solid #94a3b81f;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:.48rem;min-width:10.25rem;max-width:13.5rem;padding:.72rem .72rem .68rem;font-family:Inter,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;transition:background-color .18s,color .18s;display:inline-grid;position:relative}.project-editor-tab:before{pointer-events:none;content:"";opacity:0;background:linear-gradient(90deg,#0000,#7dd3fca8,#0000);height:1px;transition:opacity .18s;position:absolute;top:0;left:.65rem;right:.65rem}.project-editor-tab:after{pointer-events:none;content:"";opacity:0;background:#020617e6;height:1px;position:absolute;bottom:-1px;left:0;right:0}.project-editor-tab:hover{color:#e2e8f0f5;background:#1e293b6b}.project-editor-tab[data-active=true]{color:#f8fafcfa;background:linear-gradient(#7dd3fc12,#0000 42%),#020617ad}.project-editor-tab[data-active=true]:before,.project-editor-tab[data-active=true]:after{opacity:1}.project-editor-tab:focus-visible{z-index:1;outline-offset:-2px;outline:1px solid #8fb4ff9e}.project-editor-tab__icon{color:#7dd3fcc7;place-items:center;width:1.1rem;height:1.1rem;font-size:.86rem;display:grid}.project-editor-tab__icon svg{width:1rem;height:1rem}.project-editor-tab__name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.75rem;font-weight:700;overflow:hidden}.project-editor-tab__count{color:#64748bdb;font-size:.66rem;font-weight:700}.project-editor-tab__close{color:#64748bc2;opacity:0;border-radius:3px;place-items:center;width:1rem;height:1rem;font-size:.88rem;line-height:1;transition:background-color .18s,color .18s,opacity .18s;display:grid}.project-editor-tab:hover .project-editor-tab__close,.project-editor-tab[data-active=true] .project-editor-tab__close{opacity:1}.project-editor-tab:hover .project-editor-tab__close{color:#e2e8f0db;background:#94a3b81a}.project-editor-tabs-status{color:#cbd5e1c7;background:linear-gradient(90deg,#0e749047,#1e293b5c),#0206179e;flex-wrap:wrap;align-items:center;gap:.35rem 1rem;padding:.48rem .75rem;font-family:Inter,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.68rem;font-weight:650;display:flex;position:relative}.project-editor-content{background:radial-gradient(circle at 100% 0,#38bdf80e,#0000 32%),linear-gradient(#0206179e,#02061752);gap:.9rem;padding:.9rem;display:grid;position:relative}.project-editor-content:before{pointer-events:none;content:"";opacity:.6;background:repeating-linear-gradient(#ffffff03 0 1px,#0000 1px 9px),linear-gradient(90deg,#7dd3fc0b,#0000 18%);position:absolute;inset:0}.project-editor-file-panel{background:linear-gradient(#ffffff06,#0000 4rem),#0000001f;border:1px solid #7dd3fc18;border-radius:3px;box-shadow:inset 0 1px #ffffff06}.project-section-icon{color:#bfdbfebd;flex-shrink:0;place-items:center;width:1.25rem;height:1.25rem;display:grid}.project-section-icon svg{width:1rem;height:1rem}.project-editor-file-body{position:relative}.project-file-list{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;border-radius:0;overflow:hidden}.project-file-list__header{color:#64748be6;letter-spacing:.16em;text-transform:uppercase;background:linear-gradient(90deg,#0f172a85,#0206173d),#ffffff05;border-bottom:1px solid #7dd3fc1a;grid-template-columns:4.2rem 5.7rem minmax(0,1.08fr) 8.4rem minmax(0,1fr) 2rem;padding:.55rem 1rem;font-size:.62rem;font-weight:700}.project-file-list__rows{padding:0;display:grid}.project-process-row{isolation:isolate;box-shadow:none;background:linear-gradient(90deg,#0f172a38,#0000 72%),#ffffff03;border:0;border-bottom:1px solid #7dd3fc13;border-radius:0;overflow:hidden}.project-process-row:last-child{border-bottom:0}.project-process-row:after{pointer-events:none;content:"";opacity:.58;background:linear-gradient(#0000,#64748b3d,#0000);width:1px;position:absolute;top:.8rem;bottom:.8rem;left:4.35rem}.project-process-row:nth-child(2n){background:linear-gradient(90deg,#0f172a2e,#0000 72%),#ffffff02}.project-process-pid{color:#7dd3fccc;font-variant-numeric:tabular-nums}.project-process-state{color:#94a3b8b8}.project-process-row:hover .project-process-state{color:#7dd3fcdb}.project-process-repo{color:#64748beb}.project-process-kind{color:#94a3b8db}.project-process-kind svg{color:#7dd3fc99}.project-process-output{color:#94a3b8c7}.project-process-tags span{color:#7dd3fc8f}@media (width<=639px){.project-process-row:after{display:none}}.project-terminal-body{isolation:isolate;background:linear-gradient(145deg,#ffffff06,#0000 34%),linear-gradient(#00000014,#0000004d);box-shadow:inset 0 1px #ffffff07,inset 0 0 48px #0000005c}.project-terminal-body:before{z-index:-1;pointer-events:none;content:"";opacity:.07;background:repeating-linear-gradient(#ffffff04 0 1px,#0000 1px 7px);position:absolute;inset:0}.project-terminal-body:after{z-index:-1;pointer-events:none;content:"";opacity:.62;background:linear-gradient(112deg,#0000 12%,#ffffff0b 28%,#94a3b805 39%,#0000 56%);position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#0000 5%,#000 28% 76%,#0000);mask-image:linear-gradient(90deg,#0000 5%,#000 28% 76%,#0000)}.project-libra-constellation{opacity:0;filter:drop-shadow(0 0 7px #94a3b81f);animation:7.2s ease-out 3.4s both project-libra-constellation-in}.project-libra-line{opacity:0;stroke-dasharray:260;stroke-dashoffset:260px;animation:2.4s ease-out both project-libra-line-in}.project-libra-line:first-of-type{animation-delay:3.7s}.project-libra-line:nth-of-type(2){animation-delay:5.2s}.project-libra-line:nth-of-type(3){animation-delay:7s}.project-libra-line:nth-of-type(4){animation-delay:8.8s}.project-libra-line:nth-of-type(5){animation-delay:9.4s}.project-libra-stars circle{fill:currentColor;opacity:0;transform-box:fill-box;transform-origin:50%;animation:1.1s ease-out 3.6s both project-libra-star-in,3.8s ease-in-out 5.4s infinite project-libra-twinkle}.project-libra-stars circle:nth-child(2){animation-delay:4.5s,6.1s}.project-libra-stars circle:nth-child(3){animation-delay:5.6s,7.2s}.project-libra-stars circle:nth-child(4){animation-delay:6.6s,8.2s}.project-libra-stars circle:nth-child(5),.project-libra-stars circle:nth-child(6){animation-delay:7.7s,9.2s}@keyframes project-terminal-float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes skill-timeline-fill{0%{height:0}to{height:100%}}@keyframes skill-timeline-gradient{0%{top:-2rem}to{top:calc(100% - 2rem)}}@keyframes project-terminal-stardust{0%{background-position:0 0,0 0,0 0}to{background-position:38px -24px,-34px 28px,24px 34px,-28px -18px}}@keyframes project-libra-constellation-in{0%{opacity:0}42%{opacity:.04}to{opacity:.11}}@keyframes project-libra-line-in{0%{opacity:0;stroke-dashoffset:260px}to{opacity:.26;stroke-dashoffset:0}}@keyframes project-libra-star-in{0%{opacity:0;transform:scale(.45)}to{opacity:.32;transform:scale(1)}}@keyframes project-libra-twinkle{0%,to{opacity:.16;transform:scale(.86)}50%{opacity:.38;transform:scale(1.08)}}@keyframes project-terminal-line-in{0%{opacity:0;filter:blur(2px);transform:translateY(6px)}to{opacity:1;filter:blur();transform:translateY(0)}}@keyframes project-terminal-type{0%{width:0}to{width:100%}}@keyframes project-terminal-caret{0%,30%,64%,92%{border-color:#7dd3fcd9}31%,63%,65%,to{border-color:#0000}}@keyframes project-terminal-error-shake{0%,to{text-shadow:0 0 14px #fb718524;transform:translate(0)}20%{text-shadow:-1px 0 10px #fb71856b;transform:translate(-1px)}40%{text-shadow:1px 0 12px #f43f5e57;transform:translate(1px)}60%{text-shadow:-1px 0 8px #fb718561;transform:translate(-.5px)}80%{text-shadow:1px 0 10px #fb71853d;transform:translate(.5px)}}.project-terminal-row{animation:.24s ease-out both project-terminal-line-in}.project-terminal-command{vertical-align:bottom;white-space:nowrap;border-right:.12em solid #7dd3fcd9;max-width:max-content;animation:.82s steps(32,end) both project-terminal-type,.92s step-end both project-terminal-caret;display:inline-block;overflow:hidden}.project-terminal-error{width:fit-content;animation:.18s ease-out both project-terminal-line-in,.18s linear 3 project-terminal-error-shake;display:block}.stack-project-link-scan{animation:2.8s ease-in-out infinite stack-project-link-scan}.stack-project-link-cursor{animation:1.05s step-end infinite stack-project-link-cursor}.stack-project-link:hover .stack-project-link-scan{animation-duration:1.15s}@keyframes stack-project-link-scan{0%,18%{opacity:0;transform:translate(-100%)}38%{opacity:.9}68%,to{opacity:0;transform:translate(220%)}}@keyframes stack-project-link-cursor{0%,45%{opacity:.9}46%,to{opacity:.22}}@media (prefers-reduced-motion:reduce){.project-terminal-shell,.project-terminal-shell:before,.project-libra-stars circle,.project-terminal-row,.project-terminal-command,.project-terminal-error{opacity:1;filter:none;border-right-color:#0000;width:auto;animation:none;transform:none}.stack-project-link-scan,.stack-project-link-cursor{opacity:1;animation:none;transform:none}.project-libra-constellation{opacity:.11}.project-libra-line{opacity:.26;stroke-dashoffset:0}.project-libra-stars circle{opacity:.32}}
