/* TIMPHAT_HOI_AI_CLEAN_UI_V78 */
.tp-ai-page{max-width:1120px;margin:0 auto;padding:28px 16px 60px}
.tp-ai-hero{background:linear-gradient(135deg,#fff8ec,#fffdf8);border:1px solid rgba(150,95,25,.13);border-radius:24px;padding:26px;box-shadow:0 14px 40px rgba(90,55,15,.08)}
.tp-ai-hero h1{margin:0 0 8px;font-size:32px;color:#5b3510;letter-spacing:-.03em}
.tp-ai-hero p{margin:0 0 18px;color:#80623f;line-height:1.55}
.tp-ai-box{display:grid;gap:12px}
.tp-ai-box textarea{width:100%;min-height:118px;box-sizing:border-box;border:1px solid rgba(150,95,25,.16);border-radius:18px;padding:15px;font-size:16px;line-height:1.55;outline:none;color:#4b2d10;background:#fff}
.tp-ai-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.tp-ai-actions button{border:0;border-radius:14px;background:#a86b24;color:#fff;font-weight:800;padding:12px 18px;cursor:pointer}
.tp-ai-actions button:disabled{opacity:.6;cursor:not-allowed}
.tp-ai-hint{color:#8a6b44;font-size:14px}
.tp-ai-result{margin-top:22px;display:grid;gap:16px}
.tp-ai-answer{background:#fff;border:1px solid rgba(150,95,25,.12);border-radius:20px;padding:20px;box-shadow:0 10px 28px rgba(70,45,15,.055)}
.tp-ai-answer h2{margin:0 0 12px;color:#4b2d10;font-size:22px}
.tp-ai-answer-body{color:#4f3b26;line-height:1.72;font-size:16px;white-space:pre-wrap}
.tp-ai-meta{margin-top:12px;color:#96744d;font-size:13px}
.tp-ai-sources{background:#fff;border:1px solid rgba(150,95,25,.12);border-radius:20px;padding:18px}
.tp-ai-sources h2{margin:0 0 12px;color:#4b2d10;font-size:20px}
.tp-ai-source-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.tp-ai-source{border:1px solid rgba(150,95,25,.12);border-radius:16px;padding:14px;background:#fffaf2}
.tp-ai-source b{display:block;color:#4b2d10;margin-bottom:6px;line-height:1.35}
.tp-ai-source p{margin:0;color:#735a3b;line-height:1.5;font-size:14px}
.tp-ai-source a{display:inline-block;margin-top:9px;color:#8b581f;font-weight:800;text-decoration:none}
.tp-ai-empty{padding:20px;border:1px dashed rgba(150,95,25,.24);border-radius:18px;color:#755735;background:#fff;line-height:1.6}
@media(max-width:720px){
  .tp-ai-page{padding:18px 12px 42px}
  .tp-ai-hero{padding:20px;border-radius:20px}
  .tp-ai-hero h1{font-size:25px}
  .tp-ai-source-grid{grid-template-columns:1fr}
}
