/* BASIC css start */
.container {
     position: relative;
     max-width: var(--layout-total-width);
     padding: var(--layout-padding-set);
     margin: 0 auto;
 }

 .page-title-wrap {
     margin-top: 64px;
 }

 .page-title-wrap h2 {
     font-size: 30px;
     font-weight: 600;
     display: block !important;
 }

 .btn-login {
     border-radius: 8px;
     background: var(--main-color);
     color: #fff;
     height: 56px;
     width: 100%;
     display: flex;
     align-items: center;
     justify-content: center;
     font-size: 18px;
     font-weight: 600;
 }

 .login-header {
     margin-bottom: 40px;
 }

 .login-header .logo {
     width: 116px;
     margin-bottom: 20px;
 }

 .login-header .logo img {
     width: 100%;
 }

 .login-header h1 {
     font-size: 36px;
     line-height: 1.28;
     font-weight: 700;
     color: #000;
 }

 .login-header p {
     font-weight: 600;
     font-size: 20px;
     color: #000;
     margin-top: 20px;
 }

 /* 입력 폼 */
 .input-group {
     margin-bottom: 12px;
 }

 .input-group input {
     width: 100%;
     border: 1px solid #DBDBDB;
     height: 56px;
     width: 100%;
     color: #000;
     padding: 0 20px;
     font-size: 17px;
     font-weight: 500;
     border-radius: 0;
 }

 /* 체크박스 영역 */
 .options {
     display: flex;
     gap: 32px;
     margin: 20px 0;
 }

 .options label {
     display: flex;
     align-items: center;
     font-size: 16px;
     color: #000;
     font-weight: 500;
 }

 .options input[type="checkbox"] {
     margin-right: 6px;
 }

 .find-link {
     display: block;
     text-align: center;
     font-size: 14px;
     color: #000;
     text-decoration: underline;
     margin-bottom: 40px;
     margin-top: 16px;
     font-weight: 600;
 }

 /* SNS 로그인 */
 .sns-login {
     text-align: center;
     margin-bottom: 30px;
 }

 .sns-login p {
     font-size: 14px;
     font-weight: 600;
     margin-bottom: 15px;
 }

 .sns-icons {
     display: flex;
     justify-content: center;
     gap: 15px;
 }

 .sns-icons .icon {
     width: 44px;
     height: 44px;
     border-radius: 50%;
     display: flex;
     align-items: center;
     justify-content: center;
     cursor: pointer;
 }

 .kakao {
     background-color: #FEE500;
 }

 .naver {
     background-color: #03C75A;
     color: #fff;
     font-weight: 900;
     font-size: 18px;
 }

 /* 회원가입 버튼 */
 .btn-join {
     width: 100%;
     background: #fff;
     border: 1px solid #DBDBDB;
     border-radius: 8px;
     font-size: 18px;
     font-weight: 600;
     color: #000;
     cursor: pointer;
     display: flex;
     align-items: center;
     justify-content: center;
     height: 56px;
 }

 .login-container {
     box-shadow: 4px 4px 15px 0px #00000014;
     border-radius: 12px;
     margin: 64px auto 0;
     padding: 40px 40px 48px;
     max-width: 480px;
     width: 100%;
 }

 .tab-content {
     margin-top: 20px;
 }

 /* sns */

.sns-wrap .sns-btns {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    max-width: 400px;
    margin: 0 auto;
    padding: 16px 0 24px;
    list-style: none;
}

.sns-wrap .sns-btns li {
    position: relative;
    min-width: 0;
}

.sns-wrap .sns-btns li.full {
    grid-column: 1 / -1;
}

.sns-wrap .sns-btns li a {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    height: 46px;
    border-radius: 4px;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    white-space: nowrap;
}

.sns-wrap .sns-btns li.full a {
    height: 52px;
    border-radius: 6px;
    font-size: 15px;
}

/* 아이콘 */
.sns-wrap .sns-btns li a::before {
    content: '';
    flex-shrink: 0;
    width: 22px;
    height: 22px;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: contain;
}

.sns-wrap .sns-btns li a.kakaotalk {
    background-color: #fee500;
    color: #191919;
}
.sns-wrap .sns-btns li a.kakaotalk::before {
    background-image: url('//skin.makeshop.co.kr/skin/rw_shop/images/icons/ico_kakao.svg');
}

.sns-wrap .sns-btns li a.naver {
    background-color: #03c75a;
    color: #fff;
}
.sns-wrap .sns-btns li a.naver::before {
    background-image: url('//skin.makeshop.co.kr/skin/rw_shop/images/icons/ico_naver.svg');
    width: 16px;
    height: 16px;
}

.sns-wrap .sns-btns li a.apple {
    background-color: #000;
    color: #fff;
}
.sns-wrap .sns-btns li a.apple::before {
    background-image: url('//skin.makeshop.co.kr/skin/rw_shop/images/icons/ico_apple.svg');
    width: 18px;
    height: 18px;
}

.sns-wrap .sns-btns li a.facebook {
    background-color: #1877f2;
    color: #fff;
}
.sns-wrap .sns-btns li a.facebook::before {
    background-image: url('//skin.makeshop.co.kr/skin/rw_shop/images/icons/ico_facebook.svg');
}

/* sns 최근 로그인 말풍선 – 버튼 위 오른쪽에 띄움 */
.sns-wrap .sns-btns li > span {
    position: absolute;
    top: -18px;
    right: 8px;
    z-index: 1;
    display: inline-block;
    width: 80px;
    height: 28px;
}
.tab-content + .btn-join {
    margin-top: 12px;
}
 /* -------------------------------------------------------------------------- */
 /* 태블릿 반응형 (1024px) */
 /* -------------------------------------------------------------------------- */

 @media (max-width: 1024px) {
     .container {
         padding: 0 calc(var(--layout-side-padding) * 2);
     }

     .page-title-wrap {
         margin-top: 32px;
     }

     .page-title-wrap h2 {
         font-size: 19px;
         font-weight: 700;
     }


     .btn-login {
         height: 48px;
         border-radius: 6px;
         font-size: 14px;
     }


     .input-group input {
         padding: 0 12px;
         height: 48px;
         font-size: 14px;
     }

     .login-container {
         box-shadow: none;
         padding: 0;
         margin: 56px auto 0;
     }

     .login-header {
         display: flex;
         flex-direction: column;
         align-items: center;
         margin-bottom: 24px;
     }

     .login-header .logo {
         width: 70px;
         margin-bottom: 16px;
     }

     .login-header h1 {
         font-size: 20px;
     }

     .login-header h1 br {
         display: none;
     }

     .login-header p {
         margin-top: 8px;
         font-size: 14px;
     }


     .tab-content {
         margin-top: 16px;
     }

     .input-group {
         margin-bottom: 10px;
     }



    .sns-wrap .sns-title {
        margin-top: 48px;
        font-size: 14px;
    }

    .sns-wrap .sns-btns {
        max-width: none;
        padding: 16px 0 20px;
    }

    .sns-wrap .sns-btns li a {
        height: 44px;
        font-size: 13px;
    }

    .sns-wrap .sns-btns li.full a {
        height: 48px;
        font-size: 14px;
    }


     .btn-join {
         height: 32px;
         border-radius: 6px;
         font-size: 12px;

     }

     .options {
         margin: 16px 0 24px;
         gap: 20px;
     }

     .options label {
         font-size: 13px;
     }

     .find-link {
         margin-top: 12px;
         margin-bottom: 47px;
         font-size: 12px;
     }
     .tab-content + .btn-join {
    margin-top: 10px;
}
 }
/* BASIC css end */

