@charset "utf-8";

/* popup */
.custom-popup-wrapper{
    position: absolute;
    z-index: 88;
    overflow: hidden;
    top: 200px !important;
    left: auto !important;
    right: calc(100vw - 85%) !important;
}
.custom-popup {
    overflow: hidden!important;
    height: auto!important;
    max-width: 650px !important;
    min-width: 400px !important;
    width: 25vw !important;
}

.custom-popup .content{
    padding: 15px;
    background-color: #fff;
    border: 1px solid #eaeaea;
    max-width: 100%;
    min-height: 350px;
    line-height: 200%;
}

.custom-popup-wrapper .action{
    display: flex;
    background-color: #fff;
}

.custom-popup-wrapper .action div{
    padding: 15px;
    border: 1px solid #f5f5f5;
    text-align: center;
    cursor: pointer;
    color: #333;
}

.custom-popup-wrapper .action .popup-false,
.custom-popup-wrapper .action .popup-never{width:45%;}
.custom-popup-wrapper .action .close{width:5%;}

.custom-popup .content img {
    display: block!important;
    margin: 0 auto!important;
    width: 100%!important;
    height: auto!important;
}
@media screen and (max-width:1500px){
    .custom-popup-wrapper{ top: 150px !important; }
}

@media screen and (max-width:1300px){
    .custom-popup{min-width: 380px !important;}
    .custom-popup-wrapper{ top: 130px !important; }
}
@media only screen and (max-width: 1199px){
    .custom-popup-wrapper{
        width: 30%;
        min-width: 320px;
        padding: 15px;
        left: auto !important;
        top: 80px !important;
        right: calc(100vw - 85%) !important;

    }
    .custom-popup{
        width: 100% !important;
        max-width: none!important;
        min-width: auto !important;
    }
}
@media screen and (max-width:1024px){
    .custom-popup-wrapper{ top: 70px !important; }
    .custom-popup .content{min-height: 1;}
}
@media screen and (max-width: 767px) {
    .custom-popup-wrapper{
        width: calc(100% - 30px);
        max-width: 450px!important;
        left: 50% !important;
        top: 110px !important;
        transform: translateX(-50%)!important;
    }
}


/* 에디터 컨텐츠 css 초기화 */
.vpw-cont * { font-family: 'Inter'; font-weight: 100; line-height: 180%; font-size: 18px; color: #000; }
.vpw-cont h1, .vpw-cont h2, .vpw-cont h3, .vpw-cont h4, .vpw-cont h5, .vpw-cont h6 { font-size: 32px; font-family: "Poppins"; font-weight: 700; line-height: 150%; padding-bottom: 15px; }
.vpw-cont img { margin: 20px 0; max-width: 100%; height: auto!important; }

@media screen and (max-width: 1199px) {
    .vpw-cont * { font-size: 16px; }
    .vpw-cont h1, .vpw-cont h2, .vpw-cont h3, .vpw-cont h4, .vpw-cont h5, .vpw-cont h6 { font-size: 18px; padding-bottom: 7px; }
    .vpw-cont img { margin: 10px 0; }
}


/* 다운로드센터 로그인 모달 */ 
.down-modal { position: fixed; top: 0; left: 0; z-index: 9999; width: 100%; height: 100vh; display: none; }
.down-modal .dim { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0,0,0,0.7); backdrop-filter: blur(10px);}
.down-modal .modal-inner { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 50; background-color: #fff; overflow: hidden; }
.down-modal .modal-inner > img { display: block; max-width: 100%; }
.down-modal .content { padding: 80px 20px 50px 20px; text-align: center; }
.down-modal .content p, .down-modal .content strong { font-size: 18px; line-height: 180%; font-family: "Inter"; }
.down-modal .content strong { font-weight: 700; }
.down-modal .buttons { display: flex; justify-content: center; align-items: center; padding: 0 0 50px; }
.down-modal .buttons a { display: block; width: 150px; padding: 0 20px; font-family: "Inter"; text-align: center; font-size: 18px; font-weight: 500; line-height: 50px; margin: 0 10px; }
.down-modal .buttons a.confirm { background-color: #00448d; color: #fff;  }
.down-modal .buttons a.close { border: 1px solid #ababab; color: #ababab; line-height: 48px; }

@media screen and (max-width: 1199px) { 
    .down-modal .modal-inner { width: calc(100% - 40px); max-width: 530px; }
    .down-modal .content { padding: 30px 20px 30px 20px; }
    .down-modal .content p, .down-modal .content strong { font-size: 14px; }
    .down-modal .buttons { padding: 0 2.5px 30px 2.5px; }
    .down-modal .buttons a { line-height: 40px; margin: 0 2.5px; font-size: 16px; }
    .down-modal .buttons a.close { line-height: 38px; }
}
@media screen and (max-width: 767px) {
    .down-modal .buttons { padding: 0 2.5px 5px 2.5px; }
}

/* reCaptcha */
#captcha { display: flex; align-items: center; justify-content: center; padding: 80px 0 0 0; }


/* Popup */
.popup { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 9999999; }
.popup__dim { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0,0,0,0.7); backdrop-filter: blur(5px); }
.popup__inner { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: calc(100% - 40px); height: 90%; max-width: 730px; max-height: 800px; background-color: #fff; padding: 30px; box-shadow: 0 0 50px rgba(0,0,0,0.2); box-sizing: border-box; }
.popup__content h3 { font-size: 24px; font-weight: 700; padding-bottom: 10px;}
.popup__content .cont { font-family: "Inter"; margin: 30px 0 0px 0; word-break: normal; font-size: 16px; line-height: 180%; }
.popup__content .cont strong { font-weight: 700; color: #00448d; font-size: 16px; }
.popup__inner .close-btn { display: block; width: 100%; height: 40px; font-size: 18px; font-weight: 700; color: #fff; text-align: center; line-height: 40px; background-color: #00448d; }
#pop-copyright .popup__inner,
#pop-privacy .popup__inner { height: 420px; }
#pop-copyright .popup__content,
#pop-privacy .popup__content {height: calc(100% - 70px); margin-bottom:30px; -webkit-overflow-scrolling: touch; /* iOS용 부드러운 스크롤 */}
#pop-copyright .popup__content,
#pop-privacy .cont {    height: calc(100% - 70px); overflow: auto;}
#pop-privacy .cont h5 {font-size:20px; font-weight:700; margin:30px 0 10px 0;}
#pop-privacy .cont ul {margin:0 0 0 20px;}
#pop-privacy .cont table th,
#pop-privacy .cont table td {padding: 0 20px; text-align: center;}
#pop-privacy .cont.simple-table table td:first-child{border-right: 1px solid #ccc;}
#pop-privacy .cont ol>li {margin: 0 0 10px 0;}

@media screen and (max-width: 767px) {
    .popup__inner { padding: 20px; }
}

/* privacy_policy-table */
.privacy_policy table{
    width:100%;
    border-collapse:collapse;
    margin:20px 0;
    border:1px solid #ccc !important;
}

.privacy_policy table td{
    padding:10px;
    text-align:left;
}

/* privacy-select-btn */
.privacy-header {
    display: flex;
    justify-content: space-between; /* 양쪽 끝으로 정렬 */
    align-items: center; /* 수직 가운데 정렬 */
    padding-bottom: 10px; border-bottom: 1px solid #00448d;
}
.privacy-actions {
    display: flex;
    gap: 10px; /* select와 button 간격 조정 */
}
#pop-privacy-select {
    width: 220px; /* 원하는 너비로 설정 */
    padding:10px;
    background-size:30px;
    border:1px solid #ccc;
}

#pop-privacy-btn{
    padding:0 20px;
    border-radius:20px;
    border:1px solid #000;
    background:transparent;
}
@media screen and (max-width: 767px) {
    .privacy-header{display:block;}
    #pop-privacy .popup__content.header-actions{margin-bottom:60px;}
    #pop-privacy .popup__content {height: calc(100% - 100px)}
}
@media screen and (max-width: 380px) {
    .popup__content h3{font-size:18px;}
    .privacy-actions{flex-direction:column;}
    #pop-privacy-btn{padding:5px 10px;}
    #pop-privacy-select{width:100%;}
    #pop-privacy .popup__content {height: calc(100% - 140px)}
    #pop-privacy .popup__content.header-actions{margin-bottom: 110px;}
}
@media screen and (max-width: 300px) {
    .popup__content h3{font-size:15px;}
    #pop-privacy-select{
        font-size:12px;
        background-size:25px;
    }
}