@charset "utf-8";

/* 로그인 & 회원가입 */
.member-wrapper {display:flex; flex-direction:column; gap:40px; max-width:360px; margin:0 auto;}
.member-section {display:flex; flex-direction:column; gap:var(--space-40);}

.member-title {font-size:var(--font-size-28); font-weight:700; line-height:1.33em; color:#2A2A2A; text-align:center;}

.login-form {display:flex; flex-direction:column; gap:10px;}
.login-form .input {display:block; width:100%; height:48px; padding:0 12px; background-color:#F9FAFB;}
.login-form .links {text-align:right; font-size:13px; line-height:1.2em; margin-top:5px;}
.login-form .links .separator {display:inline-block; vertical-align:middle; width:1px; height:11px; background:#242424; margin:-.2em 6px 0;}
.login-form .links a:hover {text-decoration:underline;}
.login-btns {display:flex; flex-direction:column; gap:10px;}
.login-btns .btn-pack.large {width:100%; font-size:var(--font-size-18); font-weight:600; padding:var(--space-12) var(--space-30);}

.sns-login {display:flex; flex-direction:column; gap:10px;}
.btn-sns-login {width:100%; min-height:48px; display:flex; align-items:center; justify-content:center; gap:10px; border:0; font-size:var(--font-size-18); font-weight:600; line-height:1.2em; padding:var(--space-15) var(--space-30); border-radius:var(--radius-10); transition:.2s;}
.btn-sns-login svg {display:block;}
.btn-sns-login.naver {background:#03C75A; color:#fff;}
.btn-sns-login.naver:hover {background:#02B14E;}
.btn-sns-login.kakao {background:#FFE812; color:#2A2A2A;}
.btn-sns-login.kakao:hover {background:#E8D90C;}

.find-form {display:flex; flex-direction:column; gap:var(--space-40);}
.find-form .form {display:flex; flex-direction:column; gap:20px;}
.find-form .form-group {display:flex; flex-direction:column; gap:6px;}
.find-form .label {display:block; font-size:var(--font-size-15); font-weight:500; line-height:normal; color:#242424;}
.find-form .input {display:block; width:100%; height:48px; padding:0 12px; background-color:#F9FAFB;}
.find-form .btn-pack.large {width:100%; font-size:var(--font-size-18); font-weight:600; padding:var(--space-12) var(--space-30);}

.join-wrap {display:flex; flex-direction:column; gap:var(--space-40); max-width:650px; margin:0 auto;}
.join-title {margin-bottom:20px; font-size:18px; font-weight:600; line-height:normal; color:#2A2A2A;}
.join-box {padding:var(--space-30); border:1px solid #E5E7EB; border-radius:10px; background:#fff;}
.join-fields {display:flex; flex-direction:column; gap:20px;}
.join-field {display:flex; align-items:flex-start; gap:10px;}
.join-field .form-label {flex-shrink:0; display:flex; align-items:center; min-width:100px; min-height:48px; font-size:15px; font-weight:500; line-height:normal; color:#2A2A2A;}
.join-field .form-group {flex:1; display:flex; align-items:center; gap:10px;}
.join-field .form-group .input {width:100%; background-color:#fff; padding:0 12px;}
.join-field .form-group .input:read-only {
    background-color: #F9FAFB;
}
.join-field .form-group .btn-pack {flex-shrink:0; min-width:clamp(100px, calc(177 / var(--inner) * 100vw), 177px);}
.join-field .form-group .btn-pack.outline {color:#2A2A2A; border:1px solid #D1D5DB; border-radius:6px;}

.join-field .form-group .form-group-inner {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
}

.join-field .field-rows {flex:1; display:flex; flex-direction:column; gap:10px;}
.join-field .info-type {display:flex; align-items:center; flex-wrap:wrap; gap:30px; min-height:48px;}
.join-field .radiobox input + label:before {border-color:#D1D5DB;}
.join-field .radiobox input:checked + label:before {border-color:#2563EB; background-image:url('/html/front/images/bbs/radiobox2.svg');}

.agree-checks-box {padding:16px 14px; border:1px solid #E5E7EB; border-radius:10px; background:#fff;}
.agree-checks {display:flex; flex-direction:column; gap:10px; font-size:13px; line-height:1.4em; color:#555;}
.agree-checks .link {color:#2563EB; text-decoration: underline;}
.agree-checks .required {color:#EF4444;}

.join-actions {text-align:center;}
.join-actions .btn-pack.large {font-size:var(--font-size-18); font-weight:600; padding:var(--space-10) var(--space-30);}

/* 마이페이지 */
.sub-mypage {background:#FBFBFB; padding-top:var(--space-30);}

.mypage-heading {display:flex; flex-direction:column; gap:var(--space-10); margin-bottom:var(--space-50);}
.mypage-heading.mgb20 {margin-bottom:20px;}
.mypage-heading h2 {color:#2A2A2A; font-size:var(--font-size-28); font-weight:700; line-height:1.3em;}
.mypage-heading p {color:#999; font-size:var(--font-size-15); font-weight:400; line-height:1.4em;}
.mypage-heading .categorys {margin-bottom:0;}

.mypage-order-list {display:flex; flex-direction:column; gap:var(--space-50);}
.mypage-order {border:1px solid #E5E5E5; border-radius:8px; background:#fff; overflow:hidden;}
.mypage-order-head {display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:40px; padding:8px 20px; border-bottom:1px solid #F5F5F5; background:#FAFAFA;}
.mypage-order-meta {display:flex; flex-wrap:wrap; align-items:center; gap:10px;}
.mypage-order-meta .order-no {color:var(--color-primary); font-size:16px; font-weight:700; line-height:1.13em;}
.mypage-order-meta .order-date {color:#999; font-size:14px; font-weight:400; line-height:1.14em;}
.mypage-order-total {display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:10px;}
.mypage-order-total .order-price {color:#2A2A2A; font-size:16px; font-weight:700; line-height:1.13em;}
.mypage-order-total .order-receipt {display:inline-flex; align-items:center; justify-content:center; min-width:40px; height:20px; padding:0 5px; border:0.5px solid #E5E5E5; border-radius:0; background:#fff; color:#999; font-size:12px; font-weight:400; line-height:1.33em; text-decoration:none;}
.mypage-order-total .order-cancel {padding:0 2px; border:0; background:transparent; color:#999; font-size:13px; font-weight:400; line-height:1.23em; text-decoration:underline; cursor:pointer;}
.mypage-order-table-head {display:grid; grid-template-columns:auto 140px 100px 80px 80px; gap:var(--space-20); align-items:center; padding:8px 20px; border-bottom:1px solid #F5F5F5; background:#FAFAFA; color:#666; font-size:14px; font-weight:400; line-height:1.29em; text-align:center;}
.mypage-order-table-head .col-name {text-align:center;}
.mypage-order-item {display:grid; grid-template-columns:auto 140px 100px 80px 80px; gap:var(--space-20); align-items:center; padding:18px 20px; border-bottom:1px solid #F5F5F5;}
.mypage-order-item:last-child {border-bottom:0;}
.mypage-order-item .col-name {text-align:left;}
.mypage-order-item .board-loc {display:flex; align-items:center; gap:4px; margin-bottom:4px;}
.mypage-order-item .district {color:#666; font-size:12px; font-weight:400; line-height:1.33em;}
.mypage-order-item .board-name {margin:0; color:#2A2A2A; font-size:16px; font-weight:500; line-height:1.25em; letter-spacing:-0.03em;}
.mypage-order-item .col-label {display:none;}
.mypage-order-item .col-date {color:#666; font-size:14px; font-weight:400; line-height:1.29em; text-align:center;}
.mypage-order-item .col-price {color:#666; font-size:14px; font-weight:400; line-height:1.29em; text-align:center;}
.mypage-order-item .col-status {display:flex; justify-content:center;}
.mypage-order-item .status-badge {display:inline-flex; align-items:center; justify-content:center; min-height:22px; padding:3px 7px; border-radius:5px; font-size:13px; font-weight:400; line-height:1.23em;}
.mypage-order-item .status-badge.is-wait-pay {background:#FFF4E5; color:#D97642;}
.mypage-order-item .status-badge.is-review {min-height:26px; background:#F3EEF8; color:#7A5AA6;}
.mypage-order-item .status-badge.is-confirmed {background:#E8F4EC; color:#2F7D4B;}
.mypage-order-item .status-badge.is-done {min-height:26px; background:#F1F3F5; color:#667085;}
.mypage-order-item .col-draft {display:flex; justify-content:center;}
.mypage-order-item .col-draft.is-disabled {opacity:0.4;}
.mypage-order-item .btn-draft {display:inline-flex; align-items:center; justify-content:center; min-width:80px; height:30px; padding:7px 4px; border:1px solid #E5E5E5; border-radius:5px; background:#fff; color:#666; font-size:13px; font-weight:400; line-height:1.23em; cursor:pointer;}
.mypage-order-item .btn-draft:disabled {cursor:not-allowed;}

.mypage-counsel-list {display:flex; flex-direction:column; gap:var(--space-50);}
.mypage-counsel {border:1px solid #E5E5E5; border-radius:8px; background:#fff; overflow:hidden;}
.mypage-counsel-head {display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:50px; padding:8px 20px; border-bottom:1px solid #F5F5F5; background:#FAFAFA;}
.mypage-counsel-meta {display:flex; flex-wrap:wrap; align-items:center; gap:10px;}
.mypage-counsel-meta .counsel-tit {color:var(--color-primary); font-size:16px; font-weight:700; line-height:1.13em;}
.mypage-counsel-meta .counsel-date {color:#999; font-size:14px; font-weight:400; line-height:1.14em;}
.mypage-counsel-head .status-badge {display:inline-flex; align-items:center; justify-content:center; min-height:26px; padding:4px 13px; border-radius:6px; font-size:13px; font-weight:500; line-height:1.23em; white-space:nowrap;}
.mypage-counsel-head .status-badge.is-checking {background:#FFF4E5; color:#D97642;}
.mypage-counsel-head .status-badge.is-answered {background:#E8F4EC; color:#2F7D4B;}
.mypage-counsel-body {padding:20px;}
.mypage-counsel-body p {margin:0 0 0; color:#2A2A2A; font-size:16px; font-weight:400; line-height:1.75em; word-break:keep-all;}
.mypage-counsel-body .counsel-block + .counsel-block {margin-top:20px; padding-top:20px; border-top:1px solid #E5E5E5;}
.mypage-counsel-detail {padding-bottom:20px; border-bottom:1px solid #E5E5E5;}
.mypage-counsel-detail .counsel-block + .counsel-block {margin-top:20px; padding-top:20px; border-top:1px solid #E5E5E5;}
.mypage-counsel.is-answered .counsel-reply {padding-top:20px;}
.mypage-counsel .counsel-reply .reply-label {margin-bottom:0; color:#EF4444; font-size:16px; font-weight:400; line-height:1.75em;}
.mypage-counsel .counsel-reply p + p {margin-top:0;}

/* 1:1문의 목록 */
.inquiry-list {border:1px solid #E5E5E5; border-radius:10px; background:#fff; overflow:hidden;}
.inquiry-list table {width:100%; border-collapse:collapse; border-spacing:0;}
.inquiry-list table thead th {height:auto; padding:15px 10px; border-bottom:2px solid #E5E7EB; background:#F9FAFB; color:#2A2A2A; font-size:14px; font-weight:600; line-height:1.5em; letter-spacing:-0.01em; text-align:center;}
.inquiry-list table tbody td {height:66px; padding:15px 10px; color:#2A2A2A; font-size:14px; font-weight:400; line-height:1.5em; text-align:center; border-bottom:1px solid #E5E7EB;}
.inquiry-list table tbody td.subject {font-size:16px; text-align:center;}
.inquiry-list table tbody td.subject a {color:#2A2A2A; text-decoration:none;}
.inquiry-list table tbody td.state-wait {color:#EF4444;}
.inquiry-list table tbody td.state-done {color:#666;}
.inquiry-list table tbody td:last-child {color:#666;}
.inquiry-list table tbody tr:hover td {background:#FAFAFA;}
.inquiry-list table tbody tr:last-child td {border-bottom:0;}
.inquiry-list-m {display:none; border:1px solid #E5E5E5; border-radius:10px; background:#fff; overflow:hidden;}
.inquiry-list-m li {padding:16px; border-bottom:1px solid #E5E7EB;}
.inquiry-list-m li:last-child {border-bottom:0;}
.inquiry-list-m .top {display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:8px;}
.inquiry-list-m .category {color:#2A2A2A; font-size:13px; font-weight:400; line-height:1.5em;}
.inquiry-list-m .state {font-size:13px; font-weight:400; line-height:1.5em;}
.inquiry-list-m .state-wait {color:#EF4444;}
.inquiry-list-m .state-done {color:#666;}
.inquiry-list-m .tit {font-size:16px; font-weight:500; line-height:1.5em; color:#2A2A2A;}
.inquiry-list-m .tit a {color:#2A2A2A; text-decoration:none; word-break:keep-all;}
.inquiry-list-m .info {display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin-top:8px; color:#666; font-size:13px; font-weight:400; line-height:1.5em;}

/* 1:1문의 상세 */
.inquiry-view {border:1px solid #E5E5E5; border-radius:10px; background:#fff; overflow:hidden;}
.inquiry-view-head {display:flex; flex-direction:column; gap:12px; padding:24px 32px; border-bottom:1px solid #E5E5E5;}
.inquiry-view-head .status-badge {display:inline-flex; align-items:center; justify-content:center; align-self:flex-start; min-height:22px; padding:3px 7px; border-radius:5px; font-size:13px; font-weight:400; line-height:1.23em; white-space:nowrap;}
.inquiry-view-head .status-badge.is-answered {background:#E8F4EC; color:#2F7D4B;}
.inquiry-view-head .status-badge.is-wait {background:#FFF4E5; color:#EF4444;}
.inquiry-view-head .tit {margin:0; font-size:24px; font-weight:700; line-height:1.33em; color:#2A2A2A; word-break:keep-all;}
.inquiry-view-head .info {display:flex; flex-wrap:wrap; align-items:center; gap:24px;}
.inquiry-view-head .date {display:inline-flex; align-items:center; gap:6px; color:#666; font-size:13px; font-weight:400; line-height:1.38em;}
.inquiry-view-head .date time {font-style:normal;}
.inquiry-view-question {padding:40px 32px; border-bottom:1px solid #E5E5E5;}
.inquiry-view .section-tit {position:relative; margin:0 0 16px; padding-left:14px; font-size:16px; font-weight:700; line-height:1.5em; color:#2A2A2A;}
.inquiry-view .section-tit::before {content:''; position:absolute; left:0; top:9px; width:6px; height:6px; border-radius:50%; background:var(--color-primary);}
.inquiry-view-answer .section-tit {display:inline-flex; align-items:center; gap:8px; margin:0; padding-left:0;}
.inquiry-view-answer .section-tit::before {display:none;}
.inquiry-view-answer .section-icon {display:flex; flex-shrink:0; align-items:center; justify-content:center; width:20px; height:20px;}
.inquiry-view .section-body p {margin:0 0 1.75em; color:#2A2A2A; font-size:16px; font-weight:400; line-height:1.75em; word-break:keep-all;}
.inquiry-view .section-body p:last-child {margin-bottom:0;}
.inquiry-view-answer {padding:40px 32px; background:#FAFAFA; border-bottom:1px solid #E5E5E5;}
.inquiry-view.is-wait .inquiry-view-answer {display:none;}
.inquiry-view-answer .answer-head {display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:16px;}
.inquiry-view-answer .answer-date {color:#999; font-size:13px; font-weight:400; line-height:1.38em;}
.inquiry-view-answer .answer-box {padding:25px; border:1px solid #E5E5E5; border-radius:10px; background:#fff;}
.inquiry-view-answer .answer-box p {margin:0 0 1.75em; color:#2A2A2A; font-size:16px; font-weight:400; line-height:1.75em; word-break:keep-all;}
.inquiry-view-answer .answer-box p:last-child {margin-bottom:0;}
.inquiry-view-foot {display:flex; justify-content:center; padding:24px 32px;}

/* 1:1문의 작성 */
.inquiry-form-wrap {border-radius:10px; border:1px solid #E5E5E5; background:#FFF; padding:var(--space-50);}
.inquiry-form {display:flex; flex-direction:column; align-items:center; gap:30px; max-width:780px; margin:0 auto;}
.inquiry-form-notice {width:100%; margin:0; font-size:15px; font-weight:400; line-height:1.2em; color:#111; word-break:keep-all;}
.inquiry-form-notice em {font-style:normal; color:#EF4444;}
.inquiry-form-fields {display:grid; grid-template-columns:1fr; gap:20px; width:100%;}
.inquiry-form .form-field {display:grid; grid-template-columns:1fr; gap:4px;}
.inquiry-form .form-field--type {gap:10px; max-width:393px;}
.inquiry-form .form-label {font-size:15px; font-weight:500; line-height:normal; color:#555;}
.inquiry-form .form-label .is-req {color:#EF4444;}
.inquiry-form .input {width:100%; background-color:#fff;}
.inquiry-form textarea.input {min-height:215px; line-height:1.6em;}
.inquiry-form .form-field-row {display:flex; align-items:center; gap:10px;}
.inquiry-form .form-field-row .input {flex:1; min-width:0;}
.inquiry-form .form-field-row .btn-pack.medium {flex-shrink:0; min-width:100px;}
.inquiry-form-submit {display:flex; justify-content:center; width:100%;}
.inquiry-form-submit .btn-pack.large {min-width:180px;}

/* 회원정보 수정 */
.mypage-info-form {display:grid; grid-template-columns:1fr; gap:var(--space-50);}
.mypage-info-box {display:grid; grid-template-columns:1fr; gap:25px; padding:21px 31px; border:1px solid #E5E7EB; border-radius:10px; background:#fff;}
.mypage-info-tit {margin:0; font-size:18px; font-weight:600; line-height:normal; color:#2A2A2A;}
.mypage-info-fields {display:grid; grid-template-columns:1fr; gap:20px;}
.mypage-info-form .form-row--2 {gap:20px;}
.mypage-info-form .form-field {gap:4px;}
.mypage-info-form .form-label {font-size:15px; font-weight:500; line-height:normal; color:#2A2A2A;}
.mypage-info-form .form-field .input{background-color:#F9FAFB; color:rgba(0, 0, 0, 0.5);}
.mypage-info-form .form-field .input::placeholder {color:rgba(0, 0, 0, 0.5);}
.mypage-info-addr {display:grid; grid-template-columns:1fr; gap:10px;}
.mypage-info-addr-row {display:flex; align-items:flex-end; gap:10px;}
.mypage-info-addr-row .input {flex:1; min-width:0; max-width:480px;}
.mypage-info-addr > .input {max-width:480px;}
.mypage-info-form .form-addr-btn {flex-shrink:0; min-width:177px; height:42px; border-radius:10px;}
.mypage-info-type {display:flex; flex-wrap:wrap; align-items:center; gap:30px; min-height:39px;}
.mypage-info-type .radiobox input + label:before {border-color:#D1D5DB;}
.mypage-info-type .radiobox input:checked + label:before {border-color:#2563EB; background-image:url('/html/front/images/bbs/radiobox2.svg');}
.mypage-info-actions {display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:var(--space-30);}