.login-root{--bg-0:rgb(6,3,19);--bg-1:rgb(2,0,13);--ink:rgb(241,240,255);--ink-dim:rgba(183,181,202,0.78);--ink-faint:rgba(183,181,202,0.45);--accent:rgb(213,154,255);--accent-2:rgb(0,223,232);--glass:rgba(26,23,44,0.35);--glass-stroke:rgba(221,218,247,0.14);--glass-stroke-hi:rgba(238,236,255,0.28);position:fixed;top:0;right:0;bottom:0;left:0;height:100dvh;background:#07040f;color:rgb(241,240,255);color:var(--ink);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif;overflow:hidden;-webkit-font-smoothing:antialiased}@supports (color:color(display-p3 0 0 0%)){.login-root{--bg-1:rgb(2,0,13);--accent:rgb(213,154,255);--accent-2:rgb(0,223,232);--glass-stroke-hi:rgba(238,236,255,0.28)}@media (color-gamut:p3){.login-root{--bg-1:color(display-p3 0.00558 0 0.04819);--accent:color(display-p3 0.80513 0.60692 0.9907);--accent-2:color(display-p3 0.39399 0.86 0.89905);--glass-stroke-hi:color(display-p3 0.9306 0.92473 1/0.28)}}}.login-root *,.login-root :after,.login-root :before{box-sizing:border-box}.login-root canvas.login-bg{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;z-index:0}.login-root .veil{z-index:1;background:radial-gradient(120% 80% at 50% 55%,transparent 40%,rgba(7,4,15,.55) 100%),linear-gradient(180deg,rgba(7,4,15,.35),transparent 18%,transparent 82%,rgba(7,4,15,.5))}.login-root .grain,.login-root .veil{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none}.login-root .grain{z-index:2;opacity:.06;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 0.6 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}.login-root .shell{position:relative;z-index:3;height:100%;display:grid;grid-template-rows:auto 1fr auto;padding:28px 36px}.login-root .top{display:flex;align-items:center;justify-content:space-between;font-size:13px;color:var(--ink-dim);letter-spacing:.02em}.login-root .brand{display:flex;align-items:center;gap:10px;color:var(--ink);white-space:nowrap;flex-shrink:0}.login-root .brand-mark{width:22px;height:22px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#fff 0,transparent 40%),conic-gradient(from 210deg,rgb(213,154,255),rgb(0,223,232),rgb(213,154,255));box-shadow:0 0 18px rgba(213,154,255,.55),inset 0 0 8px rgba(0,0,0,.4)}@media (color-gamut:p3){.login-root .brand-mark{background:radial-gradient(circle at 35% 35%,#fff 0,transparent 40%),conic-gradient(from 210deg,color(display-p3 .80513 .60692 .9907),color(display-p3 .39399 .86 .89905),color(display-p3 .80513 .60692 .9907));box-shadow:0 0 18px color(display-p3 .80513 .60692 .9907/.55),inset 0 0 8px rgba(0,0,0,.4)}}.login-root .brand-name{font-family:"Instrument Serif",serif;font-size:20px;letter-spacing:.01em;white-space:nowrap}.login-root .nav-tagline{margin-left:auto;font-family:JetBrains Mono,monospace;font-size:11.5px;letter-spacing:.32em;color:rgba(208,203,246,.78);text-transform:uppercase;display:flex;align-items:center;gap:8px}.login-root .nav-tagline span:not(.status-sep){text-shadow:0 0 14px rgba(213,154,255,.45)}@media (color-gamut:p3){.login-root .nav-tagline span:not(.status-sep){text-shadow:0 0 14px color(display-p3 .80513 .60692 .9907/.45)}}.login-root .status-sep{opacity:.45;margin:0 4px}.login-root .stage{display:grid;grid-template-columns:1fr minmax(380px,440px);grid-gap:48px;gap:48px;align-items:center;max-width:1200px;width:100%;margin:0 auto}.login-root .hero{max-width:720px;align-self:center}.login-root .eyebrow-wide{font-family:JetBrains Mono,monospace;font-size:11px;letter-spacing:.36em;color:rgba(220,174,255,.85);text-transform:uppercase;margin-bottom:18px;text-shadow:0 0 18px rgba(213,154,255,.5);white-space:nowrap;display:flex;align-items:center;gap:10px}@media (color-gamut:p3){.login-root .eyebrow-wide{color:color(display-p3 .84175 .67892 1/.85);text-shadow:0 0 18px color(display-p3 .80513 .60692 .9907/.5)}}.login-root .eyebrow-wide:before{content:"";width:28px;height:1px;background:linear-gradient(90deg,transparent,var(--ink-faint))}.login-root .title-block{display:inline-block}.login-root .brand-title{display:inline-block;font-family:"Noto Serif KR","Instrument Serif",serif;font-weight:500;font-size:max(32px,min(4.2vw,60px));line-height:1.1;letter-spacing:-.045em;margin:0 0 18px;color:var(--ink);white-space:nowrap;text-shadow:0 0 40px rgba(213,154,255,.55),0 0 90px rgba(213,154,255,.35);background:linear-gradient(180deg,rgb(249,247,255),rgb(231,202,255) 60%,rgb(204,159,255));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}@media (color-gamut:p3){.login-root .brand-title{text-shadow:0 0 40px color(display-p3 .80513 .60692 .9907/.55),0 0 90px color(display-p3 .80513 .60692 .9907/.35);background:linear-gradient(180deg,color(display-p3 .97642 .96794 1),color(display-p3 .8932 .78919 1) 60%,color(display-p3 .77897 .6206 1))}}.login-root .brand-sub{font-family:JetBrains Mono,monospace;font-weight:500;font-size:12.5px;letter-spacing:.32em;color:rgba(208,203,246,.78);text-transform:uppercase;margin:0;text-align:center;text-shadow:0 0 14px rgba(213,154,255,.4)}@media (color-gamut:p3){.login-root .brand-sub{text-shadow:0 0 14px color(display-p3 .80513 .60692 .9907/.4)}}.login-root .login-wrap{display:block;opacity:0;transform:translateY(8px);transition:opacity .6s ease,transform .6s cubic-bezier(.22,.95,.28,1.08)}.login-root .login-wrap.show{opacity:1;transform:translateY(0)}.login-root .card{position:relative;padding:36px 32px 28px;border-radius:18px;background:var(--glass);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);border:1px solid var(--glass-stroke);box-shadow:0 40px 80px -30px rgba(0,0,0,.6),inset 0 1px 0 var(--glass-stroke-hi);overflow:hidden}.login-root .card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(80% 50% at 20% 0,rgba(213,154,255,.18),transparent 60%),radial-gradient(70% 50% at 100% 100%,rgba(0,223,232,.12),transparent 60%)}@media (color-gamut:p3){.login-root .card:before{background:radial-gradient(80% 50% at 20% 0,color(display-p3 .80513 .60692 .9907/.18),transparent 60%),radial-gradient(70% 50% at 100% 100%,color(display-p3 .39399 .86 .89905/.12),transparent 60%)}}.login-root .card>*{position:relative;z-index:1}.login-root .card h2{font-family:"Instrument Serif",serif;font-weight:400;font-size:28px;margin:0 0 6px;letter-spacing:.005em;color:var(--ink)}.login-root .card .hint{color:var(--ink-dim);font-size:13px;margin:0 0 28px}.login-root .login-form{display:flex;flex-direction:column;gap:18px}.login-root .login-field{display:block;margin:0}.login-root .login-field>label{display:flex;justify-content:space-between;align-items:baseline;font-family:JetBrains Mono,monospace;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-dim);margin-bottom:6px}.login-root .login-input{position:relative}.login-root .login-input input{width:100%;background:rgba(3,2,12,.55);border:1px solid rgba(221,218,247,.12);color:var(--ink);padding:13px 40px 13px 14px;border-radius:10px;font:inherit;font-size:14.5px;outline:none;transition:border-color .2s,box-shadow .2s,background .2s}.login-root .login-input input::-moz-placeholder{color:rgba(183,181,202,.38)}.login-root .login-input input::placeholder{color:rgba(183,181,202,.38)}.login-root .login-input input:focus{border-color:rgba(213,154,255,.6);background:rgba(6,3,19,.65);box-shadow:0 0 0 4px rgba(213,154,255,.12)}@media (color-gamut:p3){.login-root .login-input input:focus{border-color:color(display-p3 .80513 .60692 .9907/.6);box-shadow:0 0 0 4px color(display-p3 .80513 .60692 .9907/.12)}}.login-root .login-input input:disabled{opacity:.7;cursor:not-allowed}.login-root .login-input .toggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;background:transparent;border:0;color:var(--ink-faint);border-radius:8px;cursor:pointer;transition:color .15s ease,background .15s ease}.login-root .login-input .toggle:hover{color:var(--ink);background:rgba(221,218,247,.06)}.login-root .login-input .toggle:focus-visible{outline:2px solid rgba(213,154,255,.6);outline-offset:2px}@media (color-gamut:p3){.login-root .login-input .toggle:focus-visible{outline:2px solid color(display-p3 .80513 .60692 .9907/.6)}}.login-root .login-input .toggle:disabled{opacity:.4;cursor:not-allowed}.login-root .login-submit{width:100%;margin-top:6px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;cursor:pointer;padding:13px 18px;border-radius:10px;font:inherit;font-size:14px;font-weight:500;letter-spacing:.01em;color:#0a0416;background:linear-gradient(180deg,rgb(235,211,255),rgb(204,159,255));box-shadow:0 10px 30px -8px rgba(204,159,255,.55),inset 0 1px 0 rgba(255,255,255,.4),inset 0 -1px 0 rgba(0,0,0,.15);transition:transform .15s ease,box-shadow .2s ease,filter .2s;position:relative}@media (color-gamut:p3){.login-root .login-submit{background:linear-gradient(180deg,color(display-p3 .91063 .82502 1),color(display-p3 .77897 .6206 1));box-shadow:0 10px 30px -8px color(display-p3 .77897 .6206 1/.55),inset 0 1px 0 rgba(255,255,255,.4),inset 0 -1px 0 rgba(0,0,0,.15)}}.login-root .login-submit:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-1px)}.login-root .login-submit:active:not(:disabled){transform:translateY(0)}.login-root .login-submit:focus-visible{outline:2px solid rgba(213,154,255,.6);outline-offset:3px}@media (color-gamut:p3){.login-root .login-submit:focus-visible{outline:2px solid color(display-p3 .80513 .60692 .9907/.6)}}.login-root .login-submit:disabled{cursor:progress;opacity:.85;transform:none}.login-root .login-submit.is-loading{color:rgb(22,18,39);animation:btnPulse 1.2s ease-in-out infinite}.login-root .login-submit.is-loading:after{content:"";position:absolute;right:18px;top:50%;width:14px;height:14px;margin-top:-7px;border-radius:50%;border:2px solid rgba(22,18,39,.25);border-top-color:rgb(22,18,39);animation:btnSpin .7s linear infinite}@keyframes btnPulse{0%,to{filter:brightness(1)}50%{filter:brightness(1.12)}}@keyframes btnSpin{to{transform:rotate(1turn)}}.login-root .login-forgot{margin:8px 0 0;text-align:center;color:var(--ink-dim);font-size:12.5px}.login-root .login-forgot a{color:var(--ink);-webkit-text-decoration:none;text-decoration:none;border-bottom:1px solid rgba(221,218,247,.2);transition:border-color .2s}.login-root .login-forgot a:hover{border-bottom-color:rgba(221,218,247,.5)}.login-root .bottom{display:flex;justify-content:space-between;align-items:center;color:var(--ink-faint);font-family:JetBrains Mono,monospace;font-size:11px;letter-spacing:.04em}.login-root .bottom .coords{display:flex;gap:18px}.login-root .shooting-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none;overflow:hidden}.login-root .shoot{position:absolute;top:20%;top:var(--sy,20%);left:50%;left:var(--sx,50%);width:220px;width:var(--len,220px);height:1.4px;transform-origin:left center;transform:rotate(20deg);transform:rotate(var(--ang,20deg));opacity:0;filter:drop-shadow(0 0 6px rgba(235,211,255,.6))}@media (color-gamut:p3){.login-root .shoot{filter:drop-shadow(0 0 6px color(display-p3 .91063 .82502 1/.6))}}.login-root .shoot:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:999px;background:linear-gradient(90deg,transparent,rgba(248,247,255,.15) 20%,rgba(235,237,255,.85) 70%,rgb(255,255,255))}@media (color-gamut:p3){.login-root .shoot:before{background:linear-gradient(90deg,transparent,color(display-p3 .97209 .96994 1/.15) 20%,color(display-p3 .92117 .92906 1/.85) 70%,rgb(255,255,255))}}.login-root .shoot:after{content:"";position:absolute;right:-3px;top:50%;transform:translateY(-50%);width:6px;height:6px;border-radius:50%;background:#fff;box-shadow:0 0 10px #fff,0 0 22px rgba(235,211,255,.9),0 0 40px rgba(168,210,255,.55)}@media (color-gamut:p3){.login-root .shoot:after{box-shadow:0 0 10px #fff,0 0 22px color(display-p3 .91063 .82502 1/.9),0 0 40px color(display-p3 .6803 .82065 1/.55)}}.login-root .shoot.run{animation:shoot-fly 8s cubic-bezier(.22,.61,.36,1) forwards;animation:shoot-fly var(--dur,8s) cubic-bezier(.22,.61,.36,1) forwards}@keyframes shoot-fly{0%{opacity:0;transform:rotate(20deg) translateX(-20%) scaleX(.4);transform:rotate(var(--ang,20deg)) translateX(-20%) scaleX(.4)}8%{opacity:1}80%{opacity:1}to{opacity:0;transform:rotate(20deg) translateX(120vw) scaleX(1);transform:rotate(var(--ang,20deg)) translateX(var(--dist,120vw)) scaleX(1)}}.login-root .login-toast{position:fixed;bottom:80px;left:50%;transform:translateX(-50%) translateY(20px);padding:12px 22px 12px 44px;background:rgba(16,15,34,.85);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);border:1px solid rgba(255,148,149,.45);border-radius:12px;font-size:13px;font-weight:500;color:rgb(255,218,217);z-index:10;opacity:0;transition:transform .4s cubic-bezier(.22,.95,.3,1.2),opacity .3s;pointer-events:none;box-shadow:0 14px 36px rgba(0,0,0,.55),inset 0 1px 0 rgba(221,218,247,.18)}@media (color-gamut:p3){.login-root .login-toast{border:1px solid color(display-p3 .99143 .56583 .56322/.45);color:color(display-p3 1 .85115 .84317)}}.login-root .login-toast:before{content:"!";position:absolute;left:14px;top:50%;transform:translateY(-50%);width:20px;height:20px;border-radius:50%;background:rgb(255,148,149);color:rgb(16,15,34);font-weight:800;font-size:13px;display:flex;align-items:center;justify-content:center}@media (color-gamut:p3){.login-root .login-toast:before{background:color(display-p3 .99143 .56583 .56322)}}.login-root .login-toast.show{transform:translateX(-50%) translateY(0);opacity:1}@media (max-width:880px){.login-root .shell{padding:20px}.login-root .nav-tagline{display:none}.login-root .stage{grid-template-columns:1fr;gap:28px}.login-root .hero{text-align:left}.login-root .brand-title{white-space:normal}.login-root .login-toast{bottom:24px;left:16px;right:16px;transform:translateY(20px)}.login-root .login-toast.show{transform:translateY(0)}.login-root .login-toast:before{left:12px}}@media (prefers-reduced-motion:reduce){.login-root .login-forgot a,.login-root .login-input input,.login-root .login-submit,.login-root .login-toast,.login-root .login-wrap{transition:none!important}.login-root .login-submit.is-loading,.login-root .login-submit.is-loading:after,.login-root .shoot.run{animation:none!important}.login-root .shoot.run{opacity:0!important}}