@import"https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.min.css";html,body,#root{margin:0;min-height:100%}.portal,.portal *{box-sizing:border-box}.portal{--portal-ink: #eff1e8;--portal-muted: #99aaa5;--portal-lime: #d2e4a7;min-height:100svh;overflow:hidden;position:relative;isolation:isolate;color:var(--portal-ink);background:#0b1415;font:15px/1.5 Pretendard,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased}.portal:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 15% 20%,#25413a38,transparent 45%),radial-gradient(ellipse at 87% 64%,#29393a44,transparent 42%)}.portal a{color:inherit;text-decoration:none}.portal button{font:inherit}.portal a:focus-visible,.portal button:focus-visible{outline:2px solid var(--portal-lime);outline-offset:6px}.portal-header{max-width:1480px;margin:0 auto;padding:28px 48px;display:flex;align-items:center;justify-content:space-between;gap:24px}.portal-brand{display:inline-flex;align-items:center;gap:10px;font-size:23px;font-weight:630;letter-spacing:-1px}.portal-brand-mark{width:28px;height:28px;color:var(--portal-lime)}.portal-brand-mark svg{width:100%;height:100%}.portal-brand-dot{color:var(--portal-lime);margin-left:-9px}.portal-header nav{display:flex;align-items:center;gap:32px;font-size:13px;color:#b0bcb6}.portal-header nav a:hover{color:#fff}.portal-header .portal-work-link{border:1px solid #b7c4b92b;padding:10px 17px;border-radius:99px;color:var(--portal-ink)}.portal-work-link span{margin-left:16px;color:var(--portal-lime)}.portal-intro{text-align:center;position:relative;z-index:2;padding:30px 24px 0}.portal-eyebrow{font:10px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:2px;color:#b6c49f;display:flex;align-items:center;justify-content:center;gap:9px}.portal-eyebrow>span{height:5px;width:5px;background:var(--portal-lime);border-radius:50%}.portal-intro h1{margin:16px 0 12px;font-size:clamp(32px,3.4vw,51px);line-height:1.24;letter-spacing:-2.2px;font-weight:530}.portal-intro h1 span{color:#c3d6af}.portal-intro p{margin:0;color:var(--portal-muted);font-size:14px;font-weight:360;line-height:1.9}.portal-mobile-break{display:none}.portal-universe{position:relative;width:min(1220px,calc(100% - 80px));height:clamp(520px,61vh,660px);margin:-6px auto 0}.portal-connections{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.portal-wire{opacity:.55;transition:opacity .3s}.portal-wire path{stroke:var(--space-color);stroke-width:1;vector-effect:non-scaling-stroke;opacity:.5;transition:opacity .3s,stroke-width .3s}.portal-wire.is-active{opacity:1}.portal-wire.is-active path{opacity:.9;stroke-width:1.5}.portal-wire.is-muted{opacity:.18}.portal-signal{fill:var(--space-color);opacity:.9}.portal[data-motion=still] .portal-signal{display:none}.portal-orbit{border:1px solid #aebfb50a;position:absolute;top:49%;left:50%;width:69%;height:78%;border-radius:50%;transform:translate(-50%,-50%) rotate(-17deg);pointer-events:none}.portal-orbit-inner{width:45%;height:55%;transform:translate(-50%,-50%) rotate(23deg);border-style:dashed;border-color:#aebfb50e}.portal-center{position:absolute;left:50%;top:49%;transform:translate(-50%,-50%);width:256px;text-align:center;z-index:1;padding:22px 10px;background:radial-gradient(ellipse closest-side,#162221 60%,#16222100)}.portal-center-overline{font:8px/1.5 ui-monospace,Consolas,monospace;letter-spacing:2px;color:#a5b495}.portal-core{display:grid;place-items:center;margin:18px auto 15px;width:82px;height:82px;border:1px solid #d2e4a74d;border-radius:26px;background:linear-gradient(140deg,#d2e4a7,#aabf8a);color:#18291f;transform:rotate(-8deg);position:relative}.portal-core:before{content:"";position:absolute;inset:-9px;border:1px solid #d2e4a724;border-radius:33px}.portal-core svg{width:44px;height:44px;transform:rotate(8deg)}.portal-center h2{font-size:23px;letter-spacing:-.85px;margin:0 0 6px;font-weight:650}.portal-center h2 span{font-weight:350;color:#b8c7ab}.portal-center-caption{font-size:11px;color:#879b90}.portal-core-coordinate{display:block;margin-top:19px;font:8px/1 ui-monospace,Consolas,monospace;letter-spacing:3px;color:#637f71}.portal-node{position:absolute;left:var(--node-x);top:var(--node-y);transform:translate(-50%,-50%);z-index:2;width:214px;padding:22px 24px 17px;background:linear-gradient(132deg,#1b2928,#152120 65%);border:1px solid #c9d4cc29;border-radius:20px;transition:border-color .25s,background .25s;-webkit-tap-highlight-color:transparent}.portal-node.is-active{border-color:var(--space-color);background:linear-gradient(132deg,#263631,#1c2b28 70%)}.portal-node-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.portal-node-icon{display:inline-flex;width:30px;height:30px;color:var(--space-color)}.portal-node-icon svg{width:100%;height:100%}.portal-node-arrow{color:#8a9d91;font-size:19px;line-height:1;transition:transform .25s,color .25s}.portal-node.is-active .portal-node-arrow{color:var(--space-color);transform:translate(2px,-2px)}.portal-node-kind{color:#819589;font:8px/1.4 ui-monospace,Consolas,monospace;letter-spacing:1px}.portal-node h3{margin:4px 0 6px;font-size:28px;line-height:1.2;letter-spacing:-.65px;font-weight:580}.portal-node p{font-size:12px;color:#c6d0c6;margin:0 0 4px;font-weight:370}.portal-node-detail{display:block;color:#80978a;font-size:10px}.portal-node-domain{display:block;margin-top:17px;padding-top:12px;border-top:1px solid #bfcec01a;font:9px/1.5 ui-monospace,Consolas,monospace;letter-spacing:-.2px;color:var(--space-color)}.portal-node-domain>span{color:#8a9e92}.portal-map-label{position:absolute;left:0;bottom:15px;color:#5c7368;font:8px/1.5 ui-monospace,Consolas,monospace;letter-spacing:1.1px}.portal-map-label span{color:#8ba18d}.portal-speck{position:absolute;pointer-events:none;width:3px;height:3px;border-radius:50%;background:#bfd0b6;opacity:.35}.portal-speck-a{top:18%;left:50%}.portal-speck-b{top:73%;left:43%;width:2px;height:2px}.portal-speck-c{top:54%;left:91%;opacity:.2}.portal-footer{width:min(1384px,calc(100% - 96px));margin:0 auto;padding:20px 0 25px;border-top:1px solid #a7bba71f;display:flex;align-items:center;justify-content:space-between;gap:24px;color:#7b9384;font-size:11px}.portal-footer-note{display:flex;align-items:center;gap:10px;color:#afc0ac}.portal-small-dot{width:5px;height:5px;border-radius:50%;background:#b8cc9b}.portal-motion{display:inline-flex;align-items:center;gap:8px;background:transparent;border:1px solid #9faf9d30;padding:7px 11px;border-radius:8px;color:#a9bca9;cursor:pointer;font-size:10px!important}.portal-motion:hover{border-color:#c4d9a876;color:#e4eddf}.portal-motion:disabled{cursor:default;opacity:.6}.portal-skip{position:absolute;top:-60px;left:24px;z-index:20;background:#d2e4a7;color:#132318!important;padding:10px 16px;border-radius:5px}.portal-skip:focus{top:16px}.portal-loading{padding:20vh 24px;text-align:center;color:#d2e4a7;background:#0b1415;min-height:100svh;font-family:sans-serif}@media(min-width:1500px){.portal-intro{padding-top:45px}.portal-universe{height:min(65vh,720px)}}@media(min-width:851px)and (max-height:820px){.portal-header{padding-block:18px}.portal-intro{padding-top:6px}.portal-intro h1{font-size:36px;margin-block:12px 8px}.portal-intro p{font-size:12px}.portal-universe{height:max(400px,calc(100svh - 264px));margin-top:4px}.portal-node{padding:17px 22px 13px}.portal-node-top{margin-bottom:10px}.portal-node-icon{width:25px;height:25px}.portal-node h3{font-size:25px}.portal-node-domain{margin-top:11px;padding-top:9px}.portal-center{padding-block:12px}.portal-core{width:68px;height:68px;border-radius:22px;margin-block:14px 12px}.portal-core:before{border-radius:29px;inset:-7px}.portal-core-coordinate{margin-top:12px}.portal-footer{padding-block:14px}.portal-map-label{bottom:3px}}@media(max-width:850px){.portal-header{padding:24px}.portal-header nav{gap:22px}.portal-universe{width:calc(100% - 40px);height:570px}.portal-node{width:186px;padding:18px}.portal-center{width:224px}.portal-center h2{font-size:21px}.portal-footer{width:calc(100% - 48px)}.portal-hint{display:none}}@media(max-width:719px){.portal-header{padding:22px 20px}.portal-brand{font-size:21px}.portal-header nav>a:not(.portal-work-link){display:none}.portal-header .portal-work-link{font-size:11px;padding:8px 12px}.portal-work-link span{margin-left:9px}.portal-intro{padding-top:29px}.portal-intro h1{font-size:35px;letter-spacing:-1.6px;line-height:1.3;margin:14px 0 12px}.portal-intro p{font-size:12px}.portal-eyebrow{font-size:8px;letter-spacing:1.3px}.portal-mobile-break{display:initial}.portal-universe{width:calc(100% - 32px);height:600px;margin:6px auto 0}.portal-node{left:var(--mobile-x);top:var(--mobile-y);width:min(42%,186px);padding:16px 16px 12px;border-radius:16px}.portal-node-top{margin-bottom:13px}.portal-node-icon{width:26px;height:26px}.portal-node h3{font-size:25px}.portal-node-kind{font-size:7px;letter-spacing:.7px}.portal-node p{font-size:11px}.portal-node-detail{font-size:9px}.portal-node-domain{font-size:8px;margin-top:12px;padding-top:9px;letter-spacing:-.4px}.portal-center{width:218px;padding:15px 0}.portal-center-overline{font-size:7px}.portal-core{width:65px;height:65px;border-radius:20px;margin:17px auto 13px}.portal-core:before{border-radius:27px;inset:-7px}.portal-core svg{width:37px;height:37px}.portal-center h2{font-size:21px}.portal-center-caption{font-size:10px}.portal-core-coordinate,.portal-map-label{display:none}.portal-orbit-outer{width:91%;height:67%}.portal-orbit-inner{width:53%;height:34%}.portal-footer{width:calc(100% - 40px);padding-top:19px;padding-bottom:26px;gap:12px;flex-wrap:wrap}.portal-footer-note{font-size:10px}.portal-speck-a{top:40%;left:91%}}@media(max-width:719px){.portal-universe{height:720px}}@media(max-width:360px){.portal-header{padding-inline:16px}.portal-brand{font-size:18px}.portal-node{padding:14px 12px 11px}.portal-node-domain{font-size:7px}.portal-node-kind{font-size:6px}.portal-node-detail{font-size:8px}.portal-node h3{font-size:23px}.portal-intro h1{font-size:32px}.portal-footer-note{font-size:9px}}@media(prefers-reduced-motion:reduce){.portal *,.portal *:before,.portal *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.portal-account{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:16px;max-width:1384px;margin:0 auto;padding:0 48px;color:var(--portal-muted);font-size:12px}.portal-account label{display:flex;align-items:center;gap:8px}.portal-account button,.portal-login{border:1px solid #a7bba740;background:#d2e4a710;color:var(--portal-ink);padding:8px 14px;border-radius:8px;cursor:pointer}.portal-universe{margin-bottom:130px}@media(max-width:719px){.portal-account{justify-content:center;padding:0 20px}.portal-universe{margin-bottom:250px}.portal-node-learn{width:190px}}
