@charset "utf-8";
/* SIR 지운아빠 */

/* ### 기본 스타일 커스터마이징 시작 ### */

/* 버튼 */
.mbskin a.btn01 {}

.mbskin a.btn01:focus,
.mbskin .btn01:hover {}

.mbskin a.btn02 {}

.mbskin a.btn02:focus,
.mbskin .btn02:hover {}

.mbskin .btn_confirm {}

/* 서식단계 진행 */
.mbskin .btn_submit {}

.mbskin button.btn_submit {}

.mbskin fieldset .btn_submit {}

.mbskin .btn_cancel {}

.mbskin button.btn_cancel {}

.mbskin .btn_cancel:focus,
.mbskin .btn_cancel:hover {}

.mbskin a.btn_frmline,
.mbskin button.btn_frmline {}

/* 우편번호검색버튼 등 */
.mbskin button.btn_frmline {}

.mbskin .win_btn {}

/* 새창용 */
.mbskin .win_btn button {}

.mbskin .win_btn input {}

.mbskin .win_btn a {}

.mbskin .win_btn a:focus,
.mbskin .win_btn a:hover {}

/* 게시판용 버튼 */
.mbskin a.btn_b01 {}

.mbskin a.btn_b01:focus,
.mbskin .btn_b01:hover {}

.mbskin a.btn_b02 {}

.mbskin a.btn_b02:focus,
.mbskin .btn_b02:hover {}

.mbskin a.btn_admin {}

/* 관리자 전용 버튼 */
.mbskin a.btn_admin:focus,
.mbskin a.btn_admin:hover {}

/* 기본테이블 */
.mbskin .tbl_head01 {}

.mbskin .tbl_head01 caption {}

.mbskin .tbl_head01 thead th {}

.mbskin .tbl_head01 thead a {}

.mbskin .tbl_head01 thead th input {}

/* middle 로 하면 게시판 읽기에서 목록 사용시 체크박스 라인 깨짐 */
.mbskin .tbl_head01 tfoot th {}

.mbskin .tbl_head01 tfoot td {}

.mbskin .tbl_head01 tbody th {}

.mbskin .tbl_head01 td {}

.mbskin .tbl_head01 a {}

.mbskin td.empty_table {}

/* 폼 테이블 */
.mbskin table {}

.mbskin caption {}

.mbskin .frm_info {}

.mbskin .frm_file {}

.mbskin .tbl_frm01 {}

.mbskin .tbl_frm01 th {
    width: 85px;
}

.mbskin .tbl_frm01 td {}

.mbskin .tbl_frm01 textarea,
.mb_skin tbl_frm01 .frm_input {}

.mbskin .tbl_frm01 textarea {}

/*
.mbskin .tbl_frm01 #captcha {}
.mbskin .tbl_frm01 #captcha input {}
*/
.mbskin .tbl_frm01 a {}

/* 필수입력 */
.mbskin .required,
.mbskin textarea.required {}

/* 테이블 항목별 정의 */
.mbskin .td_board {}

.mbskin .td_chk {}

.mbskin .td_date {}

.mbskin .td_datetime {}

.mbskin .td_group {}

.mbskin .td_mb_id {}

.mbskin .td_mng {}

.mbskin .td_name {}

.mbskin .td_nick {}

.mbskin .td_num {}

.mbskin .td_numbig {}

.mbskin .txt_active {}

.mbskin .txt_expired {}

/* ### 기본 스타일 커스터마이징 끝 ### */

/* 회원가입 약관 */
#fregister section {
    margin: 0 0 20px;
    padding: 20px 0
}

#fregister h2 {
    margin: 0 0 20px;
    text-align: center
}

#fregister textarea {
    display: block;
    margin-bottom: 10px;
    padding: 5px;
    width: 98%;
    height: 150px;
    border: 1px solid #e9e9e9;
    background: #f7f7f7
}

#fregister .fregister_agree {
    padding: 10px 0 0;
    text-align: right
}

#fregister .fregister_agree label {
    display: inline-block;
    margin-right: 5px
}

#fregister p {
    color: #e8180c;
    text-align: center
}

#fregister .btn_confirm {
    margin-bottom: 20px
}

#fregister_private .tbl_head01 th {
    text-align: center;
    border: 1px solid #d1dee2;
    width: 33%
}

#fregister_private .tbl_head01 td {
    border: 1px solid #e9e9e9
}

#fregister_private .tbl_head01 caption {
    position: absolute;
    font-size: 0;
    line-height: 0;
    overflow: hidden
}

/* 회원가입 입력 */
#fregisterform textarea {
    height: 50px
}

#fregisterform #msg_certify {
    margin: 5px 0 0;
    padding: 5px;
    border: 1px solid #dbecff;
    background: #eaf4ff;
    text-align: center
}

#fregisterform .frm_address {
    margin: 5px 0 0
}

#fregisterform #mb_addr3 {
    display: inline-block;
    margin: 5px 0 0;
    vertical-align: middle
}

#fregisterform #mb_addr_jibeon {
    display: block;
    margin: 5px 0 0
}

/* 회원가입 완료 */
#reg_result {
    padding: 50px 0 0
}

#reg_result #result_email {
    margin: 20px 0;
    padding: 10px 50px;
    border-top: 1px solid #e9e9e9;
    border-bottom: 1px solid #dde4e9;
    background: #fff;
    line-height: 2em
}

#reg_result #result_email span {
    display: inline-block;
    width: 150px
}

#reg_result #result_email strong {
    color: #e8180c;
    font-size: 1.2em
}

#reg_result p {
    line-height: 1.8em
}

#reg_result .btn_confirm {
    margin: 50px 0
}

/* 아이디/비밀번호 찾기 */
#find_info #mb_hp_label {
    display: inline-block;
    margin-left: 10px
}

#find_info #info_fs {
    margin: 0 20px 20px;
    padding: 0;
    background: #fff
}

#find_info #info_fs .frm_input {
    width: 70%
}

#find_info p {
    margin: 0 0 10px;
    line-height: 1.8em
}

#find_info #captcha {
    margin: 0 20px
}

/* 로그인 */
/* 로그인 (New Split Design) */
#mb_login {
    display: flex;
    width: 100%;
    height: 100%;
}

/* Left Visual Section */
.login_visual {
    width: 50%;
    background: url('/img/login_bg.png') no-repeat center center;
    background-size: cover;
    background-color: #2b0a18;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Decorative Pattern Simulation */
/* .login_visual::before {
    content: "";
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(circle, rgba(255, 0, 144, 0.1) 0%, rgba(0, 0, 0, 0) 70%);
    transform: rotate(45deg);
} */

.visual_text {
    position: relative;
    z-index: 2;
    color: rgba(255, 255, 255, 0.8);
    text-align: center;
}

.visual_text h2 {
    font-size: 2.5rem;
    font-weight: 700;
    margin-bottom: 20px;
    color: #fff;
}

.visual_text p {
    font-size: 1.1rem;
    line-height: 1.6;
}

/* Right Form Section */
.login_form_wrap {
    width: 50%;
    padding: 5rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.login_form_wrap h1 {
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 1.5rem;
    color: #333;
    /* Uncommented and set to dark gray */
    text-align: center;
}

.login_form_wrap form {
    width: 100%;
    max-width: 400px;
}

#login_frm {
    width: 100%;
}

#login_frm .frm_input {
    width: 100%;
    height: 50px;
    padding: 0 20px;
    margin-bottom: 15px;
    background: #fff;
    /* Changed to white */
    border: 1px solid #ddd;
    /* Changed to light gray */
    border-radius: 8px;
    color: #333;
    /* Changed to dark text */
    font-size: 1rem;
    box-sizing: border-box;
    margin: 0.25rem 0;
}

#login_frm .frm_input::placeholder {
    color: #aaa;
}

#login_frm .frm_input:focus {
    border-color: #00baa4;
    /* Changed to Primary Color */
    outline: none;
    box-shadow: 0 0 0 3px rgba(0, 186, 164, 0.1);
}

/* Checkbox */
#login_info.chk_box {
    margin: 0.5rem 0;
    text-align: left;
    border: none;
    background: transparent;
    padding: 0;
}

.chk_box label {
    color: #666;
    /* Slightly darker */
    cursor: pointer;
    font-size: 0.9rem;
    display: flex;
    align-items: center;
}

.chk_box input[type="checkbox"] {
    margin-right: 8px;
    width: 18px;
    height: 18px;
    accent-color: #00baa4;
}

/* Submit Button */
#login_frm .btn_submit {
    width: 100%;
    height: 55px;
    background: #00baa4;
    /* Primary Color */
    color: #fff;
    font-size: 1.2rem;
    font-weight: 700;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    transition: background 0.3s;
    margin-top: 20px;
}

#login_frm .btn_submit:hover {
    background: #008c7a;
}

/* Links */
.mb_login_join {
    margin-top: 2rem;
    text-align: center;
}

.mb_login_join h2 {
    display: none;
    margin-top: 3rem;
}

.mb_login_join div a {
    /* color: #aaa; */
    /* margin: 0 10px; */
    font-size: 0.9rem;
    /* text-decoration: none; */
}

.mb_login_join div a:hover {
    color: #fff;
    text-decoration: underline;
}

/* Social Login */
#sns_login {
    /* margin-top: 30px; */
    text-align: center;
    margin-top: 2rem;
}

#sns_login h3 {
    display: none;
    /* Hide title if exists in include */
}

/* Adjust social icons if they are just images or buttons */
.sns-wrap {
    display: flex;
    justify-content: center;
    flex-direction: column;
    gap: 0.75rem;
}

.sns-btn {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    color: #fff;
    text-decoration: none;
}

.sns-kakao {
    background: #fee500;
    color: #3c1e1e;
}

.sns-naver {
    background: #03c75a;
    color: #fff;
}

.sns-google {
    background: #fff;
    color: #555;
}

/* Responsive */
@media (max-width: 992px) {
    #mb_login {
        flex-direction: column;
        margin: 0;
        min-height: auto;
        box-shadow: none;
    }

    .login_visual {
        width: 100%;
        min-height: 200px;
        padding: 30px;
    }

    .login_form_wrap {
        width: 100%;
        padding: 2rem;
    }
}

@media (max-width: 768px) {
    .login_visual {
        display: none;
    }
}

/* 쪽지 */
#memo_view_contents {
    margin: 0 auto 20px;
    width: 90%
}

#memo_view_contents h1 {
    position: absolute;
    font-size: 0;
    line-height: 0;
    overflow: hidden
}

#memo_view_ul {
    margin: 0;
    padding: 0 0 10px;
    border-bottom: 1px solid #eee;
    list-style: none
}

.memo_view_li {
    position: relative;
    padding: 5px 0
}

.memo_view_subj {
    display: inline-block;
    width: 65px
}

#memo_view p {
    padding: 10px 0;
    min-height: 150px;
    height: auto !important;
    height: 150px;
    background: #fff;
    line-height: 1.8em
}

#memo_write textarea {
    height: 100px
}

/* 스크랩 */
#scrap_do table {
    margin: 0 0 10px;
    width: 100%
}

#scrap_do textarea {
    height: 100px
}

/* 회원 비밀번호 확인 */
#mb_confirm {
    margin: 0 auto;
    padding: 100px 0;
    width: 500px
}

#mb_confirm h1 {
    margin: 0 0 20px;
    font-size: 1.3em
}

#mb_confirm p {
    padding: 20px;
    border: 1px solid #dde4e9;
    border-bottom: 0;
    background: #fff
}

#mb_confirm p strong {
    display: block
}

#mb_confirm fieldset {
    margin: 0 0 30px;
    padding: 30px 0;
    border: 1px solid #e9e9e9;
    background: #f5f6fa;
    text-align: center
}

#mb_confirm fieldset .frm_input {
    background-color: #fff !important
}

#mb_confirm label {
    letter-spacing: -0.1em
}

#mb_confirm_id {
    display: inline-block;
    margin-right: 20px;
    font-weight: bold
}

/* 비밀글 비밀번호 확인 */
#pw_confirm {
    margin: 0 auto;
    padding: 100px 0;
    width: 500px
}

#pw_confirm h1 {
    margin: 0 0 20px;
    font-size: 1.3em
}

#pw_confirm p {
    padding: 20px;
    border: 1px solid #dde4e9;
    border-bottom: 0;
    background: #fff
}

#pw_confirm p strong {
    display: block
}

#pw_confirm fieldset {
    margin: 0 0 30px;
    padding: 30px 0;
    border: 1px solid #e9e9e9;
    background: #f5f6fa;
    text-align: center
}

#pw_confirm fieldset .frm_input {
    background-color: #fff !important
}

#pw_confirm label {
    letter-spacing: -0.1em
}

#pw_confirm_id {
    display: inline-block;
    margin-right: 20px;
    font-weight: bold
}

/* 폼메일 */
#formmail #subject {
    width: 386px
}

#formmail textarea {
    height: 100px
}

/* 자기소개 */
#profile table {
    margin-bottom: 0
}

#profile section {
    margin: 0 auto 20px;
    padding: 20px;
    width: 86%
}

#profile h2 {
    margin: 0
}