/* ============ 2026-10-03: 1:1 문의 리디자인 (FAQ 스타일과 통일, page.css의 cd-faq-* 재사용) ============ */
.cd-qna {--cd-pri:#4f6bed; --cd-pri-d:#3d57d6; --cd-pri-l:#eef1fe; --cd-line:#e6e8ef; --cd-ink:#1f2433; --cd-sub:#6b7280;
    --cd-ok:#12a150; --cd-ok-l:#e7f7ee; --cd-wait:#c27803; --cd-wait-l:#fff5e1;
    width:100%; max-width:56rem; height:auto !important; overflow:visible !important; padding-bottom:calc(var(--bs-s40) + env(safe-area-inset-bottom)) !important}
.cd-qna h3 + .cnt {display:none}
.cd-qna .cd-btn-primary {display:inline-flex; align-items:center; justify-content:center; gap:7px; background:var(--cd-pri) !important; border:1px solid var(--cd-pri) !important; color:#fff !important; border-radius:12px !important; font-weight:700; padding:0 20px !important; height:50px; white-space:nowrap; transition:background .15s, transform .05s, box-shadow .15s; box-shadow:0 6px 16px rgba(79,107,237,.22)}
.cd-qna .cd-btn-primary:hover {background:var(--cd-pri-d) !important; border-color:var(--cd-pri-d) !important}
.cd-qna .cd-btn-primary:active {transform:scale(.98)}
.cd-qna .cd-btn-primary:focus-visible, .cd-qna .cd-btn-ghost:focus-visible, .cd-qna-item .tit:focus-visible, .cd-qna .cd-faq-chip:focus-visible {outline:3px solid rgba(79,107,237,.35); outline-offset:2px}
.cd-qna .cd-btn-primary[disabled] {opacity:.65; pointer-events:none; box-shadow:none}
.cd-qna .cd-btn-ghost {display:inline-flex; align-items:center; justify-content:center; gap:6px; height:50px; padding:0 18px !important; border-radius:12px !important; border:1px solid var(--cd-line) !important; background:#fff !important; color:#3b4152 !important; font-weight:600}
.cd-qna .cd-btn-ghost:hover {border-color:#c9d0f6 !important; color:var(--cd-pri) !important}

/* hero */
.cd-qna-hero .cd-faq-lead b {color:var(--cd-ink); font-weight:700}
.cd-qna-hero-actions {display:flex; gap:10px; max-width:40rem; margin:0 auto; align-items:stretch}
.cd-qna-hero-actions .cd-qna-search {flex:1 1 auto; max-width:none; margin:0}
.cd-qna-hero-actions .cd-qna-new {flex:0 0 auto}
.cd-qna-admin-tag {display:inline-flex; align-items:center; gap:6px; margin-top:12px; font-size:.8125rem; color:var(--cd-sub)}
.cd-qna-admin-tag a {color:var(--cd-pri) !important; font-weight:700; text-decoration:underline; text-underline-offset:2px}

/* 안내 배너 */
.cd-qna-notice {display:flex; align-items:flex-start; gap:10px; margin:0 0 14px; padding:14px 16px; border-radius:14px; background:var(--cd-ok-l); border:1px solid #bfe8cf; color:#0f5132; font-size:.9375rem; line-height:1.55}
.cd-qna-notice[hidden] {display:none}
.cd-qna-notice.is-warn {background:var(--cd-wait-l); border-color:#f5dca8; color:#7a4a00}
.cd-qna-notice > i {font-size:1.15rem; line-height:1.3}
.cd-qna-notice > div {flex:1 1 auto}
.cd-qna-notice b {display:block}
.cd-qna-notice-x {flex:0 0 auto; width:30px; height:30px; margin:-4px -6px 0 0; border:0; background:transparent; color:inherit; opacity:.6; border-radius:50%}
.cd-qna-notice-x:hover {opacity:1; background:rgba(0,0,0,.05)}

/* 목록 */
.cd-qna .cd-qna-chips {margin-bottom:10px}
.cd-qna .cd-faq-chip span:empty {display:none}
.cd-qna-item .tit {align-items:center}
.cd-qna-badge {flex:0 0 auto; display:inline-flex; align-items:center; gap:4px; height:28px; padding:0 10px; border-radius:999px; font-size:.75rem; font-weight:700; white-space:nowrap}
.cd-qna-badge.is-wait {background:var(--cd-wait-l); color:var(--cd-wait)}
.cd-qna-badge.is-done {background:var(--cd-ok-l); color:var(--cd-ok)}
.cd-qna-head {flex:1 1 auto; min-width:0; display:flex; flex-direction:column; gap:3px}
.cd-qna-head .cd-faq-qtext {white-space:nowrap; overflow:hidden; text-overflow:ellipsis}
.cd-qna-item.show .cd-qna-head .cd-faq-qtext {white-space:normal}
.cd-qna-meta {display:flex; flex-wrap:wrap; align-items:center; font-size:.8125rem; color:var(--cd-sub)}
.cd-qna-meta > span:not(:last-child)::after {content:"·"; margin:0 7px; color:#c3c7d1}
.cd-qna-meta .cd-qna-cate {color:var(--cd-pri); font-weight:600}
.cd-qna-body {margin:0 20px; padding:4px 0 18px; border-top:1px dashed #e3e6ee}
.cd-qna-loading {padding:18px 0 6px; color:var(--cd-sub); font-size:.875rem}
.cd-qna-block {display:flex; gap:12px; padding-top:16px}
.cd-qna-block + .cd-qna-block {margin-top:14px; padding-top:16px; border-top:1px solid #f0f1f5}
.cd-qna-block > div {flex:1 1 auto; min-width:0}
.cd-qna-block .cd-qna-blabel {display:block; margin-bottom:4px; font-size:.75rem; font-weight:700; color:var(--cd-sub)}
.cd-qna-text {color:#3b4152; font-size:.9375rem; line-height:1.75; word-break:keep-all; overflow-wrap:anywhere}
.cd-qna-text img {max-width:100%; height:auto}
.cd-qna-block.is-answer .cd-faq-amark {background:var(--cd-pri); color:#fff}
.cd-qna-block.is-answer .cd-qna-text {background:#f7f8fe; border:1px solid #e6e9fb; border-radius:12px; padding:12px 14px}
.cd-qna-wait {display:flex; align-items:center; gap:8px; padding:12px 14px; border-radius:12px; background:#fafafb; border:1px dashed #e0e3ea; color:var(--cd-sub); font-size:.875rem}
.cd-qna-flist {display:flex; flex-wrap:wrap; gap:8px; margin-top:10px}
.cd-qna-flist a {display:inline-flex; align-items:center; gap:6px; max-width:100%; padding:6px 10px; border-radius:10px; background:#f4f5f9; color:#3b4152 !important; font-size:.8125rem}
.cd-qna-flist a span {overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
.cd-qna-flist a:hover {background:var(--cd-pri-l); color:var(--cd-pri) !important}
.cd-qna-actions {display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; margin-top:16px}
.cd-qna-actions a {display:inline-flex; align-items:center; gap:6px; height:38px; padding:0 14px; border-radius:10px; border:1px solid var(--cd-line); background:#fff; color:#3b4152 !important; font-size:.875rem; font-weight:600}
.cd-qna-actions a:hover {border-color:#c9d0f6; color:var(--cd-pri) !important}
.cd-qna-actions a.is-admin {border-color:#d9def9; background:var(--cd-pri-l); color:var(--cd-pri) !important}
.cd-qna-empty-btns {display:flex; justify-content:center; flex-wrap:wrap; gap:8px; margin-top:18px}
.cd-qna-empty-btns .btn {height:46px}
.cd-qna-empty[hidden], .cd-qna-paging[hidden], .cd-qna [data-view][hidden] {display:none !important}

/* 페이징 */
.cd-qna-paging {display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:18px; padding:0 !important; position:static}
.cd-qna-paging .p_row {float:none !important; width:auto !important; padding:0 !important; order:1}
.cd-qna-paging .p_row select {height:38px; min-width:108px; border-radius:10px; border-color:var(--cd-line); font-size:.875rem}
.cd-qna-paging ul.paging {order:2; display:flex !important; justify-content:center; gap:4px; height:auto !important; margin:0; padding:0; width:auto !important; flex:1 1 auto}
.cd-qna-paging li {padding:0 !important}
.cd-qna-paging .paging a {display:inline-flex; align-items:center; justify-content:center; min-width:36px; width:auto !important; height:36px !important; line-height:1 !important; padding:0 6px; border-radius:10px; border:1px solid transparent; color:#3b4152; font-size:.875rem; cursor:pointer}
.cd-qna-paging .paging a:hover {background:#f1f3fb}
.cd-qna-paging .paging a.active {background:var(--cd-pri) !important; color:#fff !important; font-weight:700}
.cd-qna-paging > p {order:3; position:static !important; float:none !important; margin:0; padding:0 !important; font-size:.8125rem; color:var(--cd-sub); white-space:nowrap}

/* 작성 화면 */
.cd-qna-back {display:inline-flex; align-items:center; gap:6px; margin:0 0 12px; padding:6px 2px; color:var(--cd-sub) !important; font-size:.875rem; font-weight:600}
.cd-qna-back:hover {color:var(--cd-pri) !important}
.cd-qna-card {background:#fff; border:1px solid var(--cd-line); border-radius:20px; padding:28px 28px 24px; box-shadow:0 8px 28px rgba(31,36,51,.05)}
.cd-qna-card-head {margin-bottom:22px; padding-bottom:18px; border-bottom:1px solid #f0f1f5}
.cd-qna-card-head h4 {margin:0 0 6px; font-size:1.25rem; font-weight:800; color:var(--cd-ink); letter-spacing:-.01em}
.cd-qna-card-head p {margin:0; color:var(--cd-sub); font-size:.875rem}
.cd-qna-field {margin-bottom:22px}
.cd-qna-label {display:block; margin-bottom:8px; font-size:.9375rem; font-weight:700; color:var(--cd-ink)}
.cd-qna-label em {font-style:normal; color:#e5484d; margin-left:2px}
.cd-qna-label small {font-weight:500; color:var(--cd-sub)}
.cd-qna-label-row {display:flex; align-items:baseline; justify-content:space-between; gap:8px}
.cd-qna-count {font-size:.75rem; color:#9aa1b2}
.cd-qna-count.is-max b {color:#e5484d}
.cd-qna-form .form-control {border:1px solid #dfe3f0; border-radius:12px; padding:12px 14px; font-size:1rem; color:var(--cd-ink); background:#fff; box-shadow:none; transition:border-color .15s, box-shadow .15s}
.cd-qna-form input.form-control {height:50px}
.cd-qna-form textarea.form-control {min-height:200px; line-height:1.7; resize:vertical}
.cd-qna-form .form-control::placeholder {color:#a8aebd}
.cd-qna-form .form-control:focus {outline:none; border-color:var(--cd-pri); box-shadow:0 0 0 4px rgba(79,107,237,.15)}
.cd-qna-form .is-invalid, .cd-qna-form .is-invalid:focus {border-color:#e5484d !important; box-shadow:0 0 0 4px rgba(229,72,77,.12) !important}
.cd-qna-err {margin:6px 2px 0; font-size:.8125rem; color:#e5484d; font-weight:600}
.cd-qna-err[hidden] {display:none}
.cd-qna-seg {display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:10px; max-width:26rem}
.cd-qna-seg label {margin:0; cursor:pointer}
.cd-qna-seg input {position:absolute; opacity:0; pointer-events:none}
.cd-qna-seg span {display:flex; align-items:center; justify-content:center; gap:7px; height:50px; border-radius:12px; border:1px solid #dfe3f0; background:#fff; color:#3b4152; font-weight:600; transition:all .15s}
.cd-qna-seg label:hover span {border-color:#c9d0f6}
.cd-qna-seg input:checked + span {border-color:var(--cd-pri); background:var(--cd-pri-l); color:var(--cd-pri); box-shadow:inset 0 0 0 1px var(--cd-pri)}
.cd-qna-seg input:focus-visible + span {outline:3px solid rgba(79,107,237,.35); outline-offset:2px}
.cd-qna-seg.is-invalid span {border-color:#e5484d}
.cd-qna-drop {display:flex; align-items:center; gap:10px; margin:0; padding:14px 16px; border:1.5px dashed #cfd5ea; border-radius:12px; background:#fafbff; color:var(--cd-sub); font-size:.875rem; cursor:pointer; transition:border-color .15s, background .15s}
.cd-qna-drop:hover {border-color:var(--cd-pri); background:var(--cd-pri-l)}
.cd-qna-drop i {font-size:1.15rem; color:var(--cd-pri)}
.cd-qna-drop b {color:var(--cd-pri)}
.cd-qna-files {display:flex; flex-direction:column; gap:8px; margin-top:10px}
.cd-qna-files:empty {display:none}
.cd-qna-file {display:flex; align-items:center; gap:10px; padding:8px 8px 8px 10px; border:1px solid var(--cd-line); border-radius:12px; background:#fff}
.cd-qna-file .f_img {flex:0 0 40px; width:40px; height:40px; border-radius:8px; overflow:hidden; background:#f4f5f9; display:flex; align-items:center; justify-content:center; color:var(--cd-sub)}
.cd-qna-file .f_img img {width:100%; height:100%; object-fit:cover}
.cd-qna-file .f_name {flex:1 1 auto; min-width:0; margin:0; font-size:.875rem; color:var(--cd-ink); overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
.cd-qna-file .btn_del {flex:0 0 auto; width:36px; height:36px; border:0; border-radius:50%; background:transparent; color:#9aa1b2; display:flex; align-items:center; justify-content:center; cursor:pointer}
.cd-qna-file .btn_del:hover {background:#fdecec; color:#e5484d}
.cd-qna-submit {display:flex; gap:10px; margin-top:28px}
.cd-qna-submit .cd-qna-send {flex:1 1 auto; height:56px; font-size:1.0625rem}
.cd-qna-submit .cd-qna-cancel {flex:0 0 auto; height:56px; min-width:96px}
.cd-qna-writeview .cd-qna-notice {margin-top:0}

@media (max-width:640px){
    .cd-qna {padding:14px 14px calc(28px + env(safe-area-inset-bottom)) !important}
    .cd-qna-hero {padding:22px 16px 18px; border-radius:18px; margin-bottom:12px}
    .cd-qna-hero h3 {font-size:1.375rem}
    .cd-qna-hero .cd-faq-lead {font-size:.875rem; margin-bottom:14px; word-break:keep-all}
    .cd-qna-hero-actions {flex-direction:column; gap:8px}
    .cd-qna-hero-actions .cd-qna-search input {height:48px; font-size:16px}
    .cd-qna-hero-actions .cd-qna-new {height:48px; width:100%}
    .cd-qna .cd-qna-chips {flex-wrap:nowrap; overflow-x:auto; margin:0 -14px 6px; padding:2px 14px 6px; scrollbar-width:none}
    .cd-qna .cd-qna-chips::-webkit-scrollbar {display:none}
    .cd-qna .cd-faq-chip {flex:0 0 auto; height:38px}
    .cd-qna-item {border-radius:14px}
    .cd-qna-item .tit {padding:14px 14px; gap:10px; min-height:64px; flex-wrap:wrap}
    .cd-qna-item .tit .cd-qna-badge {order:0; height:24px; padding:0 8px; font-size:.6875rem}
    .cd-qna-item .tit .cd-faq-ico {order:1; margin-left:auto}
    .cd-qna-item .tit .cd-qna-head {order:2; flex:1 0 100%}
    .cd-qna-head .cd-faq-qtext {font-size:.9375rem; white-space:normal; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical}
    .cd-qna-item.show .cd-qna-head .cd-faq-qtext {-webkit-line-clamp:unset; display:block}
    .cd-qna-body {margin:0 14px; padding-bottom:16px}
    .cd-qna-block {gap:10px}
    .cd-qna-actions {justify-content:stretch}
    .cd-qna-actions a {flex:1 1 auto; justify-content:center; height:44px}
    .cd-qna-paging {flex-wrap:wrap; justify-content:center}
    .cd-qna-paging ul.paging {order:1; flex:1 0 100%}
    .cd-qna-paging .p_row {order:2}
    .cd-qna-paging > p {order:3}
    .cd-qna-card {padding:20px 16px 18px; border-radius:16px}
    .cd-qna-card-head {margin-bottom:18px; padding-bottom:14px}
    .cd-qna-card-head h4 {font-size:1.125rem}
    .cd-qna-field {margin-bottom:18px}
    .cd-qna-form .form-control {font-size:16px}
    .cd-qna-seg {max-width:none}
    .cd-qna-submit {flex-direction:column; gap:6px; margin-top:22px}
    .cd-qna-submit .cd-qna-send, .cd-qna-submit .cd-qna-cancel {width:100%; height:54px}
    .cd-qna-submit .cd-qna-cancel {height:46px; border:0 !important; background:transparent !important; color:var(--cd-sub) !important}
}
@media (prefers-reduced-motion: reduce){ .cd-qna * {transition:none !important} }
.cd-qna .cd-qna-chips[hidden], .cd-qna .cd-qna-status:empty {display:none !important}
.cd-qna-filehint {display:flex; gap:10px; align-items:flex-start; margin:0; padding:12px 14px; border-radius:12px; background:#f7f8fb; border:1px solid var(--cd-line); color:var(--cd-sub); font-size:.875rem; line-height:1.6; word-break:keep-all}
.cd-qna-filehint i {color:var(--cd-pri); font-size:1rem; line-height:1.5}
.cd-qna-filehint a {color:var(--cd-pri) !important; font-weight:600; overflow-wrap:anywhere}
.cd-qna-flist .cd-qna-fname {display:inline-flex; align-items:center; gap:6px; max-width:100%; padding:6px 10px; border-radius:10px; background:#f4f5f9; color:#3b4152; font-size:.8125rem}
.cd-qna > section {padding:0 !important; margin:0}
.cd-qna-form .cd-qna-seg.is-invalid {border:0 !important; box-shadow:none !important}
