/*
 * /features/ai page styles. Prefix: kf-ai-. Builds on wa.css components.
 */

/* ---------- Hero ---------- */
.kf-ai-hero { position: relative; }
.kf-ai-stage { position: relative; display: flex; justify-content: center; padding: 16px 0 8px; perspective: 1400px; }
.kf-ai-stage .kh-wa-body .kh-msg { max-width: 88%; }
.kf-ai-float-src { bottom: 30px; left: -130px; align-items: flex-start; max-width: 260px; animation-delay: -3s; transition: box-shadow .3s, border-color .3s; }
.kf-ai-float-src.is-flash { border-color: #c4b5fd; box-shadow: 0 0 0 4px rgba(124, 58, 237, .12), 0 20px 44px -12px rgba(7, 94, 84, .28); }
.kf-ai-float-src.is-human .kh-float-icon { background: linear-gradient(135deg, var(--kh-wa), var(--kh-wa-teal)); }
.kf-ai-src-txt { min-width: 0; line-height: 1.35; }
.kf-ai-src-txt strong { display: block; color: var(--ks-muted); font-size: 11px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; }
.kf-ai-src-txt b { display: block; margin-top: 2px; color: var(--ks-ink); font-size: 13.5px; }
.kf-ai-src-txt em { display: block; margin-top: 3px; padding: 5px 8px; border-left: 3px solid #a78bfa; border-radius: 6px; background: #f5f3ff; color: var(--ks-text); font-size: 12px; font-style: normal; }
.kf-ai-src-txt em:empty { display: none; }
.kf-ai-float-kb { top: 10%; right: -14px; animation-delay: -1s; }

.kf-ai-ask { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 8px; margin-top: 18px; }
.kf-ai-ask-label { color: var(--ks-muted); font-size: 13px; font-weight: 700; }
.kf-ai-ask-btn { min-height: 38px; padding: 0 14px; border: 1.5px solid var(--ks-line); border-radius: 999px; background: #fff; color: var(--ks-ink); font: 600 13.5px/1.2 var(--ks-font); cursor: pointer; transition: border-color .15s, background .15s, color .15s; }
.kf-ai-ask-btn:hover { border-color: #9fdcc4; }
.kf-ai-ask-btn[aria-pressed="true"] { border-color: var(--ks-primary); background: var(--ks-primary-50); color: var(--ks-primary-700); }
.kf-ai-ask-btn:disabled { cursor: progress; }

/* ---------- Knowledge base demo ---------- */
.kf-ai-kb { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 40px; align-items: start; padding: 36px; border: 1px solid var(--ks-line); border-radius: 28px; background: #fff; box-shadow: var(--ks-shadow-lg); }
.kf-ai-kb-side, .kf-ai-kb-main { min-width: 0; }
.kf-ai-kb-chips { gap: 8px; margin-bottom: 22px; }
.kf-ai-kb-chips .kh-chip { min-height: 40px; padding: 6px 14px; font-size: 13.5px; }
.kf-ai-kb-win { background: #fff; }
.kf-ai-entries { display: grid; gap: 8px; margin: 0; padding: 12px; list-style: none; }
.kf-ai-entry { display: flex; align-items: center; gap: 12px; min-width: 0; padding: 10px 12px; border: 1px solid var(--ks-line); border-radius: 12px; background: #fff; transition: border-color .25s, background .25s, box-shadow .25s; }
.kf-ai-entry.is-hit { border-color: var(--kh-wa-teal); background: var(--ks-primary-50); box-shadow: 0 0 0 3px rgba(18, 140, 126, .12); }
.kf-ai-entry-icon { flex: none; display: grid; place-items: center; width: 34px; height: 34px; border-radius: 10px; background: var(--ks-soft); color: var(--kh-wa-teal); font-size: 18px; transition: background .25s, color .25s; }
.kf-ai-entry.is-hit .kf-ai-entry-icon { background: var(--kh-wa-teal); color: #fff; }
.kf-ai-entry-txt { flex: 1; min-width: 0; line-height: 1.35; }
.kf-ai-entry-txt strong { display: block; color: var(--ks-ink); font-size: 14px; }
.kf-ai-entry-txt small { display: block; color: var(--ks-muted); font-size: 12.5px; }
.kf-ai-entry em { flex: none; padding: 2px 8px; border-radius: 999px; background: #dcfce7; color: #15803d; font-size: 11.5px; font-style: normal; font-weight: 700; }
.kf-ai-kb-screen { max-width: none; }
.kf-ai-kb-chat { min-height: 300px; justify-content: flex-end; }
.kf-ai-used { display: flex; align-items: flex-start; gap: 8px; margin: 14px 0 0; padding: 10px 14px; border-radius: 12px; background: var(--ks-primary-50); color: var(--ks-primary-700); font-size: 13.5px; font-weight: 600; line-height: 1.45; }
.kf-ai-used i { flex: none; margin-top: 1px; font-size: 17px; }
.kf-ai-used.is-miss { background: #fef3c7; color: #92400e; }
.kf-ai-note { display: flex; align-items: flex-start; justify-content: center; gap: 8px; max-width: 860px; margin: 22px auto 0; color: var(--ks-muted); font-size: 13.5px; line-height: 1.5; }
.kf-ai-note i { flex: none; margin-top: 2px; color: var(--kh-wa-teal); font-size: 16px; }
.kf-ai-kb-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; margin-top: 48px; }
.kf-ai-kb-facts .ks-card { padding: 24px; }
.kf-ai-kb-facts h3 { margin: 16px 0 6px; font-size: 1.05rem; }
.kf-ai-kb-facts p { margin: 0; color: var(--ks-muted); font-size: 14.5px; }

/* ---------- Chatbot menu builder ---------- */
.kf-ai-mb { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 40px; align-items: start; padding: 36px; border: 1px solid var(--ks-line); border-radius: 28px; background: #fff; box-shadow: var(--ks-shadow-lg); }
.kf-ai-mb-editor, .kf-ai-mb-preview { min-width: 0; }
.kf-ai-mb-head { display: flex; align-items: center; gap: 12px; line-height: 1.3; }
.kf-ai-mb-head > i { flex: none; display: grid; place-items: center; width: 42px; height: 42px; border-radius: 12px; background: linear-gradient(135deg, var(--kh-wa-dark), var(--kh-wa-teal)); color: #fff; font-size: 22px; }
.kf-ai-mb-head span { min-width: 0; }
.kf-ai-mb-head strong { display: block; color: var(--ks-ink); font-size: 1.05rem; }
.kf-ai-mb-head small { display: block; color: var(--ks-muted); font-size: 13px; }
.kf-ai-field { display: grid; gap: 6px; margin: 22px 0 18px; }
.kf-ai-field > span, .kf-ai-opts-head > span { color: var(--ks-muted); font-size: 12.5px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; }
.kf-ai-field textarea { width: 100%; min-height: 64px; padding: 10px 12px; border: 1px solid var(--ks-line); border-radius: 12px; background: #fff; color: var(--ks-ink); font: 15px/1.45 var(--ks-font); resize: vertical; }
.kf-ai-field textarea:focus, .kf-ai-opt input:focus, .kf-ai-opt select:focus { border-color: var(--ks-primary); outline: 0; box-shadow: 0 0 0 3px rgba(18, 140, 126, .15); }
.kf-ai-opts-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 8px; }
.kf-ai-opts-head small { color: var(--ks-muted); font-size: 12.5px; }
.kf-ai-opts { display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; }
.kf-ai-opt { display: grid; grid-template-columns: 28px minmax(0, 1fr) minmax(0, 150px) 36px; grid-template-areas: "num title type del"; gap: 8px; align-items: center; padding: 8px; border: 1px solid var(--ks-line); border-radius: 12px; background: var(--ks-soft); }
.kf-ai-opt.is-new { animation: kh-pop .3s ease both; }
.kf-ai-opt-num { grid-area: num; display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: var(--ks-primary); color: #fff; font-size: 13px; font-weight: 700; }
.kf-ai-opt input, .kf-ai-opt select { width: 100%; min-width: 0; height: 40px; padding: 0 10px; border: 1px solid var(--ks-line); border-radius: 10px; background: #fff; color: var(--ks-ink); font: 14px/1.2 var(--ks-font); }
.kf-ai-opt input { grid-area: title; }
.kf-ai-opt select { grid-area: type; cursor: pointer; }
.kf-ai-opt-del { grid-area: del; display: grid; place-items: center; width: 36px; height: 36px; border: 0; border-radius: 10px; background: none; color: var(--ks-muted); font-size: 18px; cursor: pointer; transition: background .15s, color .15s; }
.kf-ai-opt-del:hover { background: #fee2e2; color: #b91c1c; }
.kf-ai-add { display: flex; align-items: center; justify-content: center; gap: 6px; width: 100%; height: 44px; margin-top: 10px; border: 1.5px dashed #9fdcc4; border-radius: 12px; background: none; color: var(--ks-primary); font: 600 14px/1 var(--ks-font); cursor: pointer; transition: background .15s; }
.kf-ai-add:hover:not(:disabled) { background: var(--ks-primary-50); }
.kf-ai-add:disabled { cursor: not-allowed; opacity: .5; }
.kf-ai-route-pick { margin-top: 22px; }
.kf-ai-rule { margin: 10px 0 0; color: var(--ks-muted); font-size: 13.5px; line-height: 1.5; }
.kf-ai-mb-screen { max-width: none; }
.kf-ai-mb-chat { height: 440px; min-height: 0; overflow-y: auto; scrollbar-width: none; }
.kf-ai-mb-chat::-webkit-scrollbar { display: none; }
.kf-ai-mb-chat .kh-msg-buttons button:disabled { color: #027eb5; cursor: default; }
.kf-ai-numline { display: block; width: 100%; padding: 3px 0; border: 0; background: none; color: #111b21; font: inherit; text-align: left; cursor: pointer; overflow-wrap: anywhere; }
.kf-ai-numline:hover:not(:disabled) { color: var(--kh-wa-teal); text-decoration: underline; }
.kf-ai-numline:disabled { cursor: default; }
.kf-ai-foot { display: block; margin-top: 6px; color: #667781; font-size: 12px; }
.kf-ai-sheet { align-self: flex-start; width: 84%; overflow: hidden; border-radius: 10px; background: #fff; box-shadow: 0 1px .5px rgba(11, 20, 26, .13); }
.kf-ai-sheet[hidden] { display: none; }
.kf-ai-sheet-head { margin: 0; padding: 9px 12px; border-bottom: 1px solid #e9edef; color: #54656f; font-size: 12.5px; font-weight: 700; }
.kf-ai-row { display: flex; align-items: center; justify-content: space-between; gap: 10px; width: 100%; padding: 10px 12px; border: 0; background: none; color: #111b21; font: 13.5px/1.3 var(--ks-font); text-align: left; cursor: pointer; }
.kf-ai-row + .kf-ai-row { border-top: 1px solid #e9edef; }
.kf-ai-row span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.kf-ai-row::after { content: ""; flex: none; width: 16px; height: 16px; border: 2px solid #8696a0; border-radius: 50%; }
.kf-ai-row:hover:not(:disabled) { background: #f5f6f6; }
.kf-ai-row:disabled { cursor: default; }
.kf-ai-sys { align-self: center; display: inline-flex; align-items: center; gap: 6px; max-width: 92%; padding: 5px 10px; border-radius: 8px; background: rgba(255, 255, 255, .92); color: #54656f; font-size: 12px; text-align: center; box-shadow: 0 1px .5px rgba(11, 20, 26, .13); }
.kf-ai-sys i { flex: none; color: var(--kh-wa-teal); font-size: 15px; }
.kf-ai-again { align-self: center; display: inline-flex; align-items: center; gap: 6px; margin-top: 4px; padding: 6px 12px; border: 0; border-radius: 8px; background: #fff; color: var(--kh-wa-teal); font: 600 12.5px/1.2 var(--ks-font); cursor: pointer; box-shadow: 0 1px .5px rgba(11, 20, 26, .13); }
.kf-ai-hint { display: flex; align-items: center; justify-content: center; gap: 6px; margin: 14px 0 0; color: var(--ks-muted); font-size: 13px; font-weight: 600; text-align: center; }
.kf-ai-hint i { color: var(--kh-wa-teal); font-size: 17px; }

/* ---------- Routing (teal) ---------- */
.kf-ai-route { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 40px; align-items: start; }
.kf-ai-rmsgs { display: grid; gap: 10px; min-width: 0; }
.kf-ai-rmsg { display: flex; flex-direction: column; align-items: flex-start; gap: 6px; width: 100%; min-width: 0; padding: 10px 12px; border: 1px solid rgba(255, 255, 255, .18); border-radius: 16px; background: rgba(255, 255, 255, .06); color: #fff; font: inherit; text-align: left; cursor: pointer; transition: background .2s, border-color .2s, box-shadow .2s; }
.kf-ai-rmsg:hover { border-color: rgba(255, 255, 255, .4); }
.kf-ai-rmsg[aria-pressed="true"] { border-color: #b9f6d0; background: rgba(255, 255, 255, .16); box-shadow: 0 14px 30px -18px rgba(0, 0, 0, .5); }
.kf-ai-rbubble { max-width: 100%; padding: 7px 10px; border-radius: 10px 10px 10px 2px; background: #fff; color: #111b21; font-size: 14px; line-height: 1.4; overflow-wrap: anywhere; }
.kf-ai-rmsg small { color: rgba(255, 255, 255, .72); font-size: 11.5px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; }
.kf-ai-rright { min-width: 0; }
.kf-ai-rules { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.kf-ai-rulecard { position: relative; display: flex; align-items: flex-start; gap: 14px; padding: 14px 16px; border: 1px solid rgba(255, 255, 255, .18); border-radius: 16px; transition: opacity .3s, background .3s, border-color .3s, box-shadow .3s; }
.kf-ai-rulecard.is-skip { opacity: .5; }
.kf-ai-rulecard.is-match { border-color: #b9f6d0; background: rgba(255, 255, 255, .2); box-shadow: inset 4px 0 0 var(--kh-wa), 0 18px 36px -20px rgba(0, 0, 0, .5); }
.kf-ai-rnum { flex: none; display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: rgba(255, 255, 255, .14); color: #fff; font-size: 13px; font-weight: 800; transition: background .3s, color .3s; }
.kf-ai-rulecard.is-match .kf-ai-rnum { background: var(--kh-wa); color: #073b33; }
.kf-ai-rtxt { min-width: 0; line-height: 1.4; }
.kf-ai-rtxt strong { display: flex; align-items: center; gap: 7px; color: #fff; font-size: 15px; }
.kf-ai-rtxt strong i { flex: none; color: #b9f6d0; font-size: 18px; }
.kf-ai-rtxt small { display: block; margin-top: 3px; color: rgba(255, 255, 255, .78); font-size: 13.5px; }
.kf-ai-rresult { display: flex; align-items: center; gap: 14px; margin-top: 14px; padding: 16px 18px; border-radius: 18px; background: #fff; color: var(--ks-ink); box-shadow: 0 24px 50px -24px rgba(0, 0, 0, .5); }
.kf-ai-rresult.is-swap { animation: kh-panel-in .35s ease both; }
.kf-ai-rresult > span:last-child { min-width: 0; line-height: 1.35; }
.kf-ai-rresult small { display: block; color: var(--ks-muted); font-size: 11.5px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.kf-ai-rresult strong { display: block; color: var(--ks-ink); font-size: 15.5px; }
.kf-ai-rresult-icon { flex: none; display: grid; place-items: center; width: 44px; height: 44px; border-radius: 13px; background: linear-gradient(135deg, var(--kh-wa-dark), var(--kh-wa-teal)); color: #fff; font-size: 22px; }
.kf-ai-rfoot { margin: 12px 0 0; color: rgba(255, 255, 255, .75); font-size: 13px; }

/* ---------- Menus vs AI auto reply ---------- */
.kf-ai-mode-seg { display: flex; justify-content: center; margin-bottom: 36px; }
.kf-ai-mode-seg button { display: inline-flex; align-items: center; justify-content: center; gap: 6px; }
.kf-ai-mode-seg button i { font-size: 17px; }
.kf-ai-mode { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 48px; align-items: center; animation: kh-panel-in .4s ease both; }
.kf-ai-mode[hidden] { display: none; }
.kf-ai-facts { display: grid; margin: 0; }
.kf-ai-facts div { display: grid; grid-template-columns: 170px minmax(0, 1fr); gap: 16px; padding: 14px 0; border-bottom: 1px solid var(--ks-line); }
.kf-ai-facts div:first-child { border-top: 1px solid var(--ks-line); }
.kf-ai-facts dt { color: var(--ks-muted); font-size: 13.5px; font-weight: 600; }
.kf-ai-facts dd { margin: 0; color: var(--ks-ink); font-size: 15px; }
.kf-ai-settings { min-width: 0; background: #fff; box-shadow: var(--ks-shadow-lg); }
.kf-ai-set-body { display: grid; gap: 10px; padding: 18px; }
.kf-ai-set-row { display: grid; gap: 4px; min-width: 0; padding: 10px 12px; border: 1px solid var(--ks-line); border-radius: 12px; background: var(--ks-soft); }
.kf-ai-set-row > span { color: var(--ks-muted); font-size: 11.5px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; }
.kf-ai-set-row > b { color: var(--ks-ink); font-size: 14px; font-weight: 600; overflow-wrap: anywhere; }
.kf-ai-pills { display: flex; flex-wrap: wrap; gap: 6px; }
.kf-ai-pills i { padding: 2px 9px; border-radius: 999px; background: var(--ks-primary-50); color: var(--ks-primary-700); font-size: 12.5px; font-style: normal; }
.kf-ai-switch { display: inline-flex; align-items: center; gap: 8px; }
.kf-ai-switch.is-on::before { content: ""; flex: none; width: 32px; height: 18px; border-radius: 999px; background: radial-gradient(circle at 23px 9px, #fff 6px, var(--kh-wa) 6.5px); }

/* ---------- Inbox handoff demo ---------- */
.kf-ai-inbox { min-width: 0; }
.kf-ai-inbox-win { background: #fff; box-shadow: var(--ks-shadow-lg); }
.kf-ai-inbox-head { display: flex; align-items: center; gap: 12px; padding: 12px 16px; border-bottom: 1px solid var(--ks-line); background: #fff; }
.kf-ai-inbox-avatar { flex: none; display: grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; background: #ede9fe; color: #6d28d9; font-size: 13px; font-weight: 800; }
.kf-ai-inbox-who { flex: 1; min-width: 0; line-height: 1.3; }
.kf-ai-inbox-who strong, .kf-ai-inbox-who small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.kf-ai-inbox-who strong { color: var(--ks-ink); font-size: 14.5px; }
.kf-ai-inbox-who small { color: var(--ks-muted); font-size: 12px; }
.kf-ai-inbox-who small i { color: #1faa59; font-size: 14px; vertical-align: -2px; margin-right: 3px; }
.kf-ai-pill { flex: none; padding: 4px 10px; border-radius: 999px; font-size: 12px; font-style: normal; font-weight: 700; white-space: nowrap; }
.kf-ai-pill.is-ai { background: #ede9fe; color: #6d28d9; }
.kf-ai-pill.is-human { background: #fef3c7; color: #92400e; }
.kf-ai-pill.is-closed { background: #e9edef; color: #54656f; }
.kf-ai-thread { display: flex; flex-direction: column; gap: 6px; height: 320px; padding: 14px; overflow-y: auto; scrollbar-width: none; }
.kf-ai-thread::-webkit-scrollbar { display: none; }
.kf-ai-by { display: inline-block; margin-right: 6px; padding: 0 5px; border-radius: 4px; background: rgba(124, 58, 237, .12); color: #6d28d9; font-size: 10px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; vertical-align: 1px; }
.kf-ai-by.is-agent { background: rgba(217, 119, 6, .14); color: #92400e; }
.kf-ai-by.is-notice { background: rgba(84, 101, 111, .14); color: #54656f; }
.kf-ai-suggest { display: grid; gap: 8px; padding: 12px 14px 4px; border-top: 1px solid var(--ks-line); background: #fff; }
.kf-ai-suggest[hidden] { display: none; }
.kf-ai-suggest p { margin: 0; color: var(--ks-muted); font-size: 11.5px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; }
.kf-ai-suggest button { width: 100%; padding: 8px 10px; border: 1px solid #ddd6fe; border-radius: 10px; background: #faf5ff; color: var(--ks-ink); font: 13px/1.45 var(--ks-font); text-align: left; cursor: pointer; transition: border-color .15s, background .15s; }
.kf-ai-suggest button:hover { border-color: #a78bfa; background: #f5f3ff; }
.kf-ai-suggest b { display: block; color: #6d28d9; font-size: 11px; letter-spacing: .05em; text-transform: uppercase; }
.kf-ai-inbox-actions { display: flex; flex-wrap: wrap; gap: 8px; padding: 12px 14px; border-top: 1px solid var(--ks-line); background: #fff; }
.kf-ai-act { --tone: var(--kh-wa-teal); --tone-line: #a7dcc8; --tone-soft: var(--ks-primary-50); display: inline-flex; align-items: center; gap: 6px; min-height: 38px; padding: 0 12px; border: 1px solid var(--tone-line); border-radius: 10px; background: #fff; color: var(--tone); font: 600 13px/1.2 var(--ks-font); cursor: pointer; transition: background .15s, opacity .15s; }
.kf-ai-act i { font-size: 17px; }
.kf-ai-act.is-amber { --tone: #b45309; --tone-line: #fcd34d; --tone-soft: #fffbeb; }
.kf-ai-act.is-violet { --tone: #6d28d9; --tone-line: #ddd6fe; --tone-soft: #f5f3ff; }
.kf-ai-act.is-red { --tone: #b91c1c; --tone-line: #fecaca; --tone-soft: #fef2f2; }
.kf-ai-act:hover:not(:disabled) { background: var(--tone-soft); }
.kf-ai-act:disabled { cursor: not-allowed; opacity: .42; }

.kf-ai-faq-head { margin-top: 88px; margin-bottom: 32px; }

@keyframes kf-ai-flash { 0% { transform: none; } 40% { transform: scale(1.04); } 100% { transform: none; } }
.kf-ai-float-src.is-flash .kf-ai-src-txt { animation: kf-ai-flash .5s ease; }

/* ---------- Responsive ---------- */
@media (max-width: 1280px) {
    .kf-ai-stage { flex-direction: column; align-items: center; }
    .kf-ai-float-src { position: relative; top: auto; bottom: auto; left: auto; width: 100%; max-width: 340px; margin-top: 18px; animation: none; }
}
@media (max-width: 1080px) {
    .kf-ai-float-kb { right: -6px; }
}
@media (max-width: 960px) {
    .kf-ai-stage { max-width: 560px; margin: 0 auto; }
    .kf-ai-float-kb { display: none; }
    .kf-ai-kb, .kf-ai-mb, .kf-ai-route, .kf-ai-mode { grid-template-columns: minmax(0, 1fr); }
    .kf-ai-kb, .kf-ai-mb { gap: 28px; padding: 24px; }
    .kf-ai-route, .kf-ai-mode { gap: 28px; }
    .kf-ai-kb-facts { grid-template-columns: minmax(0, 1fr); gap: 12px; }
}
@media (max-width: 640px) {
    .kf-ai-stage { padding-top: 8px; }
    .kf-ai-float-src { max-width: 100%; }
    .kf-ai-ask-label { width: 100%; text-align: center; }
    .kf-ai-ask-btn { padding: 0 12px; font-size: 13px; }

    .kf-ai-kb, .kf-ai-mb { padding: 18px; border-radius: 22px; }
    .kf-ai-kb-chips .kh-chip { min-height: 38px; padding: 5px 12px; font-size: 13px; }
    .kf-ai-entries { padding: 10px; }
    .kf-ai-entry { gap: 10px; padding: 9px 10px; }
    .kf-ai-entry em { display: none; }
    .kf-ai-kb-chat { min-height: 260px; }
    .kf-ai-kb-facts .ks-card { padding: 20px; }

    .kf-ai-opt { grid-template-columns: 28px minmax(0, 1fr) 36px; grid-template-areas: "num title del" ". type type"; }
    .kf-ai-mb-chat { height: 420px; }
    .kf-ai-sheet { width: 92%; }

    .kf-ai-rulecard { gap: 12px; padding: 12px; }
    .kf-ai-rtxt strong { font-size: 14.5px; }
    .kf-ai-rtxt small { font-size: 13px; }
    .kf-ai-rresult { padding: 14px; }

    .kf-ai-mode-seg .kh-seg button { padding: 0 10px; }
    .kf-ai-facts div { grid-template-columns: minmax(0, 1fr); gap: 2px; }
    .kf-ai-set-body { padding: 12px; }

    .kf-ai-inbox-head { padding: 10px 12px; gap: 10px; }
    .kf-ai-thread { height: 300px; padding: 12px; }
    .kf-ai-inbox-actions { padding: 10px 12px; }
    .kf-ai-act { flex: 1 1 calc(50% - 4px); justify-content: center; padding: 0 8px; font-size: 12.5px; }
    .kf-ai-faq-head { margin-top: 56px; }
}
