.ai-answer {
  background: linear-gradient(135deg, #fff, #fff8f4);
  border-color: var(--accent);
}
.ai-text { font-size: 16px; }
.answer-notice { margin: 14px 0 0; color: #9a3b24; font-size: 12px; }
.sources { border: 1px dashed #aaa198; border-radius: 14px; padding: 12px; background: #f8f4ee; }
.sources summary { cursor: pointer; font-weight: 700; color: #6b655f; }
.source-cards { display: grid; gap: 12px; margin-top: 12px; }
.source-cards .answer-card { box-shadow: none; }
.new-chat { width: 100%; min-height: 48px; margin-bottom: 22px; border: 2px solid var(--accent); border-radius: 12px; background: var(--accent); color: #fff; padding: 10px 15px; text-align: left; cursor: pointer; font: 800 15px inherit; transition: .18s; }
.new-chat span { margin-right: 8px; font-size: 19px; line-height: 0; }
.new-chat:hover, .new-chat:focus-visible { background: #c94322; border-color: #c94322; transform: translateY(-1px); outline: none; }
/*修改新增*/button#new-chat {
    background: #e6532d url(http://cc.web.shu.edu.tw/wp-content/uploads/sites/30/2026/09/addtk-pic.gif) no-repeat 8px;
    padding-left: 55px;
}
.history-panel { margin-bottom: 22px; padding-bottom: 17px; border-bottom: 1px dashed #aaa198; }
/*修改自訂*/
.history-panel{background: #fff;padding: 10px;border-radius: 10px;}
.history-heading { display: flex; align-items: center; justify-content: space-between; margin-bottom: 9px; }
.history-heading strong { font-size: 14px; }
.history-heading button { border: 0; background: transparent; color: #8b837b; cursor: pointer; font: 12px inherit; }
.history-heading button {
    background: #0d7580;
    color: #fff;
    border-radius: 30px;
    padding: 4px 8px;
    box-shadow: 1px 1px 3px #ccc;}

.history-list { display: grid; gap: 6px; }
.history-item { width: 100%; border: 0; border-radius: 9px; background: transparent; color: var(--ink); padding: 8px 9px; text-align: left; cursor: pointer; display: grid; gap: 3px; }
.history-item:hover, .history-item:focus-visible { background: #eee7df; outline: none; }
.history-item.active { background: var(--accent-soft); color: #b83b1d; }
.history-item span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 13px; }
.history-item small, .history-empty { color: var(--muted); font-size: 11px; }
.history-empty { margin: 8px 0; }


@media(max-width:900px){.history-panel{display:none}}
.faq-picker { border: 2px solid var(--line); border-radius: 18px; background: #fff; padding: 20px 22px; box-shadow: 4px 4px 0 #e2ddd6; }
.faq-picker-head { display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; margin-bottom: 14px; }
.faq-picker-head span { border: 1px solid var(--accent); border-radius: 999px; padding: 4px 12px; color: var(--accent); font-size: 12px; font-weight: 800; letter-spacing: .06em; }
.faq-picker-head strong { font-size: 17px; }
.faq-picker-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 9px; }
.faq-pick { display: flex; align-items: center; gap: 11px; width: 100%; min-height: 52px; padding: 10px 14px; border: 1.5px solid #cec6bc; border-radius: 12px; background: #fdfbf8; color: var(--ink); font: 500 14px/1.5 inherit; text-align: left; cursor: pointer; transition: .16s; }
.faq-pick em { flex: 0 0 auto; width: 25px; height: 25px; border: 1.5px solid #b8b0a6; border-radius: 50%; display: grid; place-items: center; font: 700 10px/1 inherit; font-style: normal; color: var(--muted); }
.faq-pick:hover, .faq-pick:focus-visible { border-color: var(--accent); background: var(--accent-soft); outline: none; transform: translateY(-1px); }
.faq-pick:hover em, .faq-pick:focus-visible em { border-color: var(--accent); color: #b83b1d; }
.faq-picker-more, .faq-picker-hint { margin: 12px 0 0; color: var(--muted); font-size: 12px; }
.faq-picker-hint { padding-top: 10px; border-top: 1px dashed #ddd5cb; }
@media(max-width:900px){.faq-picker{padding:15px}.faq-picker-list{grid-template-columns:1fr}}
