/* ===================== */
/* login */
/* ===================== */
.content.login { display: flex; margin: 60px auto 0; justify-content: center; align-items: center; }
.login-wrap { width:100%; max-width:384px; border-radius:var(--radius-16); background-color: var(--gray-800); }

/* ---- 탭 ---- */
.login-wrap .tab-box ._tabs-main { display: flex; height: 58px; gap:0;}
.login-wrap .tab-box ._tabs-main::after {border-bottom: 1px solid var(--alpha-wt5);}
.login-wrap .tab-box ._tabs-main li { flex: 1; }
.login-wrap .tab-box ._tabs-main a {padding: 20px 0 14px; font-size: 16px; font-weight: 400;  letter-spacing: -0.64px; color: #E7E9EF; line-height: normal;}
.login-wrap .tab-box ._tabs-main .is-on a{font-weight: 700;}
.login-wrap .tab-box ._tabs-main .is-on a::after { background-color: var(--white); }

/* ---- 아이디 로그인 ---- */
.login-wrap #id-login { padding: 40px 20px 61px; }
.login-wrap #id-login .input-box { background-color: var(--gray-900); box-shadow:inset 0 0 0 1px #3F3F3F;}
.login-wrap #id-login .input-box:focus-within { box-shadow:inset 0 0 0 2px var(--white);}
.login-wrap #id-login .input-box:first-of-type { margin-bottom:8px; }
.login-wrap #id-login .input-box input { padding: 11px 44px 11px 14px; font-size: 16px; line-height: 24px; letter-spacing: -0.64px; background-color: var(--gray-900); color: var(--white); caret-color: var(--white); }
.login-wrap #id-login .input-box input::placeholder { font-size: 16px; line-height: 24px; letter-spacing: -0.64px; color: var(--gray-300); }
.login-wrap #id-login .input-box .util-box .ipt-mask.on {opacity:1; -webkit-mask: url(/static/images/icons/eye.svg); mask: url(/static/images/icons/eye.svg); background-color: var(--white);}
.login-wrap #id-login .input-box .util-box .ipt-mask.off {opacity:1; -webkit-mask: url(/static/images/icons/eye-off.svg); mask: url(/static/images/icons/eye-off.svg); background-color: var(--white);}
.login-wrap #id-login .auth-links { margin-top: 20px; }
.login-wrap #id-login .auth-links ul { display: flex; justify-content: center; list-style: none; padding: 0; margin: 0; align-items: center; }
.login-wrap #id-login .auth-links ul li { position: relative; padding: 0 12px; text-align: center; word-break: keep-all; white-space: nowrap;}
.login-wrap #id-login .auth-links ul li + li::before { content: ""; display: inline-block; width: 1px; height: 10px; background-color: var(--alpha-wt5); position: absolute; left: 0; top: 50%; transform: translateY(-50%); }
.login-wrap #id-login .auth-links a { font-size: 16px; line-height: 24px; letter-spacing: -0.64px; color: var(--gray-60); }
.login-wrap #id-login .input-box input:-webkit-autofill,
.login-wrap #id-login .input-box input:-webkit-autofill:hover,
.login-wrap #id-login .input-box input:-webkit-autofill:focus,
.login-wrap #id-login .input-box input:-webkit-autofill:active{
    padding: 10px 44px 10px 14px; -webkit-box-shadow: 0 0 0 1000px var(--gray-900) inset !important; -webkit-text-fill-color: var(--white) !important; border-radius: 10px; outline: 2px solid var(--gray-900); outline-offset: -1px; margin: 3px; caret-color: #fff;
    transition: background-color 5000s ease-in-out 0s, color 5000s ease-in-out 0s !important;
}

/* ----  페이북 로그인 ---- */
.login-wrap #paybook-login { padding: 72px 24px 48px; text-align: center; }
.login-wrap #paybook-login .login-btn { margin-top: 72px; }
.login-wrap #paybook-login .app-download { display: flex; justify-content: center; margin-top: 20.5px; font-size: 16px; line-height: 24px; letter-spacing: -0.64px; color: var(--gray-60); }
.login-wrap #paybook-login .app-download .download-link { margin-left: 8px; padding-bottom: 1px; border-bottom: 1px solid var(--white); font-size: 15px; line-height: 22.5px; letter-spacing: -0.6px; color: var(--white); }

/* ---- 로그인 문구, 버튼 ---- */
.login-wrap .login-desc span { font-size: 16px; line-height: 24px; letter-spacing: -0.64px; color: var(--gray-200); }
.login-wrap .login-btn { width:100%; margin-top: 20px; border: 1px solid var(--white); background-color: #1a1a1a; font-size: 18px; font-weight: 600; line-height: 27px; letter-spacing: -0.72px; color: var(--white); }
.login-wrap .login-btn:hover,
.login-wrap .login-btn:active{background-color: #2a2a2a;}
.login-wrap .login-btn:disabled{color: #555; border-color: #3f3f3f;}

@media screen and (max-width: 767px) { 
    /* ---- margin 간격 ---- */
    .content.login { margin: 20px auto 0; }
    footer.footer { margin-top: 120px; }
}

@media screen and (max-width: 340px) { 
    .login-wrap #id-login .auth-links ul li{padding: 0 8px; white-space: wrap;}
    .login-wrap #id-login .auth-links ul li a{font-size: 14px;}
}



/* ---- 페이북 앱으로 로그인 팝업 ---- */
#modalLoginPaybooc .inner { padding: 20px 32px 32px 32px; background-color: var(--gray-700); color: var(--white); }
#modalLoginPaybooc .btn-close { right: 32px; background: var(--white); -webkit-mask:url(/static/images/icons/x.svg) no-repeat center/24px auto; mask:url(/static/images/icons/x.svg) no-repeat center/24px auto; }
#modalLoginPaybooc .header { padding-bottom: 20px; margin-bottom: 0;}
#modalLoginPaybooc .header .title { color: var(--white);}
#modalLoginPaybooc .content { padding: 20px 0 16px; }
#modalLoginPaybooc .step-item + .step-item {margin-top: 16px;}
#modalLoginPaybooc .step-item .tit {display: flex; align-items: center;}
#modalLoginPaybooc .step-item .n {width: 29px;height: 29px; padding: 3px 11px; text-align: center; border-radius: 100px; background-color: var(--gray-900);}
#modalLoginPaybooc .step-item .tit strong {margin-left: 11px; font-size: 15px;font-weight: 600; line-height: 22.5px;letter-spacing: -0.6px;}
#modalLoginPaybooc .exp {display: flex; align-items: center; justify-content: center; margin: 8px 0 0 40px; padding:34.5px 0; background-color: var(--gray-900); border-radius: 20px;}
#modalLoginPaybooc .exp img{width: 88px; height: 88px;}
#modalLoginPaybooc .n1 .exp img {margin-left: 34px; max-width: 264px;}
#modalLoginPaybooc .n2 .exp { display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 18.5px 0; font-size: 14px; font-weight: 600; }
#modalLoginPaybooc .n2 .exp img{ width: 100%; max-width: 88px;}
#modalLoginPaybooc .n2 .or {margin: 0 20px; color: var(--gray-200);}
#modalLoginPaybooc .n2 .code-wrap { margin-top: 8px; font-size: 16px; font-weight: 600; line-height: 24px; letter-spacing: -0.64px; color: var(--white); }
#modalLoginPaybooc .timer {margin-top: 12px; font-size: 16px; font-weight: 600; line-height: 24px; letter-spacing: -0.64px; color: var(--white); display: flex; align-items: center; justify-content: center;}
#modalLoginPaybooc .timer .txt {margin-left: 3px;}
#modalLoginPaybooc .button-box .btn-confirm {background-color: var(--white); color: var(--gray-900);}

/* ---- 페이북 앱 다운로드 팝업 ---- */
#modalPayboocDown .inner { background-color: var(--gray-700); }
#modalPayboocDown .header .title { font-size: 28px; font-weight: 700; line-height: 37.52px; letter-spacing: -1.12px; color: var(--white); word-break: keep-all;}
#modalPayboocDown .down-tit { font-size: 18px; line-height: 27px; letter-spacing: -0.72px; color: var(--white); }
#modalPayboocDown .btn-close { background-color: var(--gray-700);}
#modalPayboocDown .btn-close::before { -webkit-mask: url('/static/images/icons/x.svg') no-repeat center; mask: url('/static/images/icons/x.svg') no-repeat center; background: var(--white); }
#modalPayboocDown .content {display: flex; justify-content: center; align-items: stretch; flex-wrap: wrap; overflow: hidden; }
#modalPayboocDown .down-wrap { width: 320px; text-align: center; }
#modalPayboocDown .down-wrap:not(:last-of-type) { padding-right: 40px; border-right: 1px solid var(--alpha-wt10); }
#modalPayboocDown .down-wrap:last-of-type { padding-left: 40px; }
#modalPayboocDown .down-wrap.store { display: flex; flex-direction: column; }
#modalPayboocDown .down-wrap.store .down-btn-wrap { margin-top: auto; }
#modalPayboocDown .down-wrap .down-item { width: 100%; max-width: 161px; height: auto; margin-bottom:12px; }
#modalPayboocDown .down-wrap .down-item:last-of-type { margin-bottom: 0; }
#modalPayboocDown .down-wrap .down-btn-wrap { margin: auto auto 0 auto; }
#modalPayboocDown .down-wrap .down-item a { display: block; padding: 18px 26px; background: var(--gray-500); border-radius: 29px; }
#modalPayboocDown .down-wrap .down-item img { display: block; }
#modalPayboocDown .down-wrap .qr-wrap { margin-top: 20px; }
#modalPayboocDown .down-wrap .qr-image { display: block; margin: 0 auto; max-width: 142px;}
@media (max-width: 1023px) {
    #modalPayboocDown .content { display: block; margin: 0 -24px;}
    #modalPayboocDown .down-wrap{width: 100%;}
    #modalPayboocDown .down-wrap.store{padding: 0 20px; width: 100%;}
    #modalPayboocDown .down-wrap.store .down-btn-wrap{margin-top: 20px; display: flex; gap: 12px;}
    #modalPayboocDown .down-wrap.qr{position: relative; padding-top: 40px; padding-left: 0; margin-top: 40px;}
    #modalPayboocDown .down-wrap.qr::before{content:''; position: absolute; top: 0; left: -24px; right: -24px; height: 1px; background-color: rgba(255,255,255,0.1);}
    #modalPayboocDown .down-wrap.qr .down-item{margin-bottom: 0;}
    #modalPayboocDown .down-wrap.qr .qr-image{width: 100%; max-width: 120px;}
}

/* 로그인 브릿지 */
.content.login-bridge{margin-top: 0;}
.content.login-bridge .basic-inner{display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 100vh; min-height: 100dvh;}
.content.login-bridge .basic-inner .inner-top{flex: 1 0 0; display: flex; flex-direction: column; align-items: center; justify-content: center; width: 100%; min-height: 350px;}
.content.login-bridge .basic-inner .inner-top .tt{margin-bottom: 32px; font-size: 24px; color: #E7E9EF; font-weight: 700; line-height: 1.5; text-align: center; word-break: keep-all;}
.content.login-bridge .basic-inner .inner-top .tt::before{content:''; display: block; margin: 0 auto 16px; width: 80px; height: 80px; background: url(/static/images/common/paybooclauncher-round.svg) center center/contain no-repeat;}
.content.login-bridge .basic-inner .inner-foot{padding-bottom: 32px; display: flex; gap: 10px; align-items: center; justify-content: space-between; width: 100%; font-size: 18px; color: #fff; text-align: center;}
.content.login-bridge .basic-inner .inner-foot .left{text-align: left; word-break: keep-all; font-size: 16px;}
.content.login-bridge .basic-inner .inner-top .btn-app {border: 1px solid var(--white); background-color: #1a1a1a; font-size: 18px; font-weight: 600; height: 56px; letter-spacing: -0.72px; color: var(--white); border-radius: 16px;}
.content.login-bridge .basic-inner .inner-top .btn-app:hover, 
.content.login-bridge .basic-inner .inner-top .btn-app:active {background-color: #2a2a2a;}
.content.login-bridge .basic-inner .inner-top .btn-app:disabled { color: #555; border-color: #3f3f3f;}
.content.login-bridge .basic-inner .btn-appDown{font-size: 15px; font-weight: 400; line-height: 150%; letter-spacing: -0.6px; text-underline-offset: 8px;}