/* ── 고객센터(CS) Thymeleaf 페이지 ──────────────────────────────────
   기존 CS 클래스(cs-nav, notice_board, cs-faq, question_box 등)를 그대로
   재사용하고, th 페이지 컨테이너 보정과 줄바꿈 처리만 추가한다.
   (원본 JSP는 fn:replace로 <br/>를 주입 → th에서는 pre-line으로 대체) */

.toolon-cs-page .notice_detail .desc,
.toolon-cs-page .notice_title .text,
.toolon-cs-page .cs-faq__contents-desc-answer-area {
    white-space: pre-line;
}

/* 마이페이지(.toolon-container 1248px)와 좌우 폭 통일 — CS도 동일 컨테이너 폭/정렬 */
.toolon-cs-page .wid_1000 {
    width: 1248px;
    max-width: calc(100% - 40px);
    margin: 0 auto;
}

/* ══════════════════════════════════════════════════════════════════
   툴ON 소식(notice) — 시안 테이블 디자인 (행 클릭 시 상세 펼침)
   ══════════════════════════════════════════════════════════════════ */
/* qna 과거문의 목록: 레거시 mt_notice 고정폭/여백 보정 (헤더↔폼 빈공간 제거) */
.toolon-cs-page .toolon-qna-board { margin: 0 0 22px; }
.toolon-cs-page .toolon-qna-board .mt_notice { width: 100%; margin: 0; padding: 0; }

/* 고객센터 공통 페이지 헤더 (intro/notice/faq/qna 공용) */
.toolon-cs-head { display: flex; align-items: flex-end; justify-content: space-between; flex-wrap: wrap; gap: 12px; margin: 0 0 22px; }
.toolon-cs-head h1 { margin: 0; font-size: 28px; font-weight: 900; letter-spacing: -1px; color: var(--toolon-primary); }
.toolon-cs-head p { margin: 6px 0 0; color: var(--toolon-slate); font-size: 14px; }

.toolon-notice-wrap { width: 100%; }
.toolon-notice-table { width: 100%; border-collapse: collapse; background: #fff; table-layout: fixed; }
.toolon-notice-table .c-num { width: 80px; }
.toolon-notice-table .c-date { width: 130px; }
.toolon-notice-table th {
    height: 46px; background: var(--toolon-soft); border-top: 2px solid var(--toolon-primary); border-bottom: 1px solid #E5E9EF;
    font-size: 13px; font-weight: 800; color: #475569; text-align: center; vertical-align: middle; letter-spacing: -0.2px;
    padding: 0 10px;
}
.toolon-notice-table td { vertical-align: middle; }
.toolon-notice-table th.subject { text-align: left; padding-left: 14px; }
.toolon-notice-table td {
    border-bottom: 1px solid #EEF2F7; padding: 14px 10px; text-align: center; font-size: 14px; color: #475569;
    overflow: hidden; text-overflow: ellipsis;
}
.toolon-notice-table td.subject { text-align: left; }
.toolon-notice-table td.date { color: #94A3B8; font-size: 13px; }

.toolon-notice-row { cursor: pointer; transition: background 0.12s; }
.toolon-notice-row:hover { background: #FFF7ED; }
.toolon-notice-row.is-open { background: var(--toolon-soft); }
.toolon-notice-title { font-weight: 600; color: var(--toolon-primary); }
.toolon-notice-row:hover .toolon-notice-title { color: var(--toolon-point); }
.toolon-notice-new {
    display: inline-block; margin-right: 8px; padding: 2px 7px; border-radius: 999px;
    background: var(--toolon-point); color: #fff; font-size: 10px; font-weight: 800; vertical-align: 1px;
}
.toolon-notice-empty td { padding: 56px 0; color: #94A3B8; text-align: center; }

.toolon-notice-detail > td { padding: 0; border-bottom: 1px solid #EEF2F7; background: #FBFCFE; text-align: left; }
.toolon-notice-detail-inner {
    display: none; padding: 20px 18px; font-size: 14px; line-height: 1.75; color: #374151; white-space: pre-line;
}
.toolon-notice-detail-inner img { max-width: 100%; height: auto; }

.toolon-notice-count { margin-top: 16px; text-align: right; font-size: 13px; color: var(--toolon-slate); }
.toolon-notice-count strong { color: var(--toolon-primary); font-weight: 800; }

@media (max-width: 768px) {
    .toolon-cs-head h1 { font-size: 22px; }
    .toolon-notice-table .c-num { width: 46px; }
    .toolon-notice-table .c-date { width: 84px; }
    .toolon-notice-table th, .toolon-notice-table td { font-size: 12.5px; padding: 11px 5px; }
    .toolon-notice-table th.subject { padding-left: 8px; }
    .toolon-notice-table td.date { font-size: 11.5px; }
    .toolon-notice-new { margin-right: 5px; padding: 1px 5px; }
    .toolon-notice-detail-inner { padding: 16px 12px; font-size: 13px; }
}

/* 공지 표 모바일 카드화 (≤768) — 같은 table 소스를 CSS로 in-place 카드화.
   아코디언(toolonNoticeToggle) 마크업/JS/selector 무변경. 시각 톤은 1:1문의 카드와 통일. */
@media (max-width: 768px) {
    .toolon-notice-table,
    .toolon-notice-table tbody { display: block; width: 100%; }
    .toolon-notice-table thead { display: none; }

    /* 제목 행 → 카드 */
    .toolon-notice-row {
        display: block; box-sizing: border-box; position: relative;
        margin-bottom: 10px; padding: 13px 15px 12px;
        border: 1px solid #E5E9EF; border-radius: 8px; background: #fff;
    }
    .toolon-notice-row:hover { background: #fff; }
    .toolon-notice-row.is-open {
        margin-bottom: 0; border-color: var(--toolon-point); background: #fff;
        border-bottom-left-radius: 0; border-bottom-right-radius: 0;
    }
    .toolon-notice-row > td {
        display: block; padding: 0; border: 0; text-align: left;
        font-size: 14px; overflow: visible; text-overflow: clip;
    }
    .toolon-notice-row > td.num { display: none; }        /* 순번은 모바일에서 의미 없음 */
    .toolon-notice-row > td.subject {
        display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 6px;
    }
    .toolon-notice-row .toolon-notice-title {
        font-size: 14.5px; font-weight: 700; line-height: 1.45; word-break: keep-all;
    }
    .toolon-notice-row > td.date {
        margin-top: 8px; color: var(--toolon-slate); font-size: 12px;
    }
    .toolon-notice-row > td.date::before {
        content: "작성일"; display: inline-block; margin-right: 6px;
        color: #94A3B8; font-weight: 800;
    }

    /* 아코디언 상세 — 펼쳐졌을 때만 카드 하단에 연결되는 테두리(닫힘 시 빈 줄 방지) */
    .toolon-notice-detail { display: block; }
    .toolon-notice-detail > td { display: block; padding: 0; border: 0; background: transparent; }
    .toolon-notice-detail.is-open > td {
        border: 1px solid var(--toolon-point); border-top: 0; background: #FBFCFE;
        border-bottom-left-radius: 8px; border-bottom-right-radius: 8px;
    }
    .toolon-notice-detail.is-open > td .toolon-notice-detail-inner { padding: 14px 15px; }

    /* 빈 목록 */
    .toolon-notice-empty { display: block; }
    .toolon-notice-empty td { display: block; border: 0; padding: 46px 18px; }
}

/* 모바일: wid_1000 고정폭(1000px) → 100% 재설정 (바텀네비 fixed 오작동 방지) */
@media (max-width: 1024px) {
    .toolon-cs-page .wid_1000 {
        width: 100% !important;
        box-sizing: border-box;
        padding-left: 16px;
        padding-right: 16px;
    }
    .toolon-cs-page .wid_1000 > img {
        max-width: 100%;
        height: auto;
    }
}

/* ══════════════════════════════════════════════════════════════════
   1:1 문의 작성 폼 (qna) — 툴ON 스타일 (시안 inquiry.html 기준)
   ══════════════════════════════════════════════════════════════════ */
.toolon-cs-page .toolon-qna-form {
    margin-top: 22px;
    background: #fff;
    border: 1px solid #E5E9EF;
    border-radius: 14px;
    box-shadow: 0 4px 18px rgba(15, 23, 42, 0.05);
    padding: 28px 30px 30px;
    box-sizing: border-box;
    font-family: -apple-system, BlinkMacSystemFont, "Pretendard", "Noto Sans KR", "Malgun Gothic", Arial, sans-serif;
}
.toolon-qna-form-head { margin-bottom: 20px; padding-bottom: 16px; border-bottom: 2px solid var(--toolon-primary); }
.toolon-qna-form-head h2 { margin: 0 0 6px; font-size: 21px; font-weight: 900; color: var(--toolon-primary); letter-spacing: -0.4px; }
.toolon-qna-form-head p { margin: 0; font-size: 13.5px; color: var(--toolon-slate); line-height: 1.6; word-break: keep-all; }

.toolon-qna-row { display: flex; align-items: center; gap: 16px; margin-bottom: 14px; }
.toolon-qna-row.toolon-qna-row-top { align-items: flex-start; }
.toolon-qna-row > label {
    flex: 0 0 96px; font-size: 14px; font-weight: 800; color: var(--toolon-primary); padding-top: 0;
}
.toolon-qna-row.toolon-qna-row-top > label { padding-top: 12px; }
.toolon-qna-field { flex: 1 1 0; min-width: 0; }

.toolon-qna-select,
.toolon-qna-input {
    width: 100%; height: 46px; padding: 0 14px;
    border: 1px solid #D7DCE3; border-radius: 10px;
    font-size: 14px; color: var(--toolon-text); background: #fff; outline: none;
    box-sizing: border-box; font-family: inherit;
}
.toolon-qna-select { cursor: pointer; }
.toolon-qna-textarea {
    width: 100%; min-height: 160px; padding: 13px 14px; resize: vertical;
    border: 1px solid #D7DCE3; border-radius: 10px;
    font-size: 14px; color: var(--toolon-text); line-height: 1.6; background: #fff; outline: none;
    box-sizing: border-box; font-family: inherit;
}
.toolon-qna-select:focus,
.toolon-qna-input:focus,
.toolon-qna-textarea:focus { border-color: var(--toolon-point); box-shadow: 0 0 0 3px #FFEDD5; }

.toolon-qna-actions { margin-top: 22px; }
.toolon-qna-submit {
    display: flex; align-items: center; justify-content: center;
    width: 100%; height: 54px; border-radius: 11px;
    background: var(--toolon-point); color: #fff; font-size: 16px; font-weight: 800;
    text-decoration: none; cursor: pointer; letter-spacing: -0.3px;
    transition: background 0.14s;
}
.toolon-qna-submit:hover { background: #EA670C; color: #fff; text-decoration: none; }

/* 연락처 안내 */
.toolon-qna-contact {
    display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 8px 22px;
    margin-top: 26px; padding-top: 22px; border-top: 1px dashed #E5E9EF; text-align: center;
}
.toolon-qna-contact-tel { display: inline-flex; align-items: center; gap: 10px; font-size: 22px; font-weight: 900; color: var(--toolon-primary); }
.toolon-qna-contact-tel img { height: 26px; width: auto; }
.toolon-qna-contact-time { font-size: 13px; color: var(--toolon-slate); line-height: 1.6; }
.toolon-qna-contact-time span { display: block; color: #94A3B8; font-size: 12px; }

@media (max-width: 768px) {
    .toolon-cs-page .toolon-qna-form { padding: 22px 16px 24px; border-radius: 12px; }
    .toolon-qna-form-head h2 { font-size: 19px; }
    .toolon-qna-row { flex-direction: column; align-items: stretch; gap: 6px; margin-bottom: 12px; }
    .toolon-qna-row > label,
    .toolon-qna-row.toolon-qna-row-top > label { flex-basis: auto; padding-top: 0; }
    .toolon-qna-contact-tel { font-size: 20px; }
}

/* ══════════════════════════════════════════════════════════════════
   고객센터 좌측 사이드바 레이아웃 (마이페이지 공통 사이드바 재사용)
   ══════════════════════════════════════════════════════════════════ */
.toolon-cs-page .toolon-cs-layout { padding-top: 28px; padding-bottom: 56px; align-items: flex-start; }
/* 사이드바 하단 고객센터 전화 안내 */
.toolon-cs-side-tel {
    margin-top: 18px;
    padding: 16px;
    background: var(--toolon-soft);
    border: 1px solid #E8ECEF;
    border-radius: 12px;
    text-align: center;
}
.toolon-cs-side-tel-label { display: block; font-size: 12.5px; font-weight: 700; color: var(--toolon-slate); }
.toolon-cs-side-tel-num { display: block; margin: 4px 0 8px; font-size: 21px; font-weight: 900; color: var(--toolon-primary); letter-spacing: -0.4px; }
.toolon-cs-side-tel-time { display: block; font-size: 12px; color: #94A3B8; line-height: 1.6; }

@media (max-width: 1024px) {
    /* 칩 위(padding-top)/아래(gap) 여백 동일(14px) + 풋터와 하단 여백 확보 + 전체폭 stretch */
    .toolon-cs-page .toolon-cs-layout { padding-top: 14px; gap: 14px; padding-bottom: 40px; align-items: stretch; }
    .toolon-cs-page .toolon-cs-layout .toolon-my-main { width: 100%; min-width: 0; }
    /* 모바일에서는 사이드바가 상단 가로 칩으로 바뀌므로 전화 안내는 숨김 */
    .toolon-cs-side-tel { display: none; }
    /* 헤더(제목+검색) 가로 오버플로우 방지: 검색창 전체폭으로 줄바꿈 */
    .toolon-cs-head { gap: 12px; }
    .toolon-cs-head > div { min-width: 0; flex: 1 1 100%; }
    .toolon-cs-head .toolon-faq-search { flex: 1 1 100%; width: 100%; min-width: 0; }
    .toolon-cs-head .toolon-faq-search input { width: 100%; }

    /* 1:1문의 폼: 태블릿/모바일에서 라벨 위 + 입력 전체폭(좁은 입력영역 해소) */
    .toolon-qna-row { flex-direction: column; align-items: stretch; gap: 7px; margin-bottom: 14px; }
    .toolon-qna-row > label,
    .toolon-qna-row.toolon-qna-row-top > label { flex-basis: auto; padding-top: 0; }
    .toolon-qna-textarea { min-height: 180px; }
}

/* ══════════════════════════════════════════════════════════════════
   툴ON 소개(intro)
   ══════════════════════════════════════════════════════════════════ */
.toolon-intro { font-family: -apple-system, BlinkMacSystemFont, "Pretendard", "Noto Sans KR", "Malgun Gothic", Arial, sans-serif; }

/* 히어로 */
.toolon-intro-hero {
    position: relative; overflow: hidden;
    padding: 44px 40px; border-radius: 18px; margin-bottom: 32px;
    background: linear-gradient(120deg, var(--toolon-primary) 0%, #334155 100%); color: #fff;
}
.toolon-intro-badge {
    display: inline-block; padding: 5px 12px; border-radius: 999px;
    background: rgba(249, 115, 22, 0.18); color: #FDBA74; font-size: 12px; font-weight: 900; letter-spacing: 1px;
}
.toolon-intro-hero-title { margin: 14px 0 0; font-size: 32px; font-weight: 900; letter-spacing: -1px; line-height: 1.3; }
.toolon-intro-hero-title strong { color: var(--toolon-point); }
.toolon-intro-hero p { margin: 14px 0 0; font-size: 15px; line-height: 1.75; color: #CBD5E1; }
.toolon-intro-hero-btns { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 24px; }
.toolon-intro-btn {
    display: inline-flex; align-items: center; justify-content: center; height: 46px; padding: 0 24px;
    border-radius: 10px; font-size: 15px; font-weight: 800; text-decoration: none; cursor: pointer; transition: all 0.14s;
}
.toolon-intro-btn.is-point { background: var(--toolon-point); color: #fff; }
.toolon-intro-btn.is-point:hover { background: #EA670C; }
.toolon-intro-btn.is-line { background: transparent; color: #fff; border: 1px solid rgba(255,255,255,0.4); }
.toolon-intro-btn.is-line:hover { border-color: #fff; background: rgba(255,255,255,0.08); }

/* 섹션 */
.toolon-intro-section { margin-bottom: 34px; }
.toolon-intro-h2 {
    margin: 0 0 18px; padding-left: 12px; font-size: 20px; font-weight: 900; color: var(--toolon-primary); position: relative;
}
.toolon-intro-h2::before { content: ""; position: absolute; left: 0; top: 3px; bottom: 3px; width: 4px; border-radius: 2px; background: var(--toolon-point); }

/* 특징 카드 */
.toolon-intro-features { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; }
.toolon-intro-feature { padding: 22px; border: 1px solid #E5E9EF; border-radius: 14px; background: #fff; transition: border-color 0.13s, box-shadow 0.13s; }
.toolon-intro-feature:hover { border-color: var(--toolon-point); box-shadow: 0 8px 24px rgba(15, 23, 42, 0.07); }
.toolon-intro-feat-ico {
    width: 48px; height: 48px; display: flex; align-items: center; justify-content: center;
    border-radius: 12px; background: #FFF7ED; font-size: 24px; margin-bottom: 14px;
}
.toolon-intro-feature strong { display: block; font-size: 16px; font-weight: 800; color: var(--toolon-primary); margin-bottom: 7px; }
.toolon-intro-feature span { display: block; font-size: 13.5px; line-height: 1.65; color: var(--toolon-slate); word-break: keep-all; }

/* 이용 흐름 */
.toolon-intro-steps { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
.toolon-intro-step { padding: 20px 16px; border-radius: 14px; background: var(--toolon-soft); border: 1px solid #E8ECEF; text-align: center; }
.toolon-intro-step .n {
    display: inline-flex; align-items: center; justify-content: center; width: 34px; height: 34px;
    border-radius: 50%; background: var(--toolon-primary); color: #fff; font-size: 15px; font-weight: 900; margin-bottom: 10px;
}
.toolon-intro-step strong { display: block; font-size: 15px; font-weight: 800; color: var(--toolon-primary); }
.toolon-intro-step em { display: block; margin-top: 5px; font-style: normal; font-size: 12.5px; color: #94A3B8; word-break: keep-all; }

/* 회사 정보 */
.toolon-intro-company { border-top: 2px solid var(--toolon-primary); }
.toolon-intro-company dl { display: flex; margin: 0; border-bottom: 1px solid #EEF2F7; }
.toolon-intro-company dt { flex: 0 0 150px; padding: 14px 16px; background: var(--toolon-soft); font-size: 14px; font-weight: 800; color: var(--toolon-primary); }
.toolon-intro-company dd { flex: 1 1 0; min-width: 0; margin: 0; padding: 14px 16px; font-size: 14px; color: #374151; line-height: 1.5; }
.toolon-intro-company-time { color: #94A3B8; font-size: 12.5px; }

@media (max-width: 768px) {
    .toolon-intro-hero { padding: 30px 22px; border-radius: 14px; }
    .toolon-intro-hero-title { font-size: 24px; }
    .toolon-intro-hero p { font-size: 14px; }
    .toolon-intro-features { grid-template-columns: 1fr; }
    .toolon-intro-steps { grid-template-columns: repeat(2, 1fr); }
    .toolon-intro-company dl { flex-direction: column; }
    .toolon-intro-company dt { flex-basis: auto; padding-bottom: 4px; }
    .toolon-intro-company dd { padding-top: 4px; }
}

/* ══════════════════════════════════════════════════════════════════
   자주묻는 질문(FAQ) — 카드형 아코디언 (시안 faq.html 기준)
   ══════════════════════════════════════════════════════════════════ */
/* FAQ 헤더는 공통 .toolon-cs-head 사용 (검색창만 우측 슬롯으로) */
.toolon-faq-search { flex: 0 0 auto; }
.toolon-faq-search input {
    width: 280px; max-width: 100%; height: 44px; padding: 0 16px;
    border: 1px solid #D7DCE3; border-radius: 10px; font-size: 14px; outline: none; background: #fff; box-sizing: border-box;
}
.toolon-faq-search input:focus { border-color: var(--toolon-point); box-shadow: 0 0 0 3px #FFEDD5; }

/* 카테고리 탭 (pill) */
.toolon-faq-tabs { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 18px; }
.toolon-faq-tab {
    height: 38px; padding: 0 16px; border: 1px solid #E2E8F0; border-radius: 999px; background: #fff;
    color: #475569; font-size: 13.5px; font-weight: 700; cursor: pointer; white-space: nowrap; transition: all 0.13s;
}
.toolon-faq-tab:hover { border-color: var(--toolon-point); color: var(--toolon-point); }
.toolon-faq-tab.is-on { background: var(--toolon-primary); border-color: var(--toolon-primary); color: #fff; }

/* 요약 바 */
.toolon-faq-summary {
    display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px;
    padding: 14px 18px; margin-bottom: 14px; border-radius: 12px;
    background: var(--toolon-soft); border: 1px solid #E8ECEF;
}
.toolon-faq-summary-copy strong { font-size: 14px; font-weight: 800; color: var(--toolon-primary); margin-right: 8px; }
.toolon-faq-summary-copy span { font-size: 13px; color: var(--toolon-slate); }
.toolon-faq-summary-count { font-size: 13px; color: var(--toolon-slate); white-space: nowrap; }
.toolon-faq-summary-count b { color: var(--toolon-point); font-weight: 900; }

/* FAQ 보드/카드 */
.toolon-faq-board { display: flex; flex-direction: column; gap: 10px; max-width: 100%; }
/* 가로 오버플로우(좌우 흔들림) 방지 */
.toolon-faq-head, .toolon-faq-tabs, .toolon-faq-summary, .toolon-faq-card { max-width: 100%; box-sizing: border-box; }
.toolon-faq-question, .toolon-faq-answer { overflow-wrap: anywhere; word-break: break-word; min-width: 0; }
.toolon-faq-summary-copy { min-width: 0; }
.toolon-faq-empty { padding: 56px 0; text-align: center; color: #94A3B8; font-size: 14px; }
.toolon-faq-card { border: 1px solid #E5E9EF; border-radius: 12px; background: #fff; overflow: hidden; transition: border-color 0.13s, box-shadow 0.13s; }
.toolon-faq-card.is-open { border-color: var(--toolon-primary); box-shadow: 0 6px 20px rgba(15, 23, 42, 0.06); }
.toolon-faq-q {
    display: flex; align-items: center; gap: 12px; width: 100%; padding: 16px 18px;
    border: 0; background: transparent; cursor: pointer; text-align: left;
}
.toolon-faq-badge {
    flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center;
    min-width: 64px; height: 26px; padding: 0 10px; border-radius: 999px;
    background: #EEF2F7; color: #475569; font-size: 11.5px; font-weight: 800;
}
.toolon-faq-card.is-open .toolon-faq-badge { background: var(--toolon-point); color: #fff; }
.toolon-faq-question { flex: 1 1 auto; min-width: 0; font-size: 15px; font-weight: 700; color: var(--toolon-primary); letter-spacing: -0.2px; }
.toolon-faq-arrow { flex: 0 0 auto; color: #94A3B8; font-size: 18px; line-height: 1; transition: transform 0.18s; }
.toolon-faq-card.is-open .toolon-faq-arrow { transform: rotate(180deg); color: var(--toolon-point); }
.toolon-faq-a { display: none; border-top: 1px solid #EEF2F7; background: #FBFCFE; }
.toolon-faq-answer { padding: 18px; font-size: 14px; line-height: 1.75; color: #374151; white-space: pre-line; }
.toolon-faq-answer img { max-width: 100%; height: auto; }

@media (max-width: 768px) {
    .toolon-faq-search { width: 100%; }
    .toolon-faq-search input { width: 100%; }
    .toolon-faq-tabs { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; }
    .toolon-faq-tabs::-webkit-scrollbar { display: none; }
    /* [P3-2] 모바일 터치영역 44px (가로스크롤 pill 구조 유지) */
    .toolon-faq-tab { flex: 0 0 auto; height: 44px; }
    .toolon-faq-q { padding: 14px; gap: 8px; }
    .toolon-faq-badge { min-width: 0; font-size: 10.5px; height: 22px; padding: 0 8px; }
    .toolon-faq-question { font-size: 14px; }
}

/* ══════════════════════════════════════════════════════════════════
   고객센터 탭 통일 — 공통 toolon 폴더형 탭 디자인 적용
   (기존 클래스/JS 보존, 시각 스타일만 오버라이드)
   ══════════════════════════════════════════════════════════════════ */

/* FAQ 카테고리 탭 (.cs-faq__menu) */
.toolon-cs-page .cs-faq__menu-list {
    height: auto;
    margin: 24px 0 0;
    background: transparent;
    border-bottom: 2px solid var(--toolon-primary);
    font-size: 0;            /* inline-block 사이 공백 제거 */
}
.toolon-cs-page .cs-faq__menu {
    float: none;
    display: inline-block;
    width: auto;
    height: auto;
    margin: 0 6px 0 0;
    border: 1px solid #E8ECEF;
    border-bottom: 0;
    border-radius: 10px 10px 0 0;
    background: var(--toolon-soft);
    vertical-align: bottom;
}
.toolon-cs-page .cs-faq__menu.on { border-color: var(--toolon-primary); background: var(--toolon-primary); }
.toolon-cs-page .cs-faq__menu-link { display: block; width: auto; height: auto; color: var(--toolon-slate); }
.toolon-cs-page .cs-faq__menu-link-text {
    display: block;
    padding: 12px 20px;
    line-height: 1;
    font-size: 15px;
    font-weight: 800;
    letter-spacing: -0.3px;
}
.toolon-cs-page .cs-faq__menu:hover .cs-faq__menu-link { color: var(--toolon-point); }
.toolon-cs-page .cs-faq__menu.on .cs-faq__menu-link { color: #fff; }

/* CS 메인 네비 (.cs-nav__menu: 툴온소개/툴온소식/자주묻는질문/1:1문의) */
.toolon-cs-page .cs-nav {
    height: auto;
    min-height: 56px;
    border-bottom: 2px solid var(--toolon-primary);
    display: flex;
    align-items: flex-end;
}
.toolon-cs-page .cs-nav__menu-lists {
    float: none;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.toolon-cs-page .cs-nav__menu {
    float: none;
    height: auto;
    margin: 0;
    border: 1px solid #E8ECEF;
    border-bottom: 0;
    border-radius: 10px 10px 0 0;
    background: var(--toolon-soft);
}
.toolon-cs-page .cs-nav__menu.on { border-color: var(--toolon-primary); background: var(--toolon-primary); }
.toolon-cs-page .cs-nav__menu-link {
    display: block;
    padding: 12px 22px;
    color: var(--toolon-slate);
    font-size: 15px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: -0.3px;
}
.toolon-cs-page .cs-nav__menu-link:hover { color: var(--toolon-point); }
.toolon-cs-page .cs-nav__menu.on .cs-nav__menu-link { color: #fff; }
/* 전화번호 영역은 우측 하단 정렬 유지 */
.toolon-cs-page .cs-nav__phone-section { bottom: 8px; top: auto; }

@media (max-width: 768px) {
    .toolon-cs-page .cs-nav { display: block; min-height: 0; padding-right: 0; }
    .toolon-cs-page .cs-nav__menu-lists { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 0; }
    .toolon-cs-page .cs-nav__menu { flex: 0 0 auto; }
    .toolon-cs-page .cs-nav__menu-link { padding: 10px 16px; font-size: 14px; }
    .toolon-cs-page .cs-nav__phone-section { position: static; width: auto !important; padding: 10px 0 0; }
    .toolon-cs-page .cs-faq__menu-link-text { padding: 10px 14px; font-size: 14px; }
}

/* CS 네비 전화번호 영역: 18px 번호가 130px 안에서 잘리던 문제 → 폭 확대 + 줄바꿈 방지 */
.toolon-cs-page .cs-nav__phone-section {
    width: 168px;
}
.toolon-cs-page .cs-nav__phone-number {
    white-space: nowrap;
    letter-spacing: -0.5px;
}
.toolon-cs-page .cs-nav__phone-label {
    white-space: nowrap;
}

/* ══════════════════════════════════════════════════════════════════
   약관 페이지(provision: 이용약관 d01 / 개인정보취급방침 d02) 툴ON 스타일
   - center_content 영역을 카드화 + 풋터와의 하단 간격 확보
   ══════════════════════════════════════════════════════════════════ */
.toolon-provision {
    background: var(--toolon-bg);
    font-family: -apple-system, BlinkMacSystemFont, "Pretendard", "Noto Sans KR", "Malgun Gothic", Arial, sans-serif;
}
.toolon-provision .wid_1000 {
    margin: 0 auto;
    /* 풋터와 너무 붙던 문제 → 하단 여백 확보 */
    padding-bottom: 72px;
}
.toolon-provision .ad_content01 {
    margin-bottom: 24px;
}
.toolon-provision .container { padding: 0; }

/* 본문 카드 */
.toolon-provision .center_content {
    background: #fff;
    border: 1px solid #E5E9EF;
    border-radius: 14px;
    box-shadow: 0 4px 18px rgba(15, 23, 42, 0.05);
    padding: 36px 40px 40px;
    box-sizing: border-box;
}

/* 제목 + 빵가루 */
.toolon-provision .title_Type03 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 8px 16px;
    margin: 0 0 24px;
    padding: 0 0 18px;
    border-bottom: 2px solid var(--toolon-primary);
    font-size: 24px;
    font-weight: 800;
    color: var(--toolon-primary);
    letter-spacing: -0.4px;
    line-height: 1.3;
}
.toolon-provision .title_Type03 .sub_location { margin: 0; }
.toolon-provision .list_location01 {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    font-weight: 500;
    color: #94A3B8;
}
.toolon-provision .list_location01 .txt01 { color: var(--toolon-slate); }
.toolon-provision .list_location01 .arrow img { display: block; opacity: 0.6; }
.toolon-provision .list_location01 .last_txt { color: var(--toolon-point); font-weight: 700; }

/* 약관 본문 */
.toolon-provision .signup_wrapper {
    font-size: 14px;
    line-height: 1.85;
    color: #374151;
    word-break: keep-all;
}
.toolon-provision .signup_wrapper h2,
.toolon-provision .signup_wrapper h3 {
    color: var(--toolon-primary);
    font-weight: 700;
    margin: 22px 0 10px;
    line-height: 1.5;
}
.toolon-provision .signup_wrapper strong { color: var(--toolon-primary); }
.toolon-provision .signup_wrapper a { color: var(--toolon-point); }
.toolon-provision .signup_wrapper table {
    border-collapse: collapse;
    width: 100%;
    margin: 14px 0;
}
.toolon-provision .signup_wrapper th,
.toolon-provision .signup_wrapper td {
    border: 1px solid #E5E9EF;
    padding: 8px 10px;
}
.toolon-provision .signup_wrapper th { background: var(--toolon-soft); color: var(--toolon-primary); }

@media (max-width: 1024px) {
    .toolon-provision .wid_1000 { padding-bottom: 56px; }
    .toolon-provision .center_content { padding: 24px 18px 28px; border-radius: 12px; }
    .toolon-provision .title_Type03 { font-size: 20px; margin-bottom: 18px; padding-bottom: 14px; }
}

@media (max-width: 640px) {
    .toolon-provision .wid_1000 { padding-bottom: 48px; }
    .toolon-provision .center_content { padding: 20px 14px 24px; }
    .toolon-provision .title_Type03 { font-size: 18px; }
    .toolon-provision .signup_wrapper { font-size: 13.5px; line-height: 1.8; }
}

/* ══════════════════════════════════════════════════════════════════
   [P2] 견적 시스템 레거시 표 모바일 넘침 보정 (2026-06-13)
   — STTUS 분기/버튼 표시조건(JS)·계산(.prductQy/#total_amt)·selector 무변경, 레이아웃만.
   ══════════════════════════════════════════════════════════════════ */
@media (max-width: 1024px) {
    /* 데이터 표(견적리스트/견적상품) = 가로 스크롤로 넘침 해소(헤더행 유지, 컬럼 의미 보존) */
    .toolon-cs-page .cart_list {
        display: block;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        width: 100%;
    }
    .toolon-cs-page .cart_list > caption { display: none; }
    .toolon-cs-page .cart_list > tbody {
        display: table;
        width: 100%;
        min-width: 640px;   /* 좁은 화면에서 칸이 뭉개지지 않도록 최소폭 확보 후 스크롤 */
    }

    /* 폼형 표(사업자/추가정보) = 라벨 위·입력 아래로 세로 스택(스크롤 불필요) */
    .toolon-cs-page .tbl_Type03 { display: block; width: 100%; }
    .toolon-cs-page .tbl_Type03 > caption,
    .toolon-cs-page .tbl_Type03 > colgroup { display: none; }
    .toolon-cs-page .tbl_Type03 > tbody,
    .toolon-cs-page .tbl_Type03 tr { display: block; width: 100%; }
    .toolon-cs-page .tbl_Type03 tr { padding: 6px 0; border-bottom: 1px solid #F1F5F9; }
    .toolon-cs-page .tbl_Type03 th,
    .toolon-cs-page .tbl_Type03 td {
        display: block; width: auto;
        text-align: left !important;       /* 인라인 text-align:right 오버라이드 */
        padding: 4px 2px !important;        /* 인라인 padding-right:20px 오버라이드 */
    }
    .toolon-cs-page .tbl_Type03 th { font-weight: 800; color: var(--toolon-primary); }
    .toolon-cs-page .tbl_Type03 .join_form_input03 { width: 100% !important; box-sizing: border-box; }

    /* 견적 버튼류 터치영역 44px (cart_btn / 로그인 확인 / 양식출력 span) */
    .toolon-cs-page .cart_btn span,
    .toolon-cs-page .btn_content01 span,
    .toolon-cs-page .sButton {
        min-height: 44px; display: inline-flex; align-items: center; justify-content: center;
    }

    /* estimate 로그인 화면 — 인라인 고정 margin-left로 인한 모바일 가로 overflow 리셋 */
    .toolon-cs-page .login_input { margin-left: 0 !important; text-align: center !important; }
    .toolon-cs-page .estimate_sbox_01,
    .toolon-cs-page .estimate_sbox_02,
    .toolon-cs-page .estimate_sbox_03 { margin-left: 0 !important; }
    .toolon-cs-page .faq_box_01 { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; }
}

@media (max-width: 640px) {
    /* 견적상품 표는 컬럼이 많아 최소폭을 더 확보(이미지/수량/비고 포함) */
    .toolon-cs-page .tbl_Type03 ~ .cart_list > tbody,
    .toolon-cs-page #prdtFrm .cart_list > tbody { min-width: 680px; }
    .toolon-cs-page .login_input .join_form_input01.mobile { width: 60px; }
}

/* ══════════════════════════════════════════════════════════════════
   [mobile-card-cart-list 2026-06-13] 견적 cart_list 모바일 카드 전환
   PC(≥1025): 기존 table 유지 / 769~1024: 가로스크롤(기존) / ≤768: 카드
   — 마크업·JS·id·name·data-* 전부 무변경(CSS 전용). 같은 표를 카드로 재구성.
   — 라벨은 nth-child ::before 로 주입. #frm=견적리스트(6열), #prdtFrm=견적상품(7열).
   — 1:1문의 카드 톤(테두리/라운드/라벨-값/뱃지/44px 버튼) 재사용.
   ══════════════════════════════════════════════════════════════════ */
@media (max-width: 768px) {
    /* 스크롤 모드 해제 → 카드 블록 */
    .toolon-cs-page .cart_list { display: block; width: 100%; overflow: visible; border: 0; }
    .toolon-cs-page .cart_list > caption,
    .toolon-cs-page .cart_list > colgroup { display: none; }
    .toolon-cs-page .cart_list > tbody { display: block; width: 100%; min-width: 0 !important; }

    /* 헤더행(첫 tr = th들) 숨김 — 라벨은 ::before 로 대체 */
    .toolon-cs-page .cart_list > tbody > tr:first-child { display: none; }

    /* 데이터행 → 카드 */
    .toolon-cs-page .cart_list > tbody > tr {
        display: block; position: relative;
        border: 1px solid #E5E9EF; border-radius: 12px; background: #fff;
        padding: 14px 16px; margin-bottom: 12px;
    }

    /* 빈 목록 행(colspan) → 카드/라벨 제외, 단순 안내 */
    .toolon-cs-page .cart_list > tbody > tr > td[colspan] {
        display: block; height: auto !important; padding: 30px 12px !important; text-align: center !important;
    }
    .toolon-cs-page .cart_list > tbody > tr > td[colspan]::before { display: none !important; }
    .toolon-cs-page .cart_list > tbody > tr > td[colspan] .title_Type04 { font-size: 15px; color: #94A3B8; }

    /* 일반 셀 → 라벨 + 값 한 줄 */
    .toolon-cs-page .cart_list > tbody > tr > td:not([colspan]) {
        display: flex; align-items: flex-start; gap: 10px;
        width: auto !important; border: 0 !important;
        padding: 5px 0 !important; text-align: left !important;
        font-size: 14px; line-height: 1.55; color: #374151;
    }
    .toolon-cs-page .cart_list > tbody > tr > td:not([colspan])::before {
        flex: 0 0 76px; color: #94A3B8; font-size: 12.5px; font-weight: 800; line-height: 1.7;
    }

    /* 선택 체크박스(첫 셀) → 카드 우상단 뱃지 위치 */
    .toolon-cs-page .cart_list > tbody > tr > td:first-child {
        position: absolute; top: 12px; right: 12px; padding: 0 !important; width: auto !important;
    }
    .toolon-cs-page .cart_list > tbody > tr > td:first-child::before { display: none !important; }
    .toolon-cs-page .cart_list > tbody > tr > td:first-child .chk,
    .toolon-cs-page .cart_list > tbody > tr > td:first-child input[type="checkbox"] { width: 18px; height: 18px; }

    /* ── 견적 리스트 (#frm, 6열): 선택/견적번호/품목/요청일/상태/출력 ── */
    .toolon-cs-page #frm .cart_list > tbody > tr > td:nth-child(2) { padding-right: 34px !important; margin-bottom: 4px; }
    .toolon-cs-page #frm .cart_list > tbody > tr > td:nth-child(2)::before { display: none; }
    .toolon-cs-page #frm .cart_list > tbody > tr > td:nth-child(2) .goDtl { font-size: 16px; font-weight: 900; color: var(--toolon-primary); }
    .toolon-cs-page #frm .cart_list > tbody > tr > td:nth-child(3)::before { content: "품목"; }
    .toolon-cs-page #frm .cart_list > tbody > tr > td:nth-child(4)::before { content: "견적요청일"; }
    .toolon-cs-page #frm .cart_list > tbody > tr > td:nth-child(5)::before { content: "진행상태"; }
    .toolon-cs-page #frm .cart_list > tbody > tr > td:nth-child(6) {
        flex-direction: column; gap: 8px; margin-top: 10px; padding-top: 12px !important;
        border-top: 1px solid #EEF2F7 !important;
    }
    .toolon-cs-page #frm .cart_list > tbody > tr > td:nth-child(6)::before { content: "양식출력"; flex: none; margin-bottom: 2px; }
    .toolon-cs-page #frm .cart_list > tbody > tr > td:nth-child(6) .sButton {
        float: none !important; display: inline-flex; align-items: center; justify-content: center;
        min-height: 44px; margin: 0 8px 0 0 !important; padding: 0 16px;
    }

    /* ── 견적 상품 (#prdtFrm, 7열): 선택/이미지/상품정보/판매가격/수량/합계/비고 ── */
    .toolon-cs-page #prdtFrm .cart_list > tbody > tr { padding-top: 16px; }
    /* 이미지(2열) */
    .toolon-cs-page #prdtFrm .cart_list > tbody > tr > td:nth-child(2) { display: block; padding: 0 !important; margin-bottom: 10px; }
    .toolon-cs-page #prdtFrm .cart_list > tbody > tr > td:nth-child(2)::before { display: none; }
    .toolon-cs-page #prdtFrm .cart_list .cart_img { width: 88px; height: 88px; }
    .toolon-cs-page #prdtFrm .cart_list .cart_pic { width: 88px; height: 88px; object-fit: cover; border-radius: 8px; border: 1px solid #EEF2F7; }
    /* 상품정보(3열) = 제목 */
    .toolon-cs-page #prdtFrm .cart_list > tbody > tr > td:nth-child(3) { display: block; padding-right: 34px !important; margin-bottom: 6px; line-height: 1.5; }
    .toolon-cs-page #prdtFrm .cart_list > tbody > tr > td:nth-child(3)::before { display: none; }
    .toolon-cs-page #prdtFrm .cart_list > tbody > tr > td:nth-child(3) p:first-child { font-weight: 800; color: var(--toolon-primary); }
    .toolon-cs-page #prdtFrm .cart_list > tbody > tr > td:nth-child(4)::before { content: "판매가격"; }
    .toolon-cs-page #prdtFrm .cart_list > tbody > tr > td:nth-child(5)::before { content: "수량"; }
    .toolon-cs-page #prdtFrm .cart_list > tbody > tr > td:nth-child(5) .prductQy { width: 90px !important; height: 40px; text-align: right; }
    .toolon-cs-page #prdtFrm .cart_list > tbody > tr > td:nth-child(6)::before { content: "합계"; }
    .toolon-cs-page #prdtFrm .cart_list > tbody > tr > td:nth-child(7) { flex-direction: column; gap: 6px; }
    .toolon-cs-page #prdtFrm .cart_list > tbody > tr > td:nth-child(7)::before { content: "비고"; flex: none; }
    .toolon-cs-page #prdtFrm .cart_list > tbody > tr > td:nth-child(7) textarea { width: 100% !important; box-sizing: border-box; }
}

/* [qna-fix 2026-06-13] 1:1문의 textarea: 라벨 위로 + 모든 폭에서 우측까지 풀폭 */
.toolon-cs-page .toolon-qna-row.toolon-qna-row-top { flex-direction: column; align-items: stretch; }
.toolon-cs-page .toolon-qna-row.toolon-qna-row-top > label { flex: 0 0 auto; padding-top: 0; margin-bottom: 6px; }
.toolon-cs-page .toolon-qna-row.toolon-qna-row-top .toolon-qna-field { width: 100%; min-width: 0; }
.toolon-cs-page .toolon-qna-textarea { width: 100%; max-width: 100%; box-sizing: border-box; margin: 0; }

/* [qna-board 2026-06-13] 과거 문의내역(레거시 mt_notice/notice_group) 툴ON 디자인 */
.toolon-cs-page .toolon-qna-board .cont { padding: 0; }
.toolon-cs-page .toolon-qna-board .notice_group { list-style: none; margin: 0; padding: 0; }
.toolon-cs-page .toolon-qna-board .notice_list {
    border: 1px solid #E5E9EF; border-radius: 12px; background: #fff; margin-bottom: 10px; overflow: hidden;
}
.toolon-cs-page .toolon-qna-board .notice_list:last-child { margin-bottom: 0; }
.toolon-cs-page .toolon-qna-board .notice_title {
    display: flex; align-items: center; gap: 12px; padding: 14px 16px; cursor: pointer;
}
.toolon-cs-page .toolon-qna-board .notice_title .date_area { flex: 0 0 auto; order: 3; }
.toolon-cs-page .toolon-qna-board .notice_title .date { font-size: 12.5px; color: var(--toolon-slate); white-space: nowrap; }
.toolon-cs-page .toolon-qna-board .notice_title .title_area { flex: 1 1 auto; min-width: 0; order: 2; }
.toolon-cs-page .toolon-qna-board .notice_title .title_area .text {
    font-size: 14.5px; font-weight: 700; color: var(--toolon-text); word-break: break-word;
}
.toolon-cs-page .toolon-qna-board .new_tag {
    flex: 0 0 auto; order: 1; display: inline-flex; align-items: center; height: 22px; padding: 0 9px;
    border-radius: 999px; font-size: 11px; font-weight: 800; background: #FFF1F0; color: var(--toolon-danger);
}
.toolon-cs-page .toolon-qna-board .more_btn {
    flex: 0 0 auto; order: 4; width: 30px; height: 30px; border: 1px solid #E5E9EF; border-radius: 8px;
    background: #fff; cursor: pointer; position: relative; padding: 0;
}
/* 레거시 스프라이트 화살표 숨기고 CSS 화살표로 대체(아이콘 깨짐 방지) */
.toolon-cs-page .toolon-qna-board .more_btn .sp_arrow { display: none; }
.toolon-cs-page .toolon-qna-board .more_btn::after {
    content: ""; position: absolute; top: 50%; left: 50%; width: 7px; height: 7px;
    border: 2px solid #64748B; border-width: 0 2px 2px 0; transform: translate(-50%, -65%) rotate(45deg);
}
.toolon-cs-page .toolon-qna-board .notice_list.is-open .more_btn::after,
.toolon-cs-page .toolon-qna-board .notice_list .more_btn[aria-expanded="true"]::after { transform: translate(-50%, -35%) rotate(-135deg); }
.toolon-cs-page .toolon-qna-board .notice_detail {
    border-top: 1px solid #EEF2F7; background: #FBFCFE; padding: 14px 16px; font-size: 14px; color: #374151; line-height: 1.7;
}
.toolon-cs-page .toolon-qna-board .notice_detail .desc { white-space: pre-line; word-break: break-word; }
@media (max-width: 768px) {
    .toolon-cs-page .toolon-qna-board .notice_title { flex-wrap: wrap; gap: 8px 10px; padding: 12px 14px; }
    .toolon-cs-page .toolon-qna-board .notice_title .title_area { flex: 1 1 100%; order: 2; }
    .toolon-cs-page .toolon-qna-board .new_tag { order: 1; }
    .toolon-cs-page .toolon-qna-board .notice_title .date_area { order: 3; }
    .toolon-cs-page .toolon-qna-board .more_btn { order: 4; margin-left: auto; }
}

/* ══════════════════════════════════════════════════════════════════
   1:1 문의 목록/상세/작성 — inquiry 시안 반영
   ══════════════════════════════════════════════════════════════════ */
.toolon-inquiry-head .toolon-inquiry-btn { flex: 0 0 auto; }

.toolon-inquiry-btn {
    display: inline-flex; align-items: center; justify-content: center;
    min-width: 96px; height: 44px; padding: 0 18px; border-radius: 8px;
    border: 1px solid transparent; box-sizing: border-box;
    font-size: 14px; font-weight: 800; line-height: 1; text-decoration: none; cursor: pointer;
    font-family: inherit; transition: background 0.14s, border-color 0.14s, color 0.14s;
}
.toolon-inquiry-btn.is-point,
.toolon-inquiry-btn.is-primary { background: var(--toolon-point); color: #fff; }
.toolon-inquiry-btn.is-point:hover,
.toolon-inquiry-btn.is-primary:hover { background: #EA670C; color: #fff; text-decoration: none; }
.toolon-inquiry-btn.is-gray { background: #F1F5F9; border-color: #E2E8F0; color: var(--toolon-primary); }
.toolon-inquiry-btn.is-gray:hover { background: #E8EEF5; color: var(--toolon-primary); text-decoration: none; }
.toolon-inquiry-btn.is-line { background: #fff; border-color: #CBD5E1; color: #475569; }
.toolon-inquiry-btn.is-line:hover { border-color: var(--toolon-primary); color: var(--toolon-primary); text-decoration: none; }

.toolon-inquiry-guide {
    display: flex; align-items: center; justify-content: space-between; gap: 12px;
    margin-bottom: 16px; padding: 16px 18px; border: 1px solid #E5E9EF; border-radius: 8px;
    background: #fff;
}
.toolon-inquiry-guide strong { display: block; margin-bottom: 4px; font-size: 14px; font-weight: 900; color: var(--toolon-primary); }
.toolon-inquiry-guide span { display: block; font-size: 13px; color: var(--toolon-slate); line-height: 1.5; }
.toolon-inquiry-guide a { flex: 0 0 auto; font-size: 13px; font-weight: 800; color: var(--toolon-point); text-decoration: none; }

.toolon-inquiry-filter {
    display: grid; grid-template-columns: 150px 150px minmax(0, 1fr); gap: 8px;
    margin-bottom: 14px;
}
.toolon-inquiry-filter-search { display: flex; gap: 8px; min-width: 0; }
.toolon-inquiry-filter-search .toolon-qna-input { min-width: 0; }

.toolon-inquiry-list-summary {
    display: flex; align-items: center; justify-content: space-between; gap: 8px;
    margin: 0 0 10px; font-size: 13px; color: var(--toolon-slate);
}
.toolon-inquiry-list-summary b { color: var(--toolon-primary); }
.toolon-inquiry-list-summary small { color: #94A3B8; }

.toolon-inquiry-table-wrap { width: 100%; overflow-x: auto; }
.toolon-inquiry-table { width: 100%; border-collapse: collapse; table-layout: fixed; background: #fff; }
.toolon-inquiry-table caption { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); }
.toolon-inquiry-table .c-num { width: 70px; }
.toolon-inquiry-table .c-type { width: 116px; }
.toolon-inquiry-table .c-file { width: 78px; }
.toolon-inquiry-table .c-state { width: 98px; }
.toolon-inquiry-table .c-date { width: 112px; }
.toolon-inquiry-table th {
    height: 46px; padding: 0 10px; border-top: 2px solid var(--toolon-primary); border-bottom: 1px solid #E5E9EF;
    background: var(--toolon-soft); color: #475569; font-size: 13px; font-weight: 800;
    text-align: center; vertical-align: middle; line-height: 1.2;
}
.toolon-inquiry-table th.left { text-align: left; }
.toolon-inquiry-table td {
    padding: 14px 10px; border-bottom: 1px solid #EEF2F7; color: #475569; font-size: 14px;
    text-align: center; vertical-align: middle; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.toolon-inquiry-table td.left { text-align: left; }
.toolon-inquiry-table td a { color: var(--toolon-primary); font-weight: 700; text-decoration: none; }
.toolon-inquiry-table td a:hover { color: var(--toolon-point); }
.toolon-inquiry-empty-row td { padding: 52px 10px; color: #94A3B8; text-align: center; }

.toolon-inquiry-type,
.toolon-inquiry-file-mark,
.toolon-inquiry-state {
    display: inline-flex; align-items: center; justify-content: center;
    min-height: 24px; padding: 0 9px; border-radius: 999px; font-size: 11.5px; font-weight: 900; white-space: nowrap;
}
.toolon-inquiry-type { background: #EEF2F7; color: var(--toolon-primary); }
.toolon-inquiry-file-mark { background: #FFF7ED; color: var(--toolon-point); }
.toolon-inquiry-state.ready { background: #FFF7ED; color: var(--toolon-point); }
.toolon-inquiry-state.done { background: #ECFDF5; color: var(--toolon-success); }

.toolon-inquiry-card-list { display: none; }
.toolon-inquiry-card {
    display: block; padding: 15px 16px; margin-bottom: 10px; border: 1px solid #E5E9EF; border-radius: 8px;
    background: #fff; color: inherit; text-decoration: none;
}
.toolon-inquiry-card-top { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 10px; }
.toolon-inquiry-card strong {
    display: block; color: var(--toolon-primary); font-size: 15px; font-weight: 900; line-height: 1.45;
    word-break: keep-all;
}
.toolon-inquiry-card p { margin: 7px 0 0; color: var(--toolon-slate); font-size: 12.5px; }
.toolon-inquiry-empty {
    padding: 46px 18px; border: 1px solid #E5E9EF; border-radius: 8px; background: #fff;
    color: #94A3B8; text-align: center; font-size: 14px;
}

.toolon-inquiry-form-grid {
    display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 18px;
}
.toolon-inquiry-write-form .toolon-qna-row > label em { color: var(--toolon-danger); font-style: normal; }
.toolon-inquiry-reply-info {
    margin-top: 18px; padding: 16px 18px; border: 1px solid #E5E9EF; border-radius: 8px; background: #FBFCFE;
}
.toolon-inquiry-reply-info h2 { margin: 0 0 8px; color: var(--toolon-primary); font-size: 16px; font-weight: 900; }
.toolon-inquiry-reply-info ul { margin: 0; padding-left: 18px; color: var(--toolon-slate); font-size: 13px; line-height: 1.7; }
.toolon-inquiry-actions {
    display: flex; justify-content: flex-end; flex-wrap: wrap; gap: 8px; margin-top: 22px;
}
.toolon-inquiry-actions .toolon-inquiry-btn.is-point { min-width: 142px; }

/* 1:1 문의 내역 페이징 (표/카드 아래) */
.toolon-inquiry-paging {
    display: flex; align-items: center; justify-content: center; flex-wrap: wrap;
    gap: 6px; margin: 24px 0 4px;
}
.toolon-inquiry-paging a {
    display: inline-flex; align-items: center; justify-content: center;
    min-width: 38px; height: 38px; padding: 0 11px; box-sizing: border-box;
    border: 1px solid #E2E8F0; border-radius: 8px; background: #fff;
    color: #475569; font-size: 14px; font-weight: 700; line-height: 1; text-decoration: none; cursor: pointer;
    transition: background .14s, border-color .14s, color .14s;
}
.toolon-inquiry-paging a:hover { border-color: var(--toolon-point); color: var(--toolon-point); }
.toolon-inquiry-paging a.is-active {
    background: var(--toolon-primary); border-color: var(--toolon-primary); color: #fff; cursor: default;
}
.toolon-inquiry-paging .toolon-page-nav { font-weight: 800; color: var(--toolon-slate); }

/* 하단 1:1 문의 등록 버튼 — 우측 정렬 */
.toolon-inquiry-list-actions { justify-content: flex-end; margin-top: 16px; }

.toolon-inquiry-detail-card,
.toolon-inquiry-answer-card {
    border: 1px solid #E5E9EF; border-radius: 8px; background: #fff; overflow: hidden;
}
.toolon-inquiry-detail-head {
    display: flex; align-items: flex-start; justify-content: space-between; gap: 16px;
    padding: 22px 22px 18px; border-bottom: 1px solid #EEF2F7;
}
.toolon-inquiry-detail-head h2 {
    margin: 10px 0 0; color: var(--toolon-primary); font-size: 22px; font-weight: 900; line-height: 1.4;
    word-break: keep-all;
}
.toolon-inquiry-meta {
    display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0; border-bottom: 1px solid #EEF2F7;
}
.toolon-inquiry-meta div { padding: 14px 16px; border-right: 1px solid #EEF2F7; }
.toolon-inquiry-meta div:last-child { border-right: 0; }
.toolon-inquiry-meta dt { margin-bottom: 5px; color: #94A3B8; font-size: 12px; font-weight: 800; }
.toolon-inquiry-meta dd { margin: 0; color: #475569; font-size: 13px; font-weight: 700; word-break: break-all; }
.toolon-inquiry-question { padding: 22px; }
.toolon-inquiry-question h3 { margin: 0 0 10px; color: var(--toolon-primary); font-size: 16px; font-weight: 900; }
.toolon-inquiry-question p {
    margin: 0; color: #374151; font-size: 14px; line-height: 1.8; white-space: pre-line; word-break: break-word;
}
.toolon-inquiry-answer-card { margin-top: 14px; padding: 20px 22px; }
.toolon-inquiry-answer-card.is-wait { background: #FBFCFE; }
.toolon-inquiry-answer-head {
    display: flex; align-items: center; justify-content: space-between; gap: 12px;
    margin-bottom: 12px; color: var(--toolon-primary);
}
.toolon-inquiry-answer-head strong { font-size: 16px; font-weight: 900; }
.toolon-inquiry-answer-head span { color: var(--toolon-slate); font-size: 13px; font-weight: 800; }
.toolon-inquiry-answer-card p,
.toolon-inquiry-answer-body {
    margin: 0; color: #374151; font-size: 14px; line-height: 1.8; white-space: pre-line; word-break: break-word;
}
.toolon-inquiry-answer-body img { max-width: 100%; height: auto; }

@media (max-width: 1024px) {
    .toolon-inquiry-filter { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .toolon-inquiry-filter-search { grid-column: 1 / -1; }
    .toolon-inquiry-detail-head h2 { font-size: 20px; }
    .toolon-inquiry-meta { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .toolon-inquiry-meta div:nth-child(2n) { border-right: 0; }
}

@media (max-width: 768px) {
    .toolon-inquiry-head { align-items: flex-start; }
    .toolon-inquiry-head .toolon-inquiry-btn { width: 100%; }
    .toolon-inquiry-guide { align-items: flex-start; flex-direction: column; padding: 14px; }
    .toolon-inquiry-filter { grid-template-columns: 1fr; }
    .toolon-inquiry-filter-search { grid-column: auto; flex-direction: column; }
    .toolon-inquiry-list-summary { align-items: flex-start; flex-direction: column; }
    .toolon-inquiry-table-wrap { display: none; }
    .toolon-inquiry-card-list { display: block; }
    .toolon-inquiry-form-grid { grid-template-columns: 1fr; }
    .toolon-inquiry-actions { flex-direction: column-reverse; }
    .toolon-inquiry-actions .toolon-inquiry-btn { width: 100%; }
    .toolon-inquiry-detail-head { flex-direction: column; padding: 18px 16px 16px; }
    .toolon-inquiry-detail-head h2 { font-size: 18px; }
    .toolon-inquiry-meta { grid-template-columns: 1fr; }
    .toolon-inquiry-meta div { border-right: 0; }
    .toolon-inquiry-question,
    .toolon-inquiry-answer-card { padding: 18px 16px; }
}
