.csa-fab{background:linear-gradient(135deg,var(--orange-500,#f97316),var(--orange-600,#ea580c));color:#fff;letter-spacing:.3px;cursor:pointer;white-space:nowrap;height:42px;box-shadow:var(--shadow-glow-lg,0 0 40px #f973161f);transition:all var(--transition-normal,.25s ease);z-index:1500;border:none;border-radius:50px;justify-content:center;align-items:center;padding:0 18px;font-size:13px;font-weight:700;animation:3s ease-in-out infinite csa-float;display:flex;position:fixed;bottom:24px;right:24px}.csa-fab:hover{transform:scale(1.05);box-shadow:0 0 40px #f9731659}.csa-fab.active{background:var(--gray-600,#475569);animation:none;box-shadow:0 4px 12px #00000026}@keyframes csa-float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.csa-panel{background:var(--glass-bg-strong,#ffffffd1);-webkit-backdrop-filter:blur(24px);border:1px solid var(--glass-border,#ffffff80);border-radius:var(--radius-xl,22px);width:400px;height:540px;max-height:calc(100vh - 120px);box-shadow:var(--shadow-xl,0 20px 50px #0000001a);z-index:1500;flex-direction:column;animation:.3s ease-out csa-slide-up;display:flex;position:fixed;bottom:92px;right:24px;overflow:hidden}@keyframes csa-slide-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.csa-header{border-bottom:1px solid var(--border-subtle,#0000000f);background:linear-gradient(135deg,#f973160f,#fffc);flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.csa-header-left{align-items:center;gap:12px;display:flex}.csa-header-avatar{background:linear-gradient(135deg,var(--orange-500,#f97316),var(--orange-600,#ea580c));border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.csa-header-avatar svg{width:20px;height:20px}.csa-header-title{color:var(--text-primary,#0f172a);font-size:14px;font-weight:600}.csa-header-subtitle{color:var(--text-muted,#94a3b8);margin-top:1px;font-size:11px}.csa-header-close{color:var(--text-muted,#94a3b8);cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;padding:6px;transition:all .15s;display:flex}.csa-header-close:hover{background:var(--surface-3,#f1f5f9cc);color:var(--text-primary,#0f172a)}.csa-messages{scroll-behavior:smooth;flex-direction:column;flex:1;gap:12px;padding:16px;display:flex;overflow-y:auto}.csa-messages::-webkit-scrollbar{width:4px}.csa-messages::-webkit-scrollbar-track{background:0 0}.csa-messages::-webkit-scrollbar-thumb{background:var(--border-subtle,#e2e8f0);border-radius:4px}.csa-welcome{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:28px 16px;display:flex}.csa-welcome-icon{background:linear-gradient(135deg,var(--orange-500,#f97316),var(--orange-600,#ea580c));border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:4px;display:flex;box-shadow:0 0 24px #f9731633}.csa-welcome-icon svg{width:28px;height:28px}.csa-welcome-title{color:var(--text-primary,#0f172a);font-size:15px;font-weight:600}.csa-welcome-text{color:var(--text-muted,#64748b);max-width:280px;font-size:12px;line-height:1.5}.csa-prompt-pills{flex-wrap:wrap;justify-content:center;gap:6px;margin-top:8px;display:flex}.csa-prompt-pill{background:var(--surface-3,#f1f5f9cc);border:1px solid var(--border-subtle,#0000000f);border-radius:var(--radius-full,9999px);cursor:pointer;color:var(--text-secondary,#475569);padding:5px 12px;font-size:11px;transition:all .15s}.csa-prompt-pill:hover{background:var(--orange-50,#fff7ed);border-color:var(--orange-300,#fdba74);color:var(--orange-600,#ea580c)}.csa-bubble{border-radius:var(--radius-lg,16px);word-break:break-word;max-width:85%;padding:10px 14px;font-size:13px;line-height:1.5}.csa-bubble-user{background:linear-gradient(135deg,var(--orange-500,#f97316),var(--orange-600,#ea580c));color:#fff;border-bottom-right-radius:4px;align-self:flex-end}.csa-bubble-ai{background:var(--surface-3,#f1f5f9cc);color:var(--text-primary,#0f172a);border-bottom-left-radius:4px;align-self:flex-start}.csa-bubble-ai pre{white-space:pre-wrap;margin:0;font-family:inherit}.csa-preview-btn{background:var(--orange-50,#fff7ed);border:1px solid var(--orange-200,#fed7aa);color:var(--orange-600,#ea580c);border-radius:var(--radius-sm,8px);cursor:pointer;align-self:flex-start;align-items:center;gap:6px;margin-top:-4px;padding:7px 14px;font-size:12px;font-weight:600;transition:all .15s;display:inline-flex}.csa-preview-btn:hover{background:var(--orange-100,#ffedd5);border-color:var(--orange-300,#fdba74)}.csa-typing{background:var(--surface-3,#f1f5f9cc);border-radius:var(--radius-lg,16px);border-bottom-left-radius:4px;align-self:flex-start;gap:4px;padding:10px 14px;display:flex}.csa-typing-dot{background:var(--orange-400,#fb923c);border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite csa-typing-bounce}.csa-typing-dot:first-child{animation-delay:0s}.csa-typing-dot:nth-child(2){animation-delay:.2s}.csa-typing-dot:nth-child(3){animation-delay:.4s}@keyframes csa-typing-bounce{0%,80%,to{opacity:.5;transform:scale(.8)}40%{opacity:1;transform:scale(1.1)}}.csa-input-area{border-top:1px solid var(--border-subtle,#0000000f);background:#fff9;flex-shrink:0;align-items:center;gap:8px;padding:12px 16px;display:flex}.csa-input{border:1px solid var(--border-subtle,#0000000f);border-radius:var(--radius-full,9999px);color:var(--text-primary,#0f172a);font-size:13px;font-family:var(--font-sans,"Inter",sans-serif);transition:border-color var(--transition-fast,.15s ease);background:#fff;outline:none;flex:1;padding:8px 14px}.csa-input:focus{border-color:var(--orange-500,#f97316)}.csa-input::placeholder{color:var(--text-muted,#94a3b8)}.csa-file-btn,.csa-send-btn{cursor:pointer;width:36px;height:36px;transition:all var(--transition-fast,.15s ease);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.csa-file-btn{background:var(--surface-3,#f1f5f9cc);color:var(--text-secondary,#64748b)}.csa-file-btn:hover{background:var(--orange-50,#fff7ed);color:var(--orange-600,#ea580c)}.csa-send-btn{background:var(--orange-500,#f97316);color:#fff}.csa-send-btn:disabled{opacity:.4;cursor:not-allowed}.csa-send-btn:not(:disabled):hover{background:var(--orange-400,#fb923c)}.csa-grid-overlay{z-index:2000;background:#0f172a8c;justify-content:center;align-items:center;padding:24px;animation:.2s csa-fade-in;display:flex;position:fixed;inset:0}@keyframes csa-fade-in{0%{opacity:0}to{opacity:1}}.csa-grid-modal{background:var(--surface-1,#fff);border-radius:var(--radius-xl,22px);width:100%;max-width:860px;max-height:90vh;box-shadow:var(--shadow-xl,0 20px 50px #0000001a);flex-direction:column;animation:.25s ease-out csa-modal-up;display:flex;overflow:hidden}@keyframes csa-modal-up{0%{opacity:0;transform:translateY(20px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.csa-grid-header{border-bottom:1px solid var(--border-subtle,#0000000f);flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.csa-grid-header-left{flex-direction:column;gap:2px;display:flex}.csa-grid-title{color:var(--text-primary,#0f172a);font-size:15px;font-weight:700}.csa-grid-subtitle{color:var(--text-muted,#64748b);font-size:12px}.csa-grid-header-actions{align-items:center;gap:8px;display:flex}.csa-grid-close{cursor:pointer;color:var(--text-muted,#64748b);background:0 0;border:none;border-radius:6px;padding:6px;transition:all .15s;display:flex}.csa-grid-close:hover{background:var(--surface-3,#f1f5f9cc);color:var(--text-primary,#0f172a)}.csa-grid-scroll{flex:1;padding:16px 20px;overflow:auto}.csa-grid-table{border-collapse:collapse;width:100%;font-size:13px}.csa-grid-table th{text-align:left;background:var(--surface-3,#f1f5f9cc);border:1px solid var(--border-subtle,#0000000f);color:var(--text-secondary,#475569);white-space:nowrap;text-transform:uppercase;letter-spacing:.04em;padding:8px 10px;font-size:11px;font-weight:600}.csa-grid-table td{border:1px solid var(--border-subtle,#0000000f);padding:0}.csa-grid-table td input{width:100%;color:var(--text-primary,#0f172a);background:0 0;border:none;outline:none;padding:7px 10px;font-family:inherit;font-size:13px}.csa-grid-table td input:focus{background:var(--orange-50,#fff7ed)}.csa-grid-table tr:hover td{background:var(--gray-50,#f8fafc)}.csa-grid-table tr:hover td input{background:0 0}.csa-grid-table td.csa-row-num{text-align:center;width:36px;color:var(--text-muted,#94a3b8);-webkit-user-select:none;user-select:none;padding:7px 0;font-size:11px}.csa-delete-row{cursor:pointer;color:var(--error,#ef4444);opacity:0;background:0 0;border:none;padding:4px 8px;transition:opacity .15s}.csa-grid-table tr:hover .csa-delete-row{opacity:1}.csa-grid-footer{border-top:1px solid var(--border-subtle,#0000000f);flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 20px;display:flex}.csa-grid-footer-info{color:var(--text-muted,#64748b);font-size:12px}.csa-grid-footer-actions{gap:10px;display:flex}.csa-btn{border-radius:var(--radius-sm,8px);cursor:pointer;border:none;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.csa-btn-ghost{background:var(--surface-3,#f1f5f9cc);color:var(--text-secondary,#475569);border:1px solid var(--border-subtle,#0000000f)}.csa-btn-ghost:hover{background:var(--gray-200,#e2e8f0)}.csa-btn-primary{background:linear-gradient(135deg,var(--orange-500,#f97316),var(--orange-600,#ea580c));color:#fff}.csa-btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #f9731659}.csa-btn-primary:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.csa-confirm-overlay{z-index:2100;background:#0f172a99;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.csa-confirm-modal{background:var(--surface-1,#fff);border-radius:var(--radius-lg,16px);width:100%;max-width:420px;box-shadow:var(--shadow-xl,0 20px 50px #0000001a);padding:28px;animation:.2s ease-out csa-modal-up}.csa-confirm-icon{background:var(--orange-50,#fff7ed);width:48px;height:48px;color:var(--orange-500,#f97316);border-radius:50%;justify-content:center;align-items:center;margin-bottom:16px;display:flex}.csa-confirm-title{color:var(--text-primary,#0f172a);margin-bottom:8px;font-size:16px;font-weight:700}.csa-confirm-text{color:var(--text-secondary,#64748b);margin-bottom:24px;font-size:13px;line-height:1.6}.csa-confirm-actions{justify-content:flex-end;gap:10px;display:flex}.csa-file-chip{background:var(--orange-50,#fff7ed);border:1px solid var(--orange-200,#fed7aa);border-radius:var(--radius-full,9999px);color:var(--orange-600,#ea580c);align-self:flex-start;align-items:center;gap:6px;margin-bottom:6px;padding:4px 10px;font-size:11px;display:inline-flex}.csa-file-chip-remove{cursor:pointer;color:var(--orange-500,#f97316);background:0 0;border:none;align-items:center;padding:0;display:flex}.csa-intent-badge{border-radius:var(--radius-full,9999px);align-items:center;gap:4px;padding:2px 8px;font-size:10px;font-weight:600;display:inline-flex}@media (max-width:480px){.csa-panel{width:calc(100vw - 32px);bottom:88px;right:16px}.csa-grid-modal{border-radius:0;max-width:100%;max-height:100vh}}
.ai-chat-fab{color:#fff;cursor:pointer;z-index:1500;background:linear-gradient(135deg,#f97316 0%,#ea580c 100%);border:none;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;transition:all .2s;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 8px 24px #f9731659}.ai-chat-fab:hover{transform:scale(1.08);box-shadow:0 12px 32px #f9731673}.ai-chat-fab.active{background:#64748b;box-shadow:0 4px 12px #00000026}.ai-chat-panel{background:var(--bg-primary,#fff);border:1px solid var(--border-subtle,#e2e8f0);z-index:1500;border-radius:16px;flex-direction:column;width:400px;height:520px;animation:.25s ease-out ai-chat-slide-up;display:flex;position:fixed;bottom:92px;right:24px;overflow:hidden;box-shadow:0 20px 60px #00000026}@keyframes ai-chat-slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.ai-chat-header{color:#fff;background:linear-gradient(135deg,#f97316 0%,#ea580c 100%);justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.ai-chat-header-title{align-items:center;gap:8px;font-size:14px;font-weight:700;display:flex}.ai-chat-header-close{color:#fff;cursor:pointer;background:#fff3;border:none;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;transition:background .15s;display:flex}.ai-chat-header-close:hover{background:#ffffff59}.ai-chat-messages{flex-direction:column;flex:1;gap:12px;padding:16px;display:flex;overflow-y:auto}.ai-chat-welcome{text-align:center;padding:24px 16px}.ai-chat-welcome-icon{margin-bottom:12px;font-size:40px}.ai-chat-welcome-title{margin-bottom:4px;font-size:16px;font-weight:700}.ai-chat-welcome-text{color:var(--text-muted,#94a3b8);margin-bottom:16px;font-size:13px}.ai-chat-prompts{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.ai-chat-prompt-pill{color:#ea580c;cursor:pointer;background:#f9731614;border:1px solid #f9731633;border-radius:20px;padding:6px 12px;font-size:12px;transition:all .15s}.ai-chat-prompt-pill:hover{background:#f9731626;border-color:#f97316}.ai-chat-bubble{word-break:break-word;border-radius:14px;max-width:85%;padding:10px 14px;font-size:13px;line-height:1.5}.ai-chat-bubble-user{color:#fff;background:#f97316;border-bottom-right-radius:4px;align-self:flex-end}.ai-chat-bubble-ai{background:var(--surface-2,#f1f5f9);color:var(--text-primary,#1e293b);border-bottom-left-radius:4px;align-self:flex-start}.ai-chat-bubble-ai pre{white-space:pre-wrap;margin:0;font-family:inherit}.ai-chat-actions{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.ai-chat-action-btn{border:1px solid var(--border-subtle,#e2e8f0);background:var(--bg-primary,#fff);color:var(--text-primary,#1e293b);cursor:pointer;border-radius:8px;align-items:center;gap:4px;padding:5px 12px;font-size:12px;transition:all .15s;display:flex}.ai-chat-action-btn:hover{color:#f97316;background:#f9731614;border-color:#f97316}.ai-chat-action-btn.primary{color:#fff;background:#f97316;border-color:#f97316}.ai-chat-action-btn.primary:hover{background:#ea580c}.ai-chat-typing{align-self:flex-start;align-items:center;gap:4px;padding:10px 14px;display:flex}.ai-chat-typing-dot{background:#94a3b8;border-radius:50%;width:8px;height:8px;animation:1.2s ease-in-out infinite ai-chat-bounce}.ai-chat-typing-dot:nth-child(2){animation-delay:.15s}.ai-chat-typing-dot:nth-child(3){animation-delay:.3s}@keyframes ai-chat-bounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-6px)}}.ai-chat-input-area{border-top:1px solid var(--border-subtle,#e2e8f0);background:var(--bg-primary,#fff);gap:8px;padding:12px 16px;display:flex}.ai-chat-input{border:1px solid var(--border-subtle,#e2e8f0);background:var(--surface-2,#f8fafc);color:var(--text-primary,#1e293b);border-radius:12px;outline:none;flex:1;padding:10px 14px;font-size:13px;transition:border-color .15s}.ai-chat-input:focus{border-color:#f97316}.ai-chat-input::placeholder{color:var(--text-muted,#94a3b8)}.ai-chat-send-btn{color:#fff;cursor:pointer;background:#f97316;border:none;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;transition:background .15s;display:flex}.ai-chat-send-btn:hover{background:#ea580c}.ai-chat-send-btn:disabled{cursor:not-allowed;background:#cbd5e1}.ai-chat-mic-btn{width:40px;height:40px;color:var(--text-muted,#94a3b8);border:1px solid var(--border-subtle,#e2e8f0);cursor:pointer;background:0 0;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;transition:all .2s;display:flex}.ai-chat-mic-btn:hover{color:#f97316;border-color:#f97316}.ai-chat-mic-btn.listening{color:#fff;background:#f97316;border-color:#f97316;animation:1.5s ease-in-out infinite pulse-mic}.ai-chat-mic-btn:disabled{opacity:.4;cursor:not-allowed}@keyframes pulse-mic{0%,to{box-shadow:0 0 #f9731666}50%{box-shadow:0 0 0 8px #f9731600}}.ai-chat-mic-btn.transcribing{color:#fff;cursor:wait;background:#cbd5e1;border-color:#cbd5e1}@media (max-width:480px){.ai-chat-panel{width:calc(100vw - 16px);height:calc(100vh - 120px);max-height:600px;bottom:80px;right:8px}}
