/* 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-write { max-width:900px; margin:0; }
.qa-board .qa-write fieldset { padding-top:12px; }
.qa-board .qa-row { padding:22px 0; border-bottom:1px solid var(--qa-line); }
.qa-board .qa-row-2 { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.qa-board .qa-label { display:block; margin-bottom:10px; font-size:15px; font-weight:600; color:var(--qa-txt); }
.qa-board .qa-label em { font-style:normal; color:var(--qa-red); }
.qa-board .qa-help { margin-top:8px; font-size:13px; color:var(--qa-txt3); }
.qa-board .qa-title-wrap { display:flex; gap:10px; }
.qa-board .qa-title-wrap .qa-header-sel { flex:0 0 180px; }
.qa-board .qa-title-wrap input { flex:1; }
.qa-board .qa-title-opt { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin-top:10px; }
.qa-board .qa-title-opt:empty { display:none; }
.qa-board .qa-title-opt select { width:auto; height:36px; line-height:34px; font-size:13px; }

/* 에디터 폭을 영역에 맞춤 */
.qa-board .qa-editor { width:100%; }
.qa-board .qa-editor textarea { width:calc(100% - 6px) !important; min-height:320px; padding:14px; border:1px solid var(--qa-line-dk); border-radius:8px; font-size:15px; line-height:1.7; }
.qa-board .qa-editor iframe { display:block; width:100% !important; }
.qa-board .qa-editor > table, .qa-board .qa-editor > div:not(.qa-add-info) { width:100% !important; max-width:100%; }
.qa-board .qa-add-info { margin-bottom:12px; padding:14px 16px; border-radius:8px; background:var(--qa-bg); font-size:14px; }

/* 첨부파일 */
.qa-board .qa-file { display:flex; gap:10px; }
.qa-board .qa-file input { flex:1; }
.qa-board .qa-file .qa-btn { height:48px; }

/* 비밀글 */
.qa-board .qa-row-lock { display:flex; flex-wrap:wrap; align-items:center; gap:10px 20px; }
.qa-board .qa-lock-check { padding:14px 18px; border-radius:10px; background:var(--qa-soft); font-size:15px; font-weight:500; color:var(--qa-txt); }
.qa-board .qa-lock-check span { font-weight:400; font-size:14px; color:var(--qa-txt3); }
.qa-board .qa-autolock { font-size:14px; color:var(--qa-main-dk); }
.qa-board .qa-row-lock:not(:has(*)) { display:none; }

/* 주문번호 */
.qa-board .myorder { display:flex; gap:10px; align-items:center; }
.qa-board .myorder .input-group { position:relative; flex:0 1 340px; }
.qa-board .myorder .input-group input[type=text] { width:100%; padding-right:40px; }
.qa-board .myorder .input-group input::-ms-clear { display:none; }
.qa-board .myorder #ordernumclear { position:absolute; right:8px; top:50%; transform:translateY(-50%); display:none; width:26px; height:26px; line-height:24px; border-radius:50%; background:var(--qa-bg); font-size:18px; color:var(--qa-txt3); text-align:center; cursor:pointer; }
.qa-board .myorder .qa-btn { height:48px; }

/* 주문내역 조회 팝업 */
.qa-board #myorderlayer { display:none; position:fixed; top:50%; left:50%; z-index:9999; width:720px; max-width:calc(100vw - 40px); max-height:80vh; overflow-y:auto; transform:translate(-50%,-50%); padding-bottom:28px; border:0; border-radius:16px; background:#fff; box-shadow:0 0 0 100vmax rgba(20,24,27,.5), 0 20px 50px rgba(0,0,0,.2); }
.qa-board #myorderlayer .l-close { position:absolute; top:18px; right:18px; width:36px; height:36px; border-radius:50%; background:none; font-size:26px; line-height:34px; text-align:center; text-indent:0; color:var(--qa-txt2); }
.qa-board #myorderlayer .l-close:hover { background:var(--qa-bg); }
.qa-board #myorderlayer .tit { height:auto; padding:26px 30px 18px; line-height:1.3; border-bottom:1px solid var(--qa-line); font-size:20px; font-weight:700; color:var(--qa-txt); }
.qa-board #myorderlayer .cnt { padding:22px 30px 0; }
.qa-board #myorderlayer .cnt .cnt-tab { display:flex; gap:4px; height:auto; margin:0 0 20px; padding:4px; border-radius:10px; background:var(--qa-bg); }
.qa-board #myorderlayer .cnt .cnt-tab li { flex:1; float:none; width:auto; height:auto; margin:0; border:0; background:none; }
.qa-board #myorderlayer .cnt .cnt-tab li a { display:block; height:38px; line-height:38px; border-radius:7px; font-size:14px; color:var(--qa-txt3); text-align:center; }
.qa-board #myorderlayer .cnt .cnt-tab li.now { border:0; background:none; }
.qa-board #myorderlayer .cnt .cnt-tab li.now a { background:#fff; color:var(--qa-txt); font-weight:600; box-shadow:0 1px 3px rgba(31,35,38,.12); }
.qa-board #myorderlayer .cnt table { width:100%; border-collapse:collapse; border-top:1px solid var(--qa-txt); }
.qa-board #myorderlayer .cnt table thead th { padding:12px 0; border-bottom:1px solid var(--qa-line-dk); background:#fff; font-size:14px; font-weight:500; color:var(--qa-txt3); }
.qa-board #myorderlayer .cnt table tbody td { padding:12px 0; border-bottom:1px solid var(--qa-line); font-size:14px; color:var(--qa-txt2); }
.qa-board #myorderlayer .cnt .prd-blue { color:var(--qa-main-dk); }
.qa-board #myorderlayer .qa-paging { margin-top:20px; }
.qa-board #myorderlayer .qa-paging a, .qa-board #myorderlayer .qa-paging strong { min-width:34px; height:34px; font-size:14px; }

/* 하단 버튼 */
.qa-board .qa-write-btns { display:flex; justify-content:center; gap:10px; margin-top:40px; }
.qa-board .qa-write-btns .qa-btn { min-width:160px; height:54px; font-size:16px; }


/* =========================================================
   상품문의 전용 (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 .pq-noprd { margin-top:28px; padding:16px 20px; border:1px dashed var(--qa-line-dk); border-radius:12px; font-size:14px; color:var(--qa-txt3); }
.pq-board .pq-noprd strong { color:var(--qa-txt); font-weight:600; }
.pq-board .pq-guide { margin:16px 0 0; padding:18px 22px; border-radius:12px; background:var(--qa-soft); }
.pq-board .pq-guide li { position:relative; padding-left:14px; list-style:none; font-size:14px; line-height:1.9; color:var(--qa-txt2); }
.pq-board .pq-guide li::before { content:""; position:absolute; left:0; top:11px; width:5px; height:5px; border-radius:50%; background:var(--qa-main); }
.pq-board .pq-guide strong { font-weight:600; color:var(--qa-txt); }

/* BASIC css end */

