@charset "UTF-8";

/* 커뮤니티 "선배에게 물어보기". 셸과 공통 부품(info-head, info-button, info-search, info-state)은 recruitment-info-renewal.css 를 쓴다.
   메인 섹션(.main-talk-*)도 이 파일에 둔다. 메인은 이 파일을 따로 불러온다. */

.talk-page { --talk-blue:#2f6feb; --talk-blue-soft:#eef3fd; --talk-green:#1c7a4c; --talk-green-soft:#e8f6ef; --talk-orange:#c25a12; --talk-orange-soft:#fff1e6; }

/* 레이아웃 */
.talk-layout { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:32px; align-items:start; margin-top:26px; }
.talk-aside { position:sticky; top:24px; display:grid; gap:16px; }
.talk-head-cta { display:inline-flex; align-items:center; gap:6px; height:48px; padding:0 22px; border-radius:10px; background:var(--talk-blue); color:#fff!important; font-size:15px; font-weight:700; white-space:nowrap; }
.talk-head-cta:hover { background:#2058c7; }
.talk-head-cta i { font-size:18px; }
.talk-kicker { display:inline-flex; align-items:center; gap:6px; margin-bottom:8px; color:var(--talk-blue); font-size:13px; font-weight:700; }

/* 분류, 정렬 */
.talk-categories { display:flex; flex-wrap:wrap; gap:8px; }
.talk-categories a { display:inline-flex; align-items:center; height:38px; padding:0 15px; border:1px solid #dfe4ec; border-radius:999px; background:#fff; color:#4a5568; font-size:14px; font-weight:600; white-space:nowrap; }
.talk-categories a:hover { border-color:#b9c6dc; color:var(--info-ink); }
.talk-categories a.is-active { border-color:var(--talk-blue); background:var(--talk-blue); color:#fff; }
.talk-toolbar { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-top:18px; padding-bottom:12px; border-bottom:2px solid #222b3c; }
.talk-sorts { display:flex; align-items:center; gap:4px; flex-wrap:wrap; }
.talk-sorts a { display:inline-flex; align-items:center; gap:5px; height:40px; padding:0 13px; border-radius:8px; color:#6b7485; font-size:14px; font-weight:600; white-space:nowrap; }
.talk-sorts a:hover { color:var(--info-ink); background:var(--info-soft); }
.talk-sorts a.is-active { background:var(--talk-blue-soft); color:var(--talk-blue); font-weight:700; }
.talk-search { width:250px; }

/* 목록 */
.talk-list { margin:0; padding:0; list-style:none; }
.talk-item { border-bottom:1px solid var(--info-line); }
.talk-item-link { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:20px; align-items:center; padding:20px 4px; color:inherit; }
.talk-item-link:hover .talk-item-title { color:var(--talk-blue); }
.talk-item-labels { display:flex; flex-wrap:wrap; align-items:center; gap:6px; margin-bottom:8px; }
.talk-item-title { margin:0; overflow:hidden; display:-webkit-box; -webkit-line-clamp:1; -webkit-box-orient:vertical; color:var(--info-ink); font-size:17px; line-height:1.5; font-weight:700; word-break:keep-all; }
.talk-item-excerpt { margin:6px 0 0; overflow:hidden; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; color:#5f6878; font-size:14px; line-height:1.6; word-break:keep-all; }
.talk-item-meta { display:flex; flex-wrap:wrap; align-items:center; gap:6px 14px; margin-top:10px; color:#7b8495; font-size:13px; }
.talk-item-stats { display:flex; align-items:center; gap:8px; }
.talk-answer-box { display:flex; flex-direction:column; align-items:center; justify-content:center; width:72px; height:64px; border-radius:12px; background:var(--talk-blue-soft); color:var(--talk-blue); }
.talk-answer-box strong { font-size:20px; line-height:1.1; font-weight:700; font-variant-numeric:tabular-nums; }
.talk-answer-box span { margin-top:3px; font-size:12px; font-weight:600; }
.talk-answer-box.is-waiting { background:#f3f4f7; color:#8b94a4; }
.talk-answer-box.is-waiting strong { font-size:13px; line-height:1.3; }
.talk-small-stats { display:flex; flex-direction:column; gap:4px; min-width:58px; color:#7b8495; font-size:12px; }
.talk-small-stats span { display:flex; align-items:center; gap:4px; white-space:nowrap; }
.talk-small-stats i { font-size:14px; }

.talk-badge { display:inline-flex; align-items:center; gap:3px; height:24px; padding:0 9px; border-radius:6px; background:#eef1f6; color:#4a5568; font-size:12px; font-weight:700; white-space:nowrap; }
.talk-badge.is-category { background:var(--talk-blue-soft); color:#2058c7; }
.talk-badge.is-accepted { background:var(--talk-green-soft); color:var(--talk-green); }
.talk-badge.is-hidden { background:#fdecea; color:#c0463e; }
.talk-badge.is-questioner { background:var(--talk-orange-soft); color:var(--talk-orange); }
.talk-badge i { font-size:13px; }
.talk-author { display:inline-flex; align-items:center; gap:5px; color:#3d4759; font-weight:600; }
.talk-author i { color:#98a2b3; font-size:15px; }
.talk-author.is-company i { color:var(--talk-green); }
.talk-author.is-admin i { color:var(--talk-blue); }

/* 사이드 */
.talk-side-card { padding:20px 20px 10px; border:1px solid var(--info-line); border-radius:14px; background:#fff; }
.talk-side-card h2 { display:flex; align-items:center; gap:6px; margin:0 0 10px; color:var(--info-ink); font-size:16px; font-weight:700; }
.talk-side-card h2 i { color:#ef5b4c; font-size:18px; }
.talk-side-card ol { margin:0; padding:0; list-style:none; counter-reset:talk-rank; }
.talk-side-card li { border-top:1px solid #eef1f5; }
.talk-side-card li:first-child { border-top:0; }
.talk-side-card li a { display:grid; grid-template-columns:20px minmax(0,1fr); gap:8px; align-items:start; padding:11px 0; color:#3d4759; font-size:14px; line-height:1.5; }
.talk-side-card li a::before { counter-increment:talk-rank; content:counter(talk-rank); color:var(--talk-blue); font-weight:700; font-variant-numeric:tabular-nums; }
.talk-side-card li a span { overflow:hidden; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; word-break:keep-all; }
.talk-side-card li a:hover span { color:var(--talk-blue); }
.talk-side-card small { display:block; margin-top:2px; color:#8b94a4; font-size:12px; }
.talk-rules { padding:18px 20px; border-radius:14px; background:var(--info-soft); color:#4a5568; font-size:13px; line-height:1.65; }
.talk-rules strong { display:flex; align-items:center; gap:6px; margin-bottom:8px; color:var(--info-ink); font-size:14px; }
.talk-rules ul { margin:0; padding-left:18px; }
.talk-rules li { margin:3px 0; }

.talk-pagination { display:flex; align-items:center; justify-content:center; gap:6px; margin-top:36px; }
.talk-pagination a { display:inline-flex; align-items:center; justify-content:center; min-width:44px; height:44px; padding:0 6px; border-radius:8px; color:#5c6678; font-size:15px; font-weight:600; }
.talk-pagination a:hover { background:var(--info-soft); }
.talk-pagination a.is-active { background:var(--info-ink); color:#fff; }

/* 상세 */
.talk-question { padding:26px 28px; border:1px solid var(--info-line); border-radius:16px; background:#fff; }
.talk-question h1 { margin:10px 0 0; color:var(--info-ink); font-size:26px; line-height:1.45; font-weight:700; letter-spacing:-.4px; word-break:keep-all; }
.talk-question-meta { display:flex; flex-wrap:wrap; align-items:center; gap:8px 14px; margin-top:14px; padding-bottom:18px; border-bottom:1px solid var(--info-line); color:#7b8495; font-size:13px; }
.talk-body { margin:20px 0 0; color:#262f40; font-size:16px; line-height:1.8; white-space:pre-wrap; word-break:break-word; overflow-wrap:anywhere; }
.talk-actions { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:10px; margin-top:22px; }
.talk-actions-left, .talk-actions-right { display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
.talk-action { display:inline-flex; align-items:center; gap:5px; height:40px; padding:0 14px; border:1px solid #dfe4ec; border-radius:999px; background:#fff; color:#4a5568; font-family:inherit; font-size:14px; font-weight:600; cursor:pointer; }
.talk-action:hover { border-color:#b9c6dc; color:var(--info-ink); }
.talk-action i { font-size:17px; }
.talk-action.is-liked { border-color:var(--talk-blue); background:var(--talk-blue-soft); color:var(--talk-blue); }
.talk-action.is-danger:hover { border-color:#e3a39e; color:#c0463e; }
.talk-action[disabled] { opacity:.55; cursor:default; }
.talk-action.is-text { height:36px; padding:0 10px; border-color:transparent; background:transparent; }
.talk-action.is-text:hover { background:var(--info-soft); }

.talk-status-banner { display:flex; align-items:flex-start; gap:10px; margin-bottom:16px; padding:14px 16px; border-radius:12px; background:#fdecea; color:#8f3029; font-size:14px; line-height:1.6; }
.talk-status-banner i { margin-top:2px; font-size:18px; }
.talk-status-banner.is-soft { background:#fff7e6; color:#8a5a00; }
.talk-admin-bar { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-top:16px; padding:12px 14px; border:1px dashed #c9d3e3; border-radius:12px; background:#f7f9fd; color:#4a5568; font-size:13px; }
.talk-admin-bar strong { margin-right:auto; color:var(--info-ink); font-size:13px; }

.talk-answers-head { display:flex; align-items:center; justify-content:space-between; margin:34px 0 14px; }
.talk-answers-head h2 { margin:0; color:var(--info-ink); font-size:20px; font-weight:700; }
.talk-answers-head h2 em { color:var(--talk-blue); font-style:normal; }

.talk-answer-form { padding:18px 20px; border:1px solid var(--info-line); border-radius:14px; background:var(--info-soft); }
.talk-answer-form textarea, .talk-form textarea { display:block; width:100%; min-height:130px; padding:14px 16px; border:1px solid #d3d9e3; border-radius:10px; background:#fff; color:var(--info-ink); font-family:inherit; font-size:15px; line-height:1.7; resize:vertical; }
.talk-answer-form textarea:focus, .talk-form textarea:focus, .talk-form input:focus { outline:2px solid rgba(47,111,235,.25); border-color:var(--talk-blue); }
.talk-answer-form-foot { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:10px; color:#7b8495; font-size:13px; }
.talk-login-prompt { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:18px 20px; border:1px solid var(--info-line); border-radius:14px; background:var(--info-soft); color:#4a5568; font-size:15px; }
.talk-login-prompt a { flex:none; }

.talk-answer { padding:20px 4px; border-bottom:1px solid var(--info-line); }
.talk-answer.is-accepted { margin:12px 0 0; padding:20px 18px; border:1px solid #bfe5cf; border-radius:14px; background:#f6fcf8; }
.talk-answer-head { display:flex; flex-wrap:wrap; align-items:center; gap:6px 10px; color:#7b8495; font-size:13px; }
.talk-answer .talk-body { margin-top:10px; font-size:15px; }
.talk-answer .talk-actions { margin-top:12px; }
.talk-answer-hidden { padding:18px 4px; border-bottom:1px solid var(--info-line); color:#8b94a4; font-size:14px; }
.talk-answer-hidden i { margin-right:6px; }
.talk-action.is-active { border-color:var(--talk-blue); background:var(--talk-blue-soft); color:var(--talk-blue); }

/* 답변 댓글 (한 단계) */
.talk-comments { margin-top:14px; padding:6px 18px 12px; border-radius:12px; background:#f7f8fa; }
.talk-comment-list { margin:0; padding:0; list-style:none; }
.talk-comment { padding:12px 0; border-bottom:1px solid #e8ebf0; }
.talk-comment.is-hidden { color:#8b94a4; font-size:13px; }
.talk-comment.is-hidden i { margin-right:6px; }
.talk-comment-head { display:flex; flex-wrap:wrap; align-items:center; gap:4px 8px; color:#7b8495; font-size:12px; }
.talk-comment-head .talk-author { font-size:13px; }
.talk-comment-head .talk-badge { height:20px; padding:0 7px; font-size:11px; }
.talk-comment-tools { display:inline-flex; align-items:center; gap:2px; margin-left:auto; }
.talk-comment-tools button { height:26px; padding:0 7px; border:0; border-radius:6px; background:transparent; color:#7b8495; font-family:inherit; font-size:12px; font-weight:600; cursor:pointer; }
.talk-comment-tools button:hover { background:#eceff4; color:var(--info-ink); }
.talk-comment-tools button:disabled { cursor:default; opacity:.6; background:transparent; }
.talk-comment-tools .is-danger:hover { color:#c0463e; }
.talk-comment-admin { display:inline-flex; gap:2px; margin-left:4px; padding-left:6px; border-left:1px solid #dfe3ea; }
.talk-comment-body { margin:6px 0 0; color:#30394b; font-size:14px; line-height:1.65; white-space:pre-wrap; word-break:break-word; overflow-wrap:anywhere; }
.talk-comment-empty { padding:14px 0; border-bottom:1px solid #e8ebf0; color:#8b94a4; font-size:13px; }
.talk-comment-form { margin-top:12px; }
.talk-comment-form textarea { display:block; width:100%; min-height:64px; padding:10px 12px; border:1px solid #d3d9e3; border-radius:8px; background:#fff; color:var(--info-ink); font-family:inherit; font-size:14px; line-height:1.6; resize:vertical; }
.talk-comment-form textarea:focus { outline:2px solid rgba(47,111,235,.25); border-color:var(--talk-blue); }
.talk-comment-form-foot { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:8px; color:#8b94a4; font-size:12px; }
.talk-comment-form-foot > span { white-space:nowrap; }
.talk-comment-form-foot .info-button { flex:none; width:auto; height:36px; min-height:36px; padding:0 18px; font-size:14px; }
.talk-comment-login { margin:12px 0 0; color:#6b7485; font-size:13px; }
.talk-comment-login a { color:var(--talk-blue); font-weight:700; text-decoration:underline; }
.talk-comment-close { display:flex; align-items:center; justify-content:center; gap:4px; width:100%; height:36px; margin-top:10px; border:0; border-radius:8px; background:transparent; color:#6b7485; font-family:inherit; font-size:13px; font-weight:600; cursor:pointer; }
.talk-comment-close:hover { background:#eceff4; color:var(--info-ink); }
.talk-empty-answers { padding:34px 20px; border-bottom:1px solid var(--info-line); color:#7b8495; text-align:center; font-size:15px; }

.talk-blocked { display:flex; flex-direction:column; align-items:center; gap:10px; margin:40px auto 0; max-width:520px; padding:56px 24px; border:1px solid var(--info-line); border-radius:18px; background:var(--info-soft); text-align:center; }
.talk-blocked i { color:#98a2b3; font-size:40px; }
.talk-blocked h1 { margin:0; color:var(--info-ink); font-size:22px; font-weight:700; }
.talk-blocked p { margin:0; color:#5f6878; font-size:15px; line-height:1.65; }
.talk-blocked a { margin-top:10px; }

/* 신고 창 */
.talk-dialog { position:fixed; inset:0; z-index:1200; display:flex; align-items:center; justify-content:center; padding:20px; background:rgba(17,24,39,.45); }
.talk-dialog[hidden] { display:none; }
.talk-dialog-panel { width:100%; max-width:420px; padding:24px; border-radius:16px; background:#fff; box-shadow:0 20px 60px rgba(15,23,42,.25); }
.talk-dialog-panel h2 { margin:0 0 6px; color:var(--info-ink); font-size:19px; font-weight:700; }
.talk-dialog-panel p { margin:0 0 14px; color:#5f6878; font-size:14px; line-height:1.6; }
.talk-dialog-options { display:grid; gap:4px; margin-bottom:12px; }
.talk-dialog-options label { display:flex; align-items:center; gap:10px; min-height:44px; padding:0 12px; border:1px solid #e3e8ef; border-radius:10px; color:#3d4759; font-size:15px; cursor:pointer; }
.talk-dialog-options label:has(input:checked) { border-color:var(--talk-blue); background:var(--talk-blue-soft); }
.talk-dialog-options input { width:18px; height:18px; accent-color:var(--talk-blue); }
.talk-dialog-panel textarea { display:block; width:100%; min-height:80px; padding:12px 14px; border:1px solid #d3d9e3; border-radius:10px; font-family:inherit; font-size:14px; resize:vertical; }
.talk-dialog-actions { display:flex; justify-content:flex-end; gap:8px; margin-top:16px; }

/* 작성 */
.talk-form { display:grid; gap:18px; margin-top:24px; }
.talk-form-section { padding:24px 26px; border:1px solid var(--info-line); border-radius:14px; background:#fff; }
.talk-form-section > label, .talk-form-label { display:flex; align-items:center; justify-content:space-between; margin-bottom:10px; color:#3d4759; font-size:14px; font-weight:700; }
.talk-form-label em, .talk-form-section > label em { color:#7b8495; font-size:13px; font-style:normal; font-weight:500; font-variant-numeric:tabular-nums; }
.talk-form input[type=text] { display:block; width:100%; height:50px; padding:0 16px; border:1px solid #d3d9e3; border-radius:10px; color:var(--info-ink); font-family:inherit; font-size:16px; }
.talk-form textarea { min-height:320px; }
.talk-category-picker { display:flex; flex-wrap:wrap; gap:8px; }
.talk-category-picker label { position:relative; }
.talk-category-picker input { position:absolute; opacity:0; pointer-events:none; }
.talk-category-picker span { display:inline-flex; align-items:center; height:42px; padding:0 16px; border:1px solid #dfe4ec; border-radius:999px; color:#4a5568; font-size:14px; font-weight:600; cursor:pointer; }
.talk-category-picker input:checked + span { border-color:var(--talk-blue); background:var(--talk-blue); color:#fff; }
.talk-category-picker input:focus-visible + span { outline:2px solid rgba(47,111,235,.4); outline-offset:2px; }
.talk-author-preview { display:flex; align-items:center; gap:8px; color:#4a5568; font-size:14px; }
.talk-form-actions { display:flex; justify-content:space-between; gap:10px; }

/* 운영 */
.talk-admin-stats { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:12px; margin-top:22px; }
.talk-admin-stat { padding:16px 18px; border:1px solid var(--info-line); border-radius:12px; background:#fff; }
.talk-admin-stat span { display:block; color:#6b7485; font-size:13px; font-weight:600; }
.talk-admin-stat strong { display:block; margin-top:6px; color:var(--info-ink); font-size:24px; font-weight:700; font-variant-numeric:tabular-nums; }
.talk-admin-stat.is-alert strong { color:#c0463e; }
.talk-admin-filters { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:10px; margin-top:24px; padding-bottom:12px; border-bottom:2px solid #222b3c; }
.talk-admin-filters select { height:44px; padding:0 12px; border:1px solid #d3d9e3; border-radius:8px; font-family:inherit; font-size:14px; }
.talk-admin-table-wrap { overflow-x:auto; }
.talk-admin-table { width:100%; min-width:960px; border-collapse:collapse; }
.talk-admin-table th { height:44px; padding:0 10px; border-bottom:1px solid #d7dde6; color:#5c6678; font-size:13px; font-weight:600; text-align:left; white-space:nowrap; }
.talk-admin-table td { padding:12px 10px; border-bottom:1px solid var(--info-line); color:#3d4759; font-size:14px; vertical-align:top; }
.talk-admin-table td.is-num { text-align:center; font-variant-numeric:tabular-nums; }
.talk-admin-table tr:not(.talk-admin-detail) > td:is(:nth-child(1), :nth-child(2), :nth-child(4), :nth-child(7)) { white-space:nowrap; }
.talk-admin-table .is-report-hot { color:#c0463e; font-weight:700; }
.talk-admin-title a { color:var(--info-ink); font-weight:600; }
.talk-admin-title small { display:block; margin-top:4px; color:#7b8495; font-size:13px; line-height:1.5; }
.talk-admin-row-actions { display:flex; flex-wrap:nowrap; gap:6px; }
.talk-admin-row-actions button { height:34px; padding:0 10px; border:1px solid #d3d9e3; border-radius:8px; background:#fff; color:#3d4759; font-family:inherit; font-size:13px; font-weight:600; cursor:pointer; white-space:nowrap; }
.talk-admin-row-actions button:hover { border-color:var(--talk-blue); color:var(--talk-blue); }
.talk-admin-row-actions button.is-danger:hover { border-color:#e3a39e; color:#c0463e; }
.talk-admin-detail td { background:#f8fafc; }
.talk-admin-detail-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.talk-admin-detail-grid h3 { margin:0 0 6px; color:var(--info-ink); font-size:14px; }
.talk-admin-detail-grid ul { margin:0; padding-left:18px; color:#4a5568; font-size:13px; line-height:1.7; }

/* 메인 섹션 */
.main-talk-section[hidden] { display:none; }
.main-talk-grid { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:20px; }
.main-talk-feature { display:flex; flex-direction:column; padding:24px 26px; border-radius:18px; background:linear-gradient(135deg,#eef3fd 0%,#f6f3ff 100%); color:inherit; min-height:236px; }
.main-talk-feature:hover .main-talk-feature-title { color:#2058c7; }
.main-talk-feature-badges { display:flex; flex-wrap:wrap; gap:6px; }
.main-talk-feature-title { margin:12px 0 0; overflow:hidden; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; color:#171d2b; font-size:21px; line-height:1.45; font-weight:700; word-break:keep-all; }
.main-talk-feature-excerpt { margin:10px 0 0; overflow:hidden; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; color:#4a5568; font-size:15px; line-height:1.65; word-break:keep-all; }
.main-talk-feature-meta { display:flex; flex-wrap:wrap; align-items:center; gap:6px 14px; margin-top:auto; padding-top:16px; color:#5f6878; font-size:13px; }
.main-talk-feature-meta strong { color:#2058c7; }
/* 불러오기 전 자리 잡기. 메인 스켈레톤 줄(.main-skeleton-line)을 그대로 쓴다. */
.main-talk-feature.is-skeleton, .main-talk-list.is-skeleton { position:relative; overflow:hidden; gap:16px; justify-content:center; }
.main-talk-feature.is-skeleton { justify-content:flex-start; padding-top:30px; }
.main-talk-list.is-skeleton { min-height:236px; padding:24px 24px; }
.main-talk-feature.is-skeleton::after, .main-talk-list.is-skeleton::after { content:""; position:absolute; inset:0; transform:translateX(-100%); background:linear-gradient(90deg,transparent,rgba(255,255,255,.7),transparent); animation:mainShimmer 1.25s ease-in-out infinite; }
.main-talk-list { display:flex; flex-direction:column; padding:8px 20px; border:1px solid #e7eaf0; border-radius:18px; background:#fff; }
.main-talk-list a { display:grid; grid-template-columns:76px minmax(0,1fr) auto; gap:10px; align-items:center; min-height:52px; border-bottom:1px solid #eef1f5; color:#30394b; font-size:15px; }
.main-talk-list a .talk-badge { justify-self:start; }
.main-talk-list a:last-child { border-bottom:0; }
.main-talk-list a:hover .main-talk-list-title { color:#2058c7; }
.main-talk-list-title { overflow:hidden; white-space:nowrap; text-overflow:ellipsis; font-weight:600; }
.main-talk-list-answers { color:#2f6feb; font-size:13px; font-weight:700; white-space:nowrap; }
.main-talk-list-answers.is-waiting { color:#8b94a4; font-weight:600; }
.main-talk-foot { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; margin-top:16px; }
.main-talk-chips { display:flex; flex-wrap:wrap; gap:8px; }
.main-talk-chips a { display:inline-flex; align-items:center; height:36px; padding:0 14px; border:1px solid #e1e5ec; border-radius:999px; background:#fff; color:#4a5568; font-size:14px; font-weight:600; }
.main-talk-chips a:hover { border-color:#2f6feb; color:#2f6feb; }
.main-talk-ask { display:inline-flex; align-items:center; gap:6px; height:44px; padding:0 20px; border-radius:10px; background:#171d2b; color:#fff!important; font-size:15px; font-weight:700; }
.main-talk-ask:hover { background:#2f6feb; }

@media (max-width:1024px) {
    .talk-layout { grid-template-columns:1fr; }
    .talk-aside { position:static; }
    .talk-admin-stats { grid-template-columns:repeat(3,minmax(0,1fr)); }
}

@media (max-width:768px) {
    .talk-toolbar { flex-direction:column; align-items:stretch; }
    .talk-search { width:100%; }
    .talk-categories { flex-wrap:nowrap; overflow-x:auto; padding-bottom:4px; -webkit-overflow-scrolling:touch; }
    .talk-item-link { grid-template-columns:1fr; gap:10px; padding:16px 2px; }
    .talk-item-title { -webkit-line-clamp:2; font-size:16px; }
    .talk-item-stats { justify-content:flex-start; }
    .talk-answer-box { flex-direction:row; gap:6px; width:auto; height:32px; padding:0 12px; border-radius:8px; }
    .talk-answer-box strong { font-size:15px; }
    .talk-answer-box span { margin-top:0; }
    .talk-answer-box.is-waiting strong { font-size:13px; }
    .talk-small-stats { flex-direction:row; gap:12px; }
    .talk-question { padding:20px 18px; }
    .talk-question h1 { font-size:21px; }
    .talk-answer.is-accepted { margin:0; padding:16px 14px; }
    .talk-login-prompt { flex-direction:column; align-items:stretch; }
    .talk-form-section { padding:18px 16px; }
    .talk-form textarea { min-height:260px; }
    .talk-admin-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .talk-admin-detail-grid { grid-template-columns:1fr; }
    .main-talk-grid { grid-template-columns:1fr; }
    .main-talk-feature { min-height:0; padding:20px; }
    .main-talk-feature-title { font-size:18px; }
    .main-talk-list { padding:4px 16px; }
    .main-talk-list a { font-size:14px; }
    .main-talk-chips { flex-wrap:nowrap; overflow-x:auto; padding-bottom:4px; scrollbar-width:none; }
    .main-talk-chips a { flex:none; white-space:nowrap; }
    .main-talk-foot { flex-direction:column; align-items:stretch; }
    .main-talk-ask { justify-content:center; }
}
