*{box-sizing:border-box}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:linear-gradient(135deg,#f8fafc,#e2e8f0);min-height:100vh;color:#1e293b}.app{min-height:100vh;display:flex;flex-direction:column}.app-header{background:#fffc;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid rgba(148,163,184,.2);padding:16px 24px}.app-header h1{margin:0;font-size:20px;font-weight:600;background:linear-gradient(135deg,#6366f1,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.app-main{flex:1;max-width:900px;margin:0 auto;width:100%;padding:32px 24px}.chat-interface{display:flex;flex-direction:column;height:calc(100vh - 120px);background:#fff9;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:24px;border:1px solid rgba(148,163,184,.2);box-shadow:0 25px 50px -12px #0000001a;overflow:hidden}.chat-messages{flex:1;overflow-y:auto;padding:24px;display:flex;flex-direction:column;gap:16px;scroll-behavior:smooth}.chat-messages::-webkit-scrollbar{width:6px}.chat-messages::-webkit-scrollbar-track{background:transparent}.chat-messages::-webkit-scrollbar-thumb{background:#94a3b866;border-radius:3px}.message{padding:14px 18px;border-radius:16px;max-width:75%;white-space:pre-wrap;word-break:break-word;line-height:1.6;font-size:14px;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.message-user{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;align-self:flex-end;border-bottom-right-radius:4px}.message-assistant{background:#f1f5f9e6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);align-self:flex-start;border:1px solid rgba(148,163,184,.15);border-bottom-left-radius:4px}.message-content{line-height:1.6}.message-wrapper{position:relative}.message-wrapper.collapsed .message-content{max-height:32px;overflow:hidden;mask-image:linear-gradient(to bottom,black 50%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,black 50%,transparent 100%)}.message-wrapper.collapsed .marquee-text{animation:marquee 8s linear infinite;white-space:nowrap;display:inline-block}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.expand-btn{margin-top:8px;padding:6px 14px;background:#6366f11a;border:1px solid rgba(99,102,241,.3);border-radius:8px;color:#6366f1;font-size:12px;cursor:pointer;transition:all .2s ease}.expand-btn:hover{background:#6366f133}.input-section{padding:16px 24px 20px;background:#fffc;border-top:1px solid rgba(148,163,184,.15)}.suggested-queries{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.suggested-btn{padding:8px 14px;background:#6366f114;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(99,102,241,.2);border-radius:20px;color:#6366f1;font-size:13px;cursor:pointer;transition:all .2s ease;white-space:nowrap}.suggested-btn:hover{background:#6366f126;border-color:#6366f166;transform:translateY(-1px)}.suggested-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.chat-input-form{display:flex;gap:12px}.chat-input{flex:1;padding:14px 18px;border:1px solid rgba(148,163,184,.3);border-radius:12px;font-size:14px;background:#ffffffe6;transition:all .2s ease}.chat-input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.chat-send-btn{padding:14px 28px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none;border-radius:12px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.chat-send-btn:hover{transform:translateY(-1px);box-shadow:0 10px 20px -10px #6366f180}.chat-send-btn:disabled{background:#cbd5e1;cursor:not-allowed;transform:none;box-shadow:none}.a2ui-form{background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px;padding:28px;max-width:520px;margin:8px 0;border:1px solid rgba(148,163,184,.2);box-shadow:0 20px 40px -15px #0000001a}.form-header{margin-bottom:20px}.form-header h3{margin:0 0 6px;font-size:18px;font-weight:600;color:#1e293b}.form-hint{margin:0;color:#64748b;font-size:13px}.form-field{margin-bottom:20px}.form-label{display:block;margin-bottom:8px;font-weight:500;font-size:13px;color:#475569}.form-input,.form-select,.form-textarea{width:100%;padding:12px 14px;border:1px solid rgba(148,163,184,.4);border-radius:10px;font-size:14px;background:#ffffffe6;transition:all .2s ease}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.form-textarea{resize:vertical;min-height:100px}.form-select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%2364748b' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10l-5 5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:40px}.form-rate{display:flex;gap:10px;align-items:center}.rate-btn{width:40px;height:40px;border:1px solid rgba(148,163,184,.4);border-radius:10px;background:#ffffffe6;cursor:pointer;font-size:16px;transition:all .2s ease}.rate-btn:hover{border-color:#6366f1;background:#6366f10d}.rate-btn.active{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border-color:transparent;box-shadow:0 4px 12px -2px #6366f166}.rate-label{margin-left:10px;font-size:13px;color:#64748b}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:20px;border-top:1px solid rgba(148,163,184,.15)}.btn-cancel,.btn-submit{padding:12px 24px;border-radius:10px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-cancel{background:#f1f5f9e6;border:1px solid rgba(148,163,184,.3);color:#64748b}.btn-cancel:hover{background:#e2e8f0e6;color:#475569}.btn-submit{background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;color:#fff;box-shadow:0 4px 12px -2px #6366f166}.btn-submit:hover{transform:translateY(-1px);box-shadow:0 8px 20px -4px #6366f180}.message-content code{background:#6366f11a;padding:2px 6px;border-radius:4px;font-family:Fira Code,monospace;font-size:13px}.message-content h2,.message-content h3,.message-content h4{margin:8px 0;color:#1e293b}.message-content strong{color:#6366f1}
