@charset "utf-8";
:root{--bg:#090d13;--surface:#111720;--surface-raised:#151e29;--line:#26313e;--text:#edf2f7;--muted:#8695a6;--blue:#68d6fa;--blue-dark:#162c39;--error:#ffacb1;--success:#8ae0b9;font-family:Inter,"Pretendard","Noto Sans KR","Malgun Gothic",system-ui,sans-serif;color:var(--text);background:var(--bg);font-synthesis:none}
*{box-sizing:border-box}body{margin:0;font-size:14px;line-height:1.6}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(ellipse at 11% 45%,#11253666,transparent 53%),linear-gradient(90deg,#14202b18 1px,transparent 1px),linear-gradient(#14202b18 1px,transparent 1px);background-size:auto,68px 68px,68px 68px}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--blue);outline-offset:5px}a:hover{color:var(--blue)}[hidden]{display:none!important}.site-shell{min-height:100vh;max-width:1440px;margin:auto;padding:0 64px;display:flex;flex-direction:column}.site-header{height:104px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff0b;gap:16px}.brand{display:flex;align-items:center;gap:11px;white-space:nowrap}.brand>span:first-of-type{font-weight:850;font-size:26px;letter-spacing:-1.2px}.brand-colon{color:var(--blue)}.brand-divider{width:1px;height:16px;background:#34404e;margin:0 8px}.brand-description{font-size:12px;color:#9ca9b8;letter-spacing:-.2px}.header-label{font-size:10px;color:#8798aa;letter-spacing:1.4px;display:flex;gap:9px;align-items:center}.tiny-cross{color:var(--blue);font-size:22px;font-weight:300}main{flex:1;display:flex;align-items:center;justify-content:center}.site-footer{min-height:75px;border-top:1px solid #ffffff0b;display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:.8px;color:#718092;gap:18px}.site-footer>span:last-child{letter-spacing:.1px}.muted{color:var(--muted)}.status-dot{display:inline-block;width:5px;height:5px;background:var(--blue);border-radius:50%;vertical-align:middle;margin-right:6px}.login-layout{display:grid;grid-template-columns:minmax(0,1fr) 430px;width:100%;max-width:1130px;gap:100px;padding:64px 0 76px;align-items:center}.intro{max-width:510px}.eyebrow{font:500 10px/1.6 ui-monospace,Consolas,monospace;letter-spacing:1.7px;color:var(--blue)}.intro>.eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:24px}.line{width:25px;height:1px;background:var(--blue)}h1{font-size:54px;line-height:1.3;letter-spacing:-2.8px;font-weight:750;margin:0 0 20px}h1>span{color:#9eafbf}.intro-copy{font-size:15px;line-height:1.9;letter-spacing:-.3px;color:#95a5b6;margin:0 0 33px}.tactical{width:100%;max-width:480px;border-top:1px solid #2b4051;border-bottom:1px solid #243441;background:linear-gradient(90deg,#101b2455,#101b2411);margin:30px 0 27px}.tactical-top,.tactical-bottom{display:flex;align-items:center;justify-content:space-between;font:9px/1.5 ui-monospace,Consolas,monospace;letter-spacing:1px;color:#6e869a;padding:12px 12px 0;gap:12px}.tactical-bottom{padding:0 12px 12px;letter-spacing:.4px;font-size:9px}.tactical-bottom>span:last-child{font-family:inherit;color:#7f96a9}.squad-map{display:block;width:100%;height:auto;margin:0}.intro-note{display:flex;align-items:center;gap:13px}.outline-icon{color:#a3b9c9;width:30px;height:34px;border:1px solid #3a4b5a;border-radius:4px 4px 12px 12px;display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0}.intro-note p{margin:0;font-size:11px;color:#a7b6c4;line-height:1.8}.intro-note p>span{color:#6e8296}.auth-panel{background:linear-gradient(150deg,#151d28,#101720);padding:34px 35px 28px;border:1px solid #2a3543;border-radius:5px;box-shadow:0 24px 80px #0003;position:relative;width:100%}.auth-panel:before{content:"";position:absolute;top:-1px;left:35px;width:36px;height:2px;background:var(--blue)}.panel-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px;min-height:20px}.panel-top>.eyebrow{color:#8596a9;font-size:9px;letter-spacing:1.6px}.panel-corner{font-size:22px;font-weight:300;color:#4f6479}h2{font-size:25px;line-height:1.45;letter-spacing:-1px;margin:0 0 9px;font-weight:700}.panel-description{color:#8e9eaf;font-size:12px;margin:0 0 30px;letter-spacing:-.2px}.field{margin-bottom:19px}.field label{display:block;font-size:12px;font-weight:600;margin-bottom:8px;color:#c5cfd9}input,textarea{color:var(--text);width:100%;background:#0b121b;border:1px solid #2a3746;border-radius:3px;outline:0;transition:border-color .15s,box-shadow .15s}input{height:48px;padding:0 14px;font-size:12px}textarea{resize:vertical;min-height:105px;padding:13px 14px;font-size:12px;line-height:1.8;overflow-wrap:anywhere}input::placeholder,textarea::placeholder{color:#5f7286;opacity:1}input:focus,textarea:focus{border-color:#68d6fa;box-shadow:0 0 0 2px #68d6fa0a}.password-field{position:relative}.password-field input{padding-right:57px}.password-toggle{position:absolute;right:11px;top:12px;border:0;background:transparent;color:#98a8b8;font-size:10px;padding:3px 5px}.password-toggle:hover{color:var(--blue)}.form-utility{display:flex;justify-content:flex-end;margin:-3px 0 24px;color:#a1adbb;font-size:11px}.form-utility span{font-size:12px;margin-left:4px}.button{display:flex;align-items:center;justify-content:center;position:relative;width:100%;min-height:49px;gap:14px;font-weight:700;font-size:13px;letter-spacing:-.2px;border-radius:3px;transition:background .15s,transform .15s;border:1px solid transparent}.button>span{position:absolute;right:17px;font-size:19px;font-weight:400}.button.primary{color:#08202c;background:var(--blue);border-color:#83e1ff;box-shadow:0 3px 16px #29b9ea08}.button.primary:hover:not(:disabled){background:#8ee3ff}.button:active:not(:disabled){transform:translateY(1px)}.button.secondary{border-color:#3a5268;color:#c8d4df;background:#142330}.button.secondary:hover{background:#1a3041}.signup-prompt{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#8293a6;border-top:1px solid #293542;margin-top:29px;padding-top:24px;gap:12px}.signup-prompt a{color:#c3d7e4;font-weight:600}.signup-prompt a>span{margin-left:6px}.panel-footnote{display:flex;align-items:center;justify-content:center;gap:7px;color:#6f8296;font-size:10px;margin-top:29px}.mini-shield{color:#8ca7be;font-size:15px}.message{border:1px solid #475d6b;background:#172b38;color:#bedbea;border-radius:3px;padding:12px 13px;font-size:12px;margin-bottom:19px;line-height:1.8;overflow-wrap:anywhere}.message.error{color:var(--error);background:#2b1c25;border-color:#633443}.message.success{color:var(--success);background:#152a25;border-color:#2e574b}.success-state{text-align:center;padding:17px 0 12px}.success-mark{display:flex;justify-content:center;align-items:center;margin:0 auto 26px;width:54px;height:54px;border:1px solid #3d766c;background:#19332d;color:var(--success);font-size:23px;border-radius:50%}.success-state p{font-size:13px;margin:14px 0 22px}.success-state .button{margin-top:28px}.flow-layout{width:100%;max-width:1050px;display:grid;grid-template-columns:1fr 470px;gap:95px;align-items:start;padding:56px 0 66px}.flow-intro{padding:8px 0 0}.back-link{display:inline-flex;color:#93a4b5;font-size:12px;margin-bottom:52px;gap:8px}.flow-intro>.eyebrow{margin-bottom:20px}.flow-intro h1{font-size:42px;letter-spacing:-2px;line-height:1.35}.flow-intro>p{color:#8da0b2;font-size:14px;line-height:1.9}.step-guide{list-style:none;padding:0;margin:42px 0 36px}.step-guide>li{display:flex;gap:16px;color:#78899a;font-size:13px;position:relative;padding-bottom:30px}.step-guide>li:first-child:after{content:"";position:absolute;top:34px;left:15px;width:1px;height:32px;background:#283645}.step-guide>li>span{width:32px;height:32px;flex-shrink:0;border:1px solid #314354;background:#131d28;display:flex;align-items:center;justify-content:center;font:10px ui-monospace,monospace;border-radius:3px}.step-guide p{margin:3px 0 0;font-size:11px;color:#708298}.step-guide .active{color:#dbeaf5}.step-guide .active>span{background:#142e3d;color:var(--blue);border-color:#2c6984}.step-guide .done>span{background:#19352d;border-color:#3e6858;color:var(--success)}.flow-note{display:flex;gap:11px;border-top:1px solid #263340;padding-top:23px;color:#7890a4;font-size:11px;line-height:1.9}.flow-note>span{color:#7ab2ca;font-size:20px;line-height:1.6}.flow-note p{margin:0}.step-count{color:#c1d2df;font:12px ui-monospace,monospace}.step-count>span{color:#5f7285;font-size:10px}.step-progress{height:2px;background:#293746;margin-bottom:27px}.step-progress>span{display:block;width:50%;height:100%;background:var(--blue);transition:width .3s}.step-progress>span.complete{width:100%}.register-panel .panel-top{margin-bottom:17px}.register-panel h2{font-size:23px}.register-panel .panel-description{margin-bottom:24px}.link-help{font-size:11px;color:#8199ae;margin:-3px 0 23px}.link-help summary{cursor:pointer;color:#9bb6c9}.link-help p{padding:0 1px;line-height:1.9}code{font-size:11px;color:#b4d9e7}.info-note{display:flex;gap:10px;color:#8aa3b7;background:#14212e;padding:13px 14px;border:1px solid #23394b;font-size:11px;line-height:1.8;border-radius:3px;margin-bottom:23px}.info-note>span{color:var(--blue);font-family:monospace;font-weight:700;font-size:12px}.info-note p{margin:0}.subtle-note{font-size:10px;color:#71879a;text-align:center;margin:12px 0 0}.flow-panel-footer{display:flex;justify-content:center;gap:8px;font-size:11px;color:#7990a5;border-top:1px solid #293542;margin-top:25px;padding-top:22px}.flow-panel-footer a{color:#c3d7e4}.input-with-action{display:flex;gap:8px}.input-with-action input{min-width:0;flex:1}.check-button{flex-shrink:0;background:#1a2b3a;border:1px solid #344d62;color:#bfd2e0;border-radius:3px;font-size:11px;padding:0 13px}.check-button:hover:not(:disabled){background:#233d50;color:#e0f6ff}.field-feedback,.field-hint{font-size:10px;color:#768da1;margin:6px 0 0;line-height:1.6}.field-feedback:empty{display:none}.field-feedback.good{color:var(--success)}.field-feedback.bad{color:var(--error)}.verified-card{background:linear-gradient(120deg,#142c37,#14252f);border:1px solid #285064;border-radius:3px;padding:16px;margin-bottom:24px}.verified-heading{display:flex;justify-content:space-between;align-items:center;color:#92ddf5;font-size:10px;margin-bottom:13px}.text-button{background:none;border:0;border-bottom:1px solid #7e9eae;color:#90aabb;font-size:10px;padding:0}.verified-card>strong{font:700 21px/1.5 ui-sans-serif,system-ui,sans-serif;letter-spacing:.5px}.verified-identity{display:flex;gap:12px;align-items:center;margin-top:5px;font-size:12px;flex-wrap:wrap;overflow-wrap:anywhere}.verified-identity>.muted{font:10px ui-monospace,monospace}.verified-bottom{display:flex;justify-content:space-between;font-size:10px;color:#79a4b9;border-top:1px solid #2b4351;margin-top:15px;padding-top:10px;gap:10px}.register-panel .field{margin-bottom:17px}.register-panel .button{margin-top:25px}.password-layout .flow-note{margin-top:46px}.skip-link{position:fixed;top:-100px;left:16px;background:var(--blue);color:#071b28;padding:10px 20px;z-index:10}.skip-link:focus{top:12px}
@media(min-width:1440px){.site-shell{padding:0 80px}.login-layout{gap:140px;max-width:1170px}}
@media(max-width:1100px){.site-shell{padding:0 36px}.login-layout{gap:50px;grid-template-columns:minmax(0,1fr) 400px}.intro h1{font-size:44px}.flow-layout{gap:50px;grid-template-columns:1fr 440px}.flow-intro h1{font-size:37px}.auth-panel{padding:29px}.auth-panel:before{left:29px}}
@media(max-width:850px){.site-shell{padding:0 28px}.site-header{height:84px}.header-label{font-size:8px;letter-spacing:.7px}.brand-description,.brand-divider{display:none}.login-layout{grid-template-columns:1fr;gap:33px;padding:35px 0 45px;max-width:460px}.intro{max-width:460px}.intro>.eyebrow{margin-bottom:14px;font-size:9px}.intro h1{font-size:36px;line-height:1.3;letter-spacing:-1.8px;margin-bottom:13px}.intro h1 br{display:none}.intro h1 span{margin-left:8px}.intro-copy{font-size:12px;line-height:1.8;margin:0}.tactical,.intro-note{display:none}.auth-panel{padding:30px}.auth-panel:before{left:30px}.flow-layout{grid-template-columns:1fr;gap:24px;max-width:470px;padding:24px 0 40px}.flow-intro{padding:0}.back-link{margin-bottom:22px}.flow-intro>.eyebrow{margin-bottom:12px;font-size:9px}.flow-intro h1{font-size:32px;letter-spacing:-1.7px;margin-bottom:11px}.flow-intro h1 br{display:none}.flow-intro h1 span{margin-left:8px}.flow-intro>p{font-size:12px;margin:0}.flow-intro>p br{display:none}.step-guide,.flow-intro>.flow-note{display:none}.site-footer{font-size:9px;min-height:66px;letter-spacing:.3px}.panel-description{font-size:12px}.panel-top{margin-bottom:21px}}
@media(max-width:440px){.site-shell{padding:0 20px}.site-header{height:74px}.brand>span:first-of-type{font-size:24px}.brand img{width:27px;height:27px}.header-label{font-size:7px;letter-spacing:.3px}.header-label .tiny-cross{display:none}.intro h1{font-size:30px}.auth-panel{padding:27px 22px}.auth-panel:before{left:22px}h2{font-size:23px}.panel-footnote{font-size:9px;gap:5px}.site-footer{gap:10px;font-size:8px}.site-footer>span:last-child{font-size:9px}.flow-intro h1{font-size:28px}.register-panel h2{font-size:21px}.input-with-action{gap:6px}.check-button{font-size:10px;padding:0 10px}.field-feedback,.field-hint{font-size:10px}.verified-identity{gap:7px}.verified-bottom{font-size:9px}.flow-panel-footer{font-size:10px}.desktop-only{display:none}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.ownership-instructions{padding-left:20px;margin:0 0 24px;color:var(--muted);font-size:12px;line-height:1.9}.ownership-instructions li{margin-bottom:12px}.ownership-instructions a,.ownership-instructions strong{color:var(--text)}.ownership-instructions a{text-decoration:underline;text-underline-offset:3px}#ownership-code{font-family:ui-monospace,Consolas,monospace;font-size:12px;letter-spacing:.4px}

.message{white-space:pre-line;overflow-wrap:anywhere}
.brand>span.brand-name{font-size:clamp(17px,3vw,21px);font-weight:700;letter-spacing:-.7px}

/* The transparent NIKKE lettering is white on the site's dark surfaces. */
.brand img.brand-logo{width:64px;height:auto;aspect-ratio:1719/915;object-fit:contain;flex-shrink:0;filter:brightness(0) invert(1)}
.lobby-header .brand img.brand-logo,.admin-header .brand img.brand-logo{width:64px;height:auto}

