/* BASIC css start */
/* =========================================================
   Q&A 게시판 리뉴얼 - 공통 스타일 (목록/보기/쓰기/비밀번호 동일)
   ========================================================= */
.qa-board { --qa-main:#4f8f9c; --qa-main-dk:#3c7480; --qa-point:#a9ced7; --qa-soft:#f2f8f9; --qa-bg:#f7f8f9; --qa-line:#e7eaec; --qa-line-dk:#d3d8dc; --qa-txt:#1f2326; --qa-txt2:#4a5056; --qa-txt3:#8b9298; --qa-red:#e0565b;
    max-width:1260px; margin:0 auto; padding:0 0 90px; color:var(--qa-txt2); font-size:15px; line-height:1.6; letter-spacing:-0.2px; word-break:keep-all; }
.qa-board * { box-sizing:border-box; }
.qa-board a { color:inherit; font-size:inherit; }
.qa-board img { max-width:100%; vertical-align:middle; }
.qa-board fieldset { border:0; }
.qa-board legend, .qa-board caption { display:none; }
.qa-board .blind { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); }

/* 머리말 */
.qa-board .qa-head { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; padding:44px 0 22px; border-bottom:2px solid var(--qa-txt); }
.qa-board .qa-head h2 { margin:0; font-size:30px; font-weight:700; color:var(--qa-txt); line-height:1.2; letter-spacing:-0.6px; }
.qa-board .qa-head h2::after { content:""; display:block; width:28px; height:4px; margin-top:12px; border-radius:2px; background:var(--qa-point); }
.qa-board .qa-head p { margin-top:10px; font-size:15px; color:var(--qa-txt3); }

/* 버튼 */
.qa-board .qa-btn { display:inline-flex; align-items:center; justify-content:center; gap:6px; height:48px; min-width:110px; padding:0 24px; border:1px solid var(--qa-line-dk); border-radius:8px; background:#fff; color:var(--qa-txt); font-size:15px; font-weight:500; line-height:1; text-decoration:none; cursor:pointer; transition:background .2s, border-color .2s, color .2s; }
.qa-board .qa-btn:hover { border-color:var(--qa-txt); }
.qa-board .qa-btn-primary { background:var(--qa-main); border-color:var(--qa-main); color:#fff; }
.qa-board .qa-btn-primary:hover { background:var(--qa-main-dk); border-color:var(--qa-main-dk); color:#fff; }
.qa-board .qa-btn-sm { height:38px; min-width:0; padding:0 16px; font-size:14px; border-radius:6px; }
.qa-board .qa-btn svg { width:18px; height:18px; flex:none; }
.qa-board a:focus-visible, .qa-board input:focus-visible, .qa-board button:focus-visible { outline:2px solid var(--qa-main); outline-offset:2px; }

/* 입력 요소 */
.qa-board .qa-control input[type=text], .qa-board .qa-control input[type=password], .qa-board .qa-control input[type=email], .qa-board .qa-control input[type=tel], .qa-board .qa-control select, .qa-board .qa-control textarea {
    width:100%; max-width:100%; height:48px; margin:0; padding:0 14px; border:1px solid var(--qa-line-dk); border-radius:8px; background:#fff; color:var(--qa-txt); font-size:15px; line-height:46px; transition:border-color .2s, box-shadow .2s; }
.qa-board .qa-control textarea { height:auto; min-height:110px; padding:12px 14px; line-height:1.6; resize:vertical; }
.qa-board .qa-control select { padding-right:36px; }
.qa-board .qa-control input:focus, .qa-board .qa-control select:focus, .qa-board .qa-control textarea:focus { outline:none; border-color:var(--qa-main); box-shadow:0 0 0 3px rgba(79,143,156,.16); }
.qa-board .qa-control input[readonly] { background:var(--qa-bg); }
.qa-board input[type=checkbox], .qa-board input[type=radio] { width:18px; height:18px; margin:0; vertical-align:middle; accent-color:var(--qa-main); cursor:pointer; }
.qa-board .qa-check { display:inline-flex; align-items:center; gap:8px; font-size:14px; color:var(--qa-txt2); cursor:pointer; }

/* 배지 */
.qa-board .qa-badge { display:inline-flex; align-items:center; height:24px; padding:0 9px; border-radius:12px; font-size:12px; font-weight:600; line-height:1; white-space:nowrap; vertical-align:middle; }
.qa-board .qa-badge-notice { background:var(--qa-txt); color:#fff; }
.qa-board .qa-badge-reply { background:var(--qa-soft); color:var(--qa-main-dk); }
.qa-board .qa-badge-lock { gap:4px; background:var(--qa-bg); color:var(--qa-txt3); }
.qa-board .qa-badge-lock svg { width:12px; height:12px; }
.qa-board .qa-new, .qa-board .qa-hot { display:inline-flex; align-items:center; justify-content:center; height:18px; padding:0 5px; margin-left:4px; border-radius:4px; font-size:11px; font-weight:700; line-height:1; vertical-align:middle; }
.qa-board .qa-new { background:var(--qa-red); color:#fff; }
.qa-board .qa-hot { background:#fff1e6; color:#d9701f; }

/* 상품 정보 (상품 문의일 때) */
.qa-board .qa-prd { display:flex; align-items:center; gap:18px; margin-top:28px; padding:16px 20px; border:1px solid var(--qa-line); border-radius:12px; background:var(--qa-bg); }
.qa-board .qa-prd-thumb { flex:none; width:72px; height:72px; border-radius:8px; overflow:hidden; background:#fff; }
.qa-board .qa-prd-thumb img { width:100%; height:100%; object-fit:cover; }
.qa-board .qa-prd-name { font-size:16px; font-weight:500; color:var(--qa-txt); }
.qa-board .qa-prd-name a:hover { text-decoration:underline; }
.qa-board .qa-prd-price { margin-top:4px; font-size:15px; font-weight:700; color:var(--qa-main-dk); }

/* 목록 테이블 (목록/보기 하단 공용) */
.qa-board .qa-list table { width:100%; border-collapse:collapse; table-layout:fixed; }
.qa-board .qa-list thead th { height:52px; padding:0 12px; border-bottom:1px solid var(--qa-line-dk); background:#fff; color:var(--qa-txt3); font-size:14px; font-weight:500; text-align:center; }
.qa-board .qa-list thead th.qa-th-subject { text-align:left; padding-left:20px; }
.qa-board .qa-list tbody td { height:64px; padding:14px 12px; border-bottom:1px solid var(--qa-line); font-size:15px; color:var(--qa-txt3); text-align:center; vertical-align:middle; }
.qa-board .qa-list tbody tr { transition:background .15s; }
.qa-board .qa-list tbody tr:hover { background:var(--qa-soft); }
.qa-board .qa-list tbody tr.is-notice { background:#fafbfb; }
.qa-board .qa-list tbody tr.is-notice .qa-subject a { font-weight:600; }
.qa-board .qa-list td.qa-subject { text-align:left; padding-left:20px; color:var(--qa-txt); }
.qa-board .qa-subject-in { display:flex; align-items:center; flex-wrap:wrap; gap:6px; }
.qa-board .qa-subject a.qa-title { font-size:16px; color:var(--qa-txt); }
.qa-board .qa-list tbody tr:hover a.qa-title { color:var(--qa-main-dk); text-decoration:underline; text-underline-offset:3px; }
.qa-board .qa-subject .qa-prd-link { font-size:14px; color:var(--qa-main-dk); }
.qa-board .qa-subject .qa-deleted { width:100%; font-size:13px; color:var(--qa-txt3); }
.qa-board .qa-subject .qa-depth { display:inline-flex; align-items:center; }
.qa-board .qa-subject .qa-depth img[src=""] { display:none; }
.qa-board .qa-subject .qa-icon img { opacity:.55; }
.qa-board .qa-list td.qa-writer { color:var(--qa-txt2); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.qa-board .qa-list td.qa-writer img { max-height:22px; width:auto; }
.qa-board .qa-list td.qa-thumb img { width:52px; height:52px; border-radius:6px; object-fit:cover; }
.qa-board .qa-list td.qa-num { font-size:14px; }
.qa-board .qa-empty { padding:60px 0 !important; color:var(--qa-txt3); }

/* 페이지 번호 */
.qa-board .qa-paging { display:flex; justify-content:center; align-items:center; gap:6px; margin:40px 0 0; padding:0; list-style:none; }
.qa-board .qa-paging li { list-style:none; }
.qa-board .qa-paging a, .qa-board .qa-paging strong { display:inline-flex; align-items:center; justify-content:center; min-width:40px; height:40px; padding:0 6px; border-radius:20px; font-size:15px; color:var(--qa-txt2); font-weight:400; }
.qa-board .qa-paging a:hover { background:var(--qa-bg); color:var(--qa-txt); }
.qa-board .qa-paging strong { background:var(--qa-txt); color:#fff; font-weight:600; }
.qa-board .qa-paging .first a, .qa-board .qa-paging .prev a, .qa-board .qa-paging .next a, .qa-board .qa-paging .last a { border:1px solid var(--qa-line); color:var(--qa-txt3); font-size:16px; }
.qa-board .qa-paging .prev { margin-right:8px; }
.qa-board .qa-paging .next { margin-left:8px; }

/* 개인정보 수집 동의 (비회원) */
.qa-board .new-privercy-contract { margin-top:24px; padding:22px 24px; border:1px solid var(--qa-line); border-radius:12px; background:var(--qa-bg); text-align:left; }
.qa-board .new-privercy-contract > p { margin:14px 0 8px; font-size:15px; font-weight:600; color:var(--qa-txt); text-align:left; }
.qa-board .new-privercy-contract > p:first-child { margin-top:0; }
.qa-board .privercy-contract textarea { width:100% !important; height:110px; padding:12px 14px; border:1px solid var(--qa-line-dk); border-radius:8px; background:#fff; font-size:13px; line-height:1.6; color:var(--qa-txt2); resize:vertical; }
.qa-board .privercy-contract-tap { height:auto; margin-bottom:8px; }
.qa-board .privercy-contract-tap ul { display:flex; gap:6px; flex-wrap:wrap; }
.qa-board .privercy-contract-tap li a { display:inline-block; padding:8px 14px; border:1px solid var(--qa-line-dk); border-radius:18px; background:#fff; font-size:13px; color:var(--qa-txt2); }
.qa-board .privercy-contract-tap li.sel a { border-color:var(--qa-main); background:var(--qa-main); color:#fff; }
.qa-board .privercy-agree { display:flex; gap:20px; margin-top:10px; }
.qa-board .privercy-agree label { display:inline-flex; align-items:center; gap:6px; font-size:14px; color:var(--qa-txt2); cursor:pointer; }
.qa-board .privercy-contract .tbl { width:100%; border-collapse:collapse; border-top:1px solid #dadada; border-left:1px solid #dadada; }
.qa-board .privercy-contract .tbl th { background:#f0f0f0; font-size:12px; font-weight:bold; color:#3b3b3b; text-align:center; }
.qa-board .privercy-contract .tbl th, .qa-board .privercy-contract .tbl td { height:32px; padding:4px; border-right:1px solid #dadada; border-bottom:1px solid #dadada; font-size:12px; }

/* ===== 목록 페이지 ===== */
.qa-board .qa-toolbar { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:18px 0; }
.qa-board .qa-guide { display:flex; align-items:center; gap:6px; font-size:14px; color:var(--qa-txt3); }
.qa-board .qa-guide svg { width:16px; height:16px; }
.qa-board .qa-search fieldset { display:flex; align-items:center; gap:12px; }
.qa-board .qa-search-type { display:flex; padding:4px; border-radius:10px; background:var(--qa-bg); }
.qa-board .qa-search-type label { position:relative; margin:0; cursor:pointer; }
.qa-board .qa-search-type input { position:absolute; opacity:0; width:1px; height:1px; }
.qa-board .qa-search-type span { display:block; padding:0 14px; height:36px; line-height:36px; border-radius:7px; font-size:14px; color:var(--qa-txt3); transition:background .2s, color .2s; }
.qa-board .qa-search-type input:checked + span { background:#fff; color:var(--qa-txt); font-weight:600; box-shadow:0 1px 3px rgba(31,35,38,.12); }
.qa-board .qa-search-type input:focus-visible + span { outline:2px solid var(--qa-main); }
.qa-board .qa-search-box { position:relative; display:flex; align-items:center; }
.qa-board .qa-search-box input[type=text] { width:260px; height:44px; margin:0; padding:0 48px 0 16px; border:1px solid var(--qa-line-dk); border-radius:22px; background:#fff; font-size:15px; color:var(--qa-txt); line-height:42px; transition:border-color .2s, box-shadow .2s; }
.qa-board .qa-search-box input[type=text]:focus { outline:none; border-color:var(--qa-main); box-shadow:0 0 0 3px rgba(79,143,156,.16); }
.qa-board .qa-search-btn { position:absolute; right:4px; top:4px; display:flex; align-items:center; justify-content:center; width:36px; height:36px; border-radius:50%; color:var(--qa-txt2); }
.qa-board .qa-search-btn:hover { background:var(--qa-soft); color:var(--qa-main-dk); }
.qa-board .qa-search-btn svg { width:19px; height:19px; }

.qa-board .qa-oneline { display:flex; align-items:center; gap:12px; margin-bottom:10px; padding:14px 18px; border-radius:10px; background:var(--qa-soft); font-size:15px; color:var(--qa-txt); }
.qa-board .qa-oneline img { display:none; }

.qa-board .qa-list { border-top:1px solid var(--qa-txt); }
.qa-board .qa-list tbody tr.qa-row { cursor:pointer; }


/* =========================================================
   상품문의 전용 (Q&A 공통 스타일 위에 덧붙임)
   ========================================================= */
.pq-board .qa-prd { gap:20px; }
.pq-board .pq-prd-info { flex:1; min-width:0; }
.pq-board .pq-prd-label { display:inline-block; margin-bottom:4px; font-size:13px; font-weight:600; color:var(--qa-main-dk); }
.pq-board .qa-prd-name { line-height:1.45; }
.pq-board .pq-prd-go { flex:none; }
.pq-board .qa-subject .pq-prd-line { display:block; width:100%; max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:13px; }
.pq-board .qa-subject .pq-prd-line:hover { text-decoration:underline; }
.pq-board .qa-list td.qa-thumb a { display:inline-block; border-radius:6px; overflow:hidden; }
.pq-board .qa-list td.qa-thumb a:hover img { opacity:.85; }

/* BASIC css end */

