@charset "UTF-8";

/**250903 BH**/
/** warning 버튼**/
.text_warning,.text_warning:hover {color: var(--warning); text-decoration: underline;}

/** 로그인 **/
.login .join_btn {border-color: var(--gray-300);}
.login .tab_nav { background: var(--primary-100);}
.login .tab_nav li button { background-color: var(--primary-100);}
.login .tab_nav li button.active { background-color: var(--primary-200); color: var(--primary);}
.login a:hover {color:var(--gray-700);}

/** 약관동의 **/
.join .checks_wr .checks {margin-right: 0; margin-bottom: 1.5rem;}
.join .checks_wr .checks a:hover {color: var(--gray-600); text-decoration: underline;}
.join .hd_m {padding:0;}
.join .modal_full.modal .modal-header {height: var(--height);}
/** 마이페이지 **/
.mypage_menu a {display: block; font-size: 1.4rem; padding: 0 1rem;}
.mypage_icon {width:3.8rem; height: 3.8rem; line-height: 3.8rem; display: block; margin: 0 auto;}
.mypage_icon2 {width: 3rem;height: 3rem;line-height: 3rem;display: block; margin: 0 auto;}
.mypage .ver_btn {border: 0; background: transparent; flex-shrink: 0;}

/** 건물 승인 관리 **/
.mypage_building .close{ z-index: 1;}
.mypage_building .box {
    border:1px solid #E4E7E9;
    border-radius: 2rem;
    padding: 2rem 1.5rem;
}
.mypage_building .box .close { opacity: 1; width: 1.9rem;}
.tag_approve { 
    font-size:1.3rem; 
    font-weight: 600;
    background: var(--primary); 
    color: #fff; 
    border-radius: 0.6rem; 
    padding:0.5rem 0.4rem;
}
.tag_return  {
    font-size: 1.3rem;
    font-weight: 600;
    background: var(--warning);
    color: #fff;
    border-radius: 0.6rem;
    padding: 0.5rem 0.4rem;
}

.mp_reject_wrap {display: none; border-radius: 2rem;}
.mp_reject_wrap.active {display: block; }
.mypage_building .blue-tag {padding: 0.4rem 0.5rem;}
/** 1:1 문의 **/
.mypage_qna_content {
    margin: 0 1.5rem;
    padding: 1.5rem 0;
    border-top: 1px solid #E0E8F2; 
}
/** 무료 견적 시스템 **/
.mypage_estimate .checks_wr {margin-bottom:0;}
.mypage_estimate .checks {margin:0;}
.mypage_estimate .form-row {gap: 0;}
.estimate_radio {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
}
/** 공지사항 **/
.mypage_notice .basic_list_style {
    margin-top: 0;
}
.mypage_notice .basic_list_style ul li {
    padding: 2.0rem 0;
}
/** FAQ **/
.faq_tab span {font-size: 1.4rem;}
.faq_tab #accordion_wr ul li{border-bottom:0.1rem solid #E0E8F2;}
.faq_tab .accordion_basic .hd_btn{padding: 1.6rem 0rem;}
.mypage_faq .tab_box ul li button {
    font-weight: 400;
    padding: 0.6rem 0.7rem;}

/** 알림 설정 **/
.mypage_alart .custom-switch {
    width: 4rem;
    height: 2.4rem;
}
.mypage_alart .custom-switch .custom-control-label::before {
    width: 4rem;
    height: 2.4rem;
}
.mypage_alart .custom-switch .custom-control-label::after {
    width: 2.4rem;
    height: 2.4rem;
}
.mypage_alart .custom-control-input:checked~.custom-control-label::before {
    color: #fff;
    border-color: var(--primary);
    background-color: var(--primary);
}
.mypage_alart .custom-switch .custom-control-input:checked~.custom-control-label::after {
    background-color: #fff;
    left: 1.2rem;
    border-color: var(--primary);
}

/** 알림 내역 **/
.alarm_accordion {
    overflow: hidden;
    padding: 2rem 1.6rem;
    border-bottom: 1px solid var(--border);
    cursor: pointer;
}
.alarm_accordion .icon24 { flex-shrink: 0;  transition: transform 0.3s ease;}
/* 아이콘 회전 */
.alarm_accordion.open .icon24 {
    transform: rotate(180deg);
}
/* 내용 */
.alarm_accordion .alarm_content {
    max-height: 1.8rem; /* 1줄 높이 */
    overflow: hidden;
    transition: max-height 0.3s ease;
    white-space: nowrap;
    text-overflow: ellipsis;
    flex: 1; /* 남는 공간 전부 차지 */
    margin-right: 0.8rem; /* 아이콘과의 간격 */
}
.alarm_accordion:not(.open) .alarm_content {
    white-space: nowrap;
    text-overflow: ellipsis;
}

/* 열리면 여러 줄 허용 */
.alarm_accordion.open .alarm_content {
    /*white-space: normal;*/
    white-space: pre-line;
}

/** 환불 내역 **/
.mypage_refund_list li {padding: 2rem 0 2rem 1.5rem; border-radius: 1.2rem;}
.tn_refund_txt p{min-width: 12.5rem;}
.refund_done_tag {
    min-width: 4.8rem;
    width: 4.8rem;
    aspect-ratio: 1 / 1;
    background-color: var(--gray-300);
    border-radius: 1.6rem;
    color: var(--gray-800);
    display: flex;
    align-items: center;
    justify-content: center;
}

/** 250910 메인 blue-tag 수정 **/
.idx_pg .storage_info .blue-tag {padding:0.5rem;}

/** 가입완료 버튼 **/
.join_complete_btn{
    height: 6.2rem;
    border-radius: 50rem;
    box-shadow: 2px 3px 10px rgba(0, 0, 0, 0.1);
    padding: 2.2rem 3rem;
}
/** 은행 모달 **/
.bank_grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
    justify-content: center;
    justify-items: center;
    margin: 0 auto;
}
.bank_grid button {
    width: 15rem;
}
.bank_grid li {
    border: 0.1rem solid var(--border); 
    border-radius: 1.4rem;
    text-align: center;
}
.form-text {
    margin-top: 0.5rem;
}

.info_bank .ip_valid, .info_bank .ip_valid {
    margin-top: 5px;
}
.tn_service_complaint .process_before {
    width: 7.2rem;
    text-align: center;
}


@media (max-width: 575.98px) {
.bank_grid {
    grid-template-columns: repeat(2, 1fr);
}
}
@media (max-width: 375px) {
    .bank_grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .bank_grid button {
        width: 12rem;
        font-size: 1.5rem;
    }
}