@keyframes fadeIn{to{opacity:1}}@keyframes slideUp{to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{to{opacity:1;transform:translate(0)}}@keyframes slideInRight{to{opacity:1;transform:translate(0)}}@keyframes scaleIn{to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}:root{--color-bg-primary:#0d0d0d;--color-bg-secondary:#151515;--color-bg-tertiary:#1c1c1c;--color-sidebar-bg:#000;--color-text-primary:#f5f5f5;--color-text-secondary:#a0a0a0;--color-text-muted:#5c5c5c;--color-accent:#e0e0e0;--color-accent-hover:#fff;--color-success:#4ade80;--color-error:#f87171;--color-warning:#fbbf24;--color-border:#2a2a2a;--font-family-primary:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;--font-family-mono:JetBrains Mono,Fira Code,monospace;--color-hover:hsla(0,0%,100%,.06);--color-active:hsla(0,0%,100%,.1);--factorio-enabled:0;--factorio-glow:rgba(255,157,0,0)}[data-theme=light]{--color-bg-primary:#fafafa;--color-bg-secondary:#fff;--color-bg-tertiary:#f0f0f0;--color-sidebar-bg:#f5f5f5;--color-text-primary:#0d0d0d;--color-text-secondary:#525252;--color-text-muted:#9a9a9a;--color-accent:#0d0d0d;--color-accent-hover:#333;--color-success:#16a34a;--color-error:#dc2626;--color-warning:#d97706;--color-border:#e0e0e0;--color-hover:rgba(0,0,0,.04);--color-active:rgba(0,0,0,.08)}[data-theme=factorio]{--color-bg-primary:#1a1510;--color-bg-secondary:#231c14;--color-bg-tertiary:#2d251b;--color-sidebar-bg:#0f0c08;--color-text-primary:#f5e6d3;--color-text-secondary:#c4a882;--color-text-muted:#8b7355;--color-accent:#ff9d00;--color-accent-hover:#ffb340;--color-success:#7cb342;--color-error:#e53935;--color-warning:#ff9d00;--color-border:#3d3226;--color-hover:rgba(255,157,0,.08);--color-active:rgba(255,157,0,.15);--factorio-enabled:1;--factorio-glow:rgba(255,157,0,.15)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{background-color:var(--color-bg-primary);color:var(--color-text-primary);font-family:var(--font-family-primary);font-size:1rem;line-height:1.5;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}body::-webkit-scrollbar{height:8px;width:8px}body::-webkit-scrollbar-track{background:transparent}body::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:9999px}body::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}a{color:var(--color-accent);text-decoration:none;transition:color .15s ease}a:hover{color:var(--color-accent-hover)}img{display:block;height:auto;max-width:100%}button,input,select,textarea{font-family:inherit}ol,ul{list-style:none}.visually-hidden{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border:0;white-space:nowrap}.container{margin:0 auto;max-width:1280px;padding:0 1rem;width:100%}@media(min-width:1024px){.container{padding:0 2rem}}.animate-fade-in{animation:fadeIn .4s ease-out 0s forwards;opacity:0}.animate-slide-up{animation:slideUp .5s ease-out 0s forwards;opacity:0;transform:translateY(20px)}.animate-slide-left{animation:slideInLeft .4s ease-out 0s forwards;opacity:0;transform:translate(-20px)}.animate-slide-right{animation:slideInRight .4s ease-out 0s forwards;opacity:0;transform:translate(20px)}.animate-scale-in{animation:scaleIn .3s ease-out 0s forwards;opacity:0;transform:scale(.95)}.animate-stagger:first-child{animation-delay:.05s}.animate-stagger:nth-child(2){animation-delay:.1s}.animate-stagger:nth-child(3){animation-delay:.15s}.animate-stagger:nth-child(4){animation-delay:.2s}.animate-stagger:nth-child(5){animation-delay:.25s}.animate-stagger:nth-child(6){animation-delay:.3s}.animate-stagger:nth-child(7){animation-delay:.35s}.animate-stagger:nth-child(8){animation-delay:.4s}.animate-stagger:nth-child(9){animation-delay:.45s}.animate-stagger:nth-child(10){animation-delay:.5s}.animate-stagger:nth-child(11){animation-delay:.55s}.animate-stagger:nth-child(12){animation-delay:.6s}.animate-stagger:nth-child(13){animation-delay:.65s}.animate-stagger:nth-child(14){animation-delay:.7s}.animate-stagger:nth-child(15){animation-delay:.75s}.animate-stagger:nth-child(16){animation-delay:.8s}.animate-stagger:nth-child(17){animation-delay:.85s}.animate-stagger:nth-child(18){animation-delay:.9s}.animate-stagger:nth-child(19){animation-delay:.95s}.animate-stagger:nth-child(20){animation-delay:1s}.page-enter-active,.page-leave-active{transition:opacity .3s ease,transform .3s ease}.page-enter-from{opacity:0;transform:translateY(10px)}.page-leave-to{opacity:0;transform:translateY(-10px)}.list-enter-active,.list-leave-active{transition:all .4s ease}.list-enter-from{opacity:0;transform:translate(-20px)}.list-leave-to{opacity:0;transform:translate(20px)}.list-move{transition:transform .4s ease}.page-slide-enter-active,.page-slide-leave-active{transition:all .5s cubic-bezier(.4,0,.2,1)}.page-slide-enter-from{filter:blur(4px);opacity:0;transform:translate(100%) scale(.95)}.page-slide-leave-to{filter:blur(4px);opacity:0;transform:translate(-100%) scale(.95)}.page-diagonal-enter-active,.page-diagonal-leave-active{transition:all .6s cubic-bezier(.4,0,.2,1)}.page-diagonal-enter-from{clip-path:polygon(100% 0,100% 0,100% 100%,100% 100%);opacity:0;transform:translate(30px)}.page-diagonal-enter-to,.page-diagonal-leave-from{clip-path:polygon(0 0,100% 0,100% 100%,0 100%);opacity:1;transform:translate(0)}.page-diagonal-leave-to{clip-path:polygon(0 0,0 0,0 100%,0 100%);opacity:0;transform:translate(-30px)}.page-zoom-enter-active,.page-zoom-leave-active{transition:all .45s cubic-bezier(.4,0,.2,1)}.page-zoom-enter-from{filter:blur(8px);opacity:0;transform:scale(.92)}.page-zoom-leave-to{filter:blur(8px);opacity:0;transform:scale(1.05)}.page-morph-enter-active,.page-morph-leave-active{transition:all .55s cubic-bezier(.4,0,.2,1)}.page-morph-enter-from{border-radius:50%;opacity:0;transform:scale(0);transform-origin:top right}.page-morph-enter-to,.page-morph-leave-from{border-radius:0;opacity:1;transform:scale(1)}.page-morph-leave-to{border-radius:50%;opacity:0;transform:scale(0);transform-origin:bottom left}@keyframes fadeIn-fa2224e3{to{opacity:1}}@keyframes slideUp-fa2224e3{to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft-fa2224e3{to{opacity:1;transform:translate(0)}}@keyframes slideInRight-fa2224e3{to{opacity:1;transform:translate(0)}}@keyframes scaleIn-fa2224e3{to{opacity:1;transform:scale(1)}}@keyframes pulse-fa2224e3{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer-fa2224e3{0%{background-position:-200% 0}to{background-position:200% 0}}.error-page[data-v-fa2224e3]{background:#0a0a0a;height:100vh;overflow:hidden;position:relative;width:100vw}.error-page__particles[data-v-fa2224e3]{inset:0;pointer-events:none;position:absolute;z-index:1}.error-page__particle[data-v-fa2224e3]{animation:particleFloat-fa2224e3 var(--duration) ease-in-out var(--delay) infinite;background:#ffffff26;border-radius:50%;height:var(--size);left:var(--x);opacity:0;position:absolute;top:var(--y);width:var(--size)}.error-page--loaded .error-page__particle[data-v-fa2224e3]{opacity:1;transition:opacity 2s ease}.error-page__scanlines[data-v-fa2224e3]{background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.03) 0,rgba(0,0,0,.03) 4px);inset:0;opacity:0;pointer-events:none;position:absolute;transition:opacity 1.5s ease 1s;z-index:50}.error-page--loaded .error-page__scanlines[data-v-fa2224e3]{opacity:1}.error-page__split[data-v-fa2224e3]{display:flex;height:100%;position:relative;width:100%;z-index:10}.error-page__left[data-v-fa2224e3]{align-items:center;display:flex;flex:1;justify-content:center;overflow:hidden;padding:3rem;position:relative}@media(max-width:767px){.error-page__left[data-v-fa2224e3]{padding:1.5rem}}.error-page__big-code[data-v-fa2224e3]{align-items:center;display:flex;inset:0;justify-content:center;overflow:hidden;pointer-events:none;position:absolute;z-index:1}.error-page__big-code-text[data-v-fa2224e3]{color:transparent;font-size:clamp(10rem,22vw,22rem);font-weight:900;-webkit-text-stroke:1px hsla(0,0%,100%,.04);letter-spacing:-.02em;opacity:0;transform:scale(1.2);transition:all 1.2s cubic-bezier(.16,1,.3,1) .3s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.error-page--loaded .error-page__big-code-text[data-v-fa2224e3]{opacity:1;transform:scale(1)}.error-page__content[data-v-fa2224e3]{display:flex;flex-direction:column;gap:1.5rem;max-width:500px;position:relative;z-index:5}.error-page__glitch-badge[data-v-fa2224e3]{align-items:center;background:#ffffff0f;border:1px solid hsla(0,0%,100%,.1);border-radius:9999px;color:#fff9;display:inline-flex;font-family:JetBrains Mono,Fira Code,monospace;font-size:.75rem;font-weight:600;gap:.5rem;letter-spacing:.15em;opacity:0;padding:6px 14px;text-transform:uppercase;transform:translateY(-10px);transition:all .6s cubic-bezier(.16,1,.3,1) .5s;width:-moz-fit-content;width:fit-content}.error-page--loaded .error-page__glitch-badge[data-v-fa2224e3]{opacity:1;transform:translateY(0)}.error-page__glitch-badge-dot[data-v-fa2224e3]{animation:pulseDot-fa2224e3 2s ease-in-out infinite;background:#f87171;border-radius:50%;height:6px;width:6px}.error-page__title[data-v-fa2224e3]{color:#f5f5f5;font-size:clamp(1.75rem,4vw,3.2rem);font-weight:900;letter-spacing:-.02em;line-height:1.1;opacity:0;position:relative;text-transform:uppercase;transform:translateY(30px);transition:all .8s cubic-bezier(.16,1,.3,1) .7s}.error-page--loaded .error-page__title[data-v-fa2224e3]{opacity:1;transform:translateY(0)}.error-page__title[data-v-fa2224e3]:after,.error-page__title[data-v-fa2224e3]:before{content:attr(data-text);height:100%;left:0;opacity:0;position:absolute;top:0;width:100%}.error-page__title[data-v-fa2224e3]:before{animation:glitchText1-fa2224e3 4s ease-in-out infinite;clip-path:inset(0 0 60% 0);color:#ff6b6b}.error-page__title[data-v-fa2224e3]:after{animation:glitchText2-fa2224e3 4s ease-in-out infinite;clip-path:inset(60% 0 0 0);color:#4ecdc4}.error-page__description[data-v-fa2224e3]{color:#ffffff73;font-size:1rem;line-height:1.75;max-width:420px;opacity:0;transform:translateY(20px);transition:all .7s cubic-bezier(.16,1,.3,1) .9s}.error-page--loaded .error-page__description[data-v-fa2224e3]{opacity:1;transform:translateY(0)}.error-page__btn[data-v-fa2224e3]{align-items:center;background:transparent;border:none;border-radius:.75rem;cursor:pointer;display:inline-flex;opacity:0;overflow:hidden;padding:0;position:relative;transform:translateY(20px);transition:all .7s cubic-bezier(.16,1,.3,1) 1.1s;width:-moz-fit-content;width:fit-content}.error-page--loaded .error-page__btn[data-v-fa2224e3]{opacity:1;transform:translateY(0)}.error-page__btn:hover .error-page__btn-bg[data-v-fa2224e3]{opacity:1;transform:scaleX(1)}.error-page__btn:hover .error-page__btn-text[data-v-fa2224e3]{color:#0a0a0a}.error-page__btn[data-v-fa2224e3]:active{transform:scale(.97) translateY(0)}.error-page__btn-bg[data-v-fa2224e3]{background:#f5f5f5;border-radius:.75rem;inset:0;opacity:0;position:absolute;transform:scaleX(0);transform-origin:left;transition:all .4s cubic-bezier(.16,1,.3,1)}.error-page__btn-text[data-v-fa2224e3]{align-items:center;border:1.5px solid hsla(0,0%,100%,.2);border-radius:.75rem;color:#f5f5f5;display:inline-flex;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1rem;font-weight:600;gap:.5rem;padding:14px 28px;position:relative;transition:color .3s ease,border-color .3s ease;z-index:1}.error-page__btn:hover .error-page__btn-text[data-v-fa2224e3]{border-color:transparent}.error-page__right[data-v-fa2224e3]{align-items:center;display:flex;flex:1;justify-content:center;opacity:0;overflow:hidden;position:relative;transform:translate(60px);transition:all 1s cubic-bezier(.16,1,.3,1) .6s}.error-page--loaded .error-page__right[data-v-fa2224e3]{opacity:1;transform:translate(0)}@media(max-width:767px){.error-page__right[data-v-fa2224e3]{display:none}}.error-page__image-glow[data-v-fa2224e3]{animation:glowPulse-fa2224e3 4s ease-in-out infinite;background:radial-gradient(circle,hsla(0,0%,100%,.05) 0,transparent 70%);border-radius:50%;filter:blur(40px);height:70%;position:absolute;width:70%}.error-page__image[data-v-fa2224e3]{filter:grayscale(20%) contrast(1.1);height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center top;object-position:center top;position:relative;transition:filter .5s ease;width:100%}.error-page__image[data-v-fa2224e3]:hover{filter:grayscale(0) contrast(1.15) brightness(1.05)}.error-page__image-overlay[data-v-fa2224e3]{background:linear-gradient(90deg,#0a0a0a 0,hsla(0,0%,4%,.6) 15%,transparent 40%,transparent);inset:0;pointer-events:none;position:absolute}@keyframes particleFloat-fa2224e3{0%,to{opacity:.2;transform:translate(0) scale(1)}25%{opacity:.5;transform:translate(10px,-20px) scale(1.2)}50%{opacity:.3;transform:translate(-5px,-40px) scale(.8)}75%{opacity:.4;transform:translate(15px,-20px) scale(1.1)}}@keyframes pulseDot-fa2224e3{0%,to{box-shadow:0 0 #f8727266;opacity:1}50%{box-shadow:0 0 0 6px #f8727200;opacity:.6}}@keyframes glitchText1-fa2224e3{0%,90%,to{opacity:0;transform:translate(0)}92%{opacity:.7;transform:translate(-3px,-2px)}94%{opacity:0;transform:translate(3px,2px)}96%{opacity:.5;transform:translate(-2px,1px)}98%{opacity:0;transform:translate(0)}}@keyframes glitchText2-fa2224e3{0%,88%,to{opacity:0;transform:translate(0)}90%{opacity:.6;transform:translate(3px,2px)}93%{opacity:0;transform:translate(-3px,-1px)}95%{opacity:.4;transform:translate(2px,-2px)}97%{opacity:0;transform:translate(0)}}@keyframes glowPulse-fa2224e3{0%,to{opacity:.5;transform:scale(1)}50%{opacity:.8;transform:scale(1.15)}}
