:root{--clr-primary:#6366f1;--clr-primary-light:#818cf8;--clr-primary-dark:#4f46e5;--clr-primary-glow:rgba(99, 102, 241, 0.25);--clr-accent:#ec4899;--clr-accent-light:#f472b6;--clr-accent-glow:rgba(236, 72, 153, 0.25);--clr-bg:#ffffff;--clr-bg-dark:#f9fafb;--clr-surface:#f3f4f6;--clr-surface-hover:#e5e7eb;--clr-text:#1f2937;--clr-text-light:#6b7280;--clr-text-lighter:#9ca3af;--clr-text-muted:#d1d5db;--clr-border:#e5e7eb;--clr-border-light:#f3f4f6;--clr-success:#10b981;--clr-warning:#f59e0b;--clr-error:#ef4444;--font-main:-apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;--font-mono:'SF Mono', 'Monaco', 'Inconsolata', 'Fira Code', monospace;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--radius-full:9999px;--shadow-sm:0 1px 2px rgba(0, 0, 0, 0.05);--shadow-md:0 4px 12px rgba(0, 0, 0, 0.08);--shadow-lg:0 12px 32px rgba(0, 0, 0, 0.12);--shadow-xl:0 20px 48px rgba(0, 0, 0, 0.16);--shadow-glow:0 0 24px rgba(99, 102, 241, 0.15);--ease-smooth:cubic-bezier(0.4, 0, 0.2, 1);--ease-spring:cubic-bezier(0.34, 1.56, 0.64, 1);--chat-width:420px;--chat-height:600px}@media (prefers-color-scheme:dark){:root{--clr-bg:#111827;--clr-bg-dark:#1f2937;--clr-surface:#111827;--clr-surface-hover:#1f2937;--clr-text:#f3f4f6;--clr-text-light:#d1d5db;--clr-text-lighter:#9ca3af;--clr-border:#374151;--clr-border-light:#1f2937}}.spkawesome-ai-chat-widget *,.spkawesome-ai-chat-widget *::before,.spkawesome-ai-chat-widget *::after{box-sizing:border-box;margin:0;padding:0}.spkawesome-ai-chat-widget{position:fixed;bottom:24px;right:24px;z-index:99999;font-family:var(--font-main);line-height:1.5}.spkawesome-ai-toggle-btn{width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,var(--clr-primary) 0%,var(--clr-accent) 100%);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-lg);transition:all 0.3s var(--ease-smooth);font-size:24px;padding:0;line-height:1}.spkawesome-ai-toggle-btn:hover{transform:scale(1.1) translateY(-2px);box-shadow:var(--shadow-xl),var(--shadow-glow)}.spkawesome-ai-toggle-btn:active{transform:scale(.95)}.spkawesome-ai-toggle-btn svg{width:28px;height:28px;stroke-width:2.5}.spkawesome-ai-hidden{display:none!important}.spkawesome-ai-open .spkawesome-ai-toggle-btn{opacity:0;pointer-events:none;transform:scale(.8)}.spkawesome-ai-chat-window{position:absolute;bottom:90px;right:0;width:var(--chat-width);height:var(--chat-height);background:var(--clr-bg);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);border:1px solid var(--clr-border);display:flex;flex-direction:column;overflow:hidden;animation:slideUp 0.4s var(--ease-smooth);opacity:1;transition:opacity 0.3s var(--ease-smooth)}.spkawesome-ai-chat-window.spkawesome-ai-hidden{animation:slideDown 0.3s var(--ease-smooth) forwards}@keyframes slideUp{from{opacity:0;transform:translateY(16px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes slideDown{from{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(16px) scale(.95)}}.spkawesome-ai-chat-header{padding:16px 20px;background:linear-gradient(135deg,var(--clr-primary) 0%,var(--clr-accent) 100%);color:#fff;display:flex;justify-content:space-between;align-items:center;flex-shrink:0;border-bottom:none}.spkawesome-ai-header-content h3{margin:0;font-size:16px;font-weight:700;letter-spacing:-.5px;margin-bottom:2px}.spkawesome-ai-header-content p{margin:0;font-size:12px;opacity:.9;font-weight:500}.spkawesome-ai-close-btn{background:rgb(255 255 255 / .2);border:none;color:#fff;width:32px;height:32px;border-radius:var(--radius-md);cursor:pointer;font-size:24px;display:flex;align-items:center;justify-content:center;transition:all 0.2s var(--ease-smooth);padding:0;line-height:1}.spkawesome-ai-close-btn:hover{background:rgb(255 255 255 / .3);transform:rotate(90deg)}.spkawesome-ai-chat-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px;scroll-behavior:smooth;background:var(--clr-bg)}.spkawesome-ai-chat-messages::-webkit-scrollbar{width:6px}.spkawesome-ai-chat-messages::-webkit-scrollbar-track{background:#fff0}.spkawesome-ai-chat-messages::-webkit-scrollbar-thumb{background:var(--clr-border);border-radius:3px}.spkawesome-ai-chat-messages::-webkit-scrollbar-thumb:hover{background:var(--clr-text-lighter)}.spkawesome-ai-system-message{background:var(--clr-surface);padding:12px 14px;border-radius:var(--radius-lg);font-size:13px;color:var(--clr-text-light);border:1px solid var(--clr-border);animation:fadeIn 0.4s var(--ease-smooth)}.spkawesome-ai-chat-msg{display:flex;flex-direction:column;animation:msgIn 0.3s var(--ease-smooth)}.spkawesome-ai-msg-user{align-items:flex-end}.spkawesome-ai-msg-bot{align-items:flex-start}.spkawesome-ai-bubble{max-width:85%;padding:10px 14px;border-radius:var(--radius-lg);font-size:14px;line-height:1.6;word-wrap:break-word}.spkawesome-ai-msg-user .spkawesome-ai-bubble{background:linear-gradient(135deg,var(--clr-primary) 0%,var(--clr-primary-dark) 100%);color:#fff;border-radius:16px 16px 4px 16px;box-shadow:var(--shadow-md)}.spkawesome-ai-msg-bot .spkawesome-ai-bubble{background:var(--clr-surface);color:var(--clr-text);border:1px solid var(--clr-border);border-radius:16px 16px 16px 4px}.spkawesome-ai-bubble.spkawesome-ai-error{background:rgb(239 68 68 / .1);color:var(--clr-error);border-color:rgb(239 68 68 / .3)}@keyframes fadeIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes msgIn{from{opacity:0;transform:translateY(8px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.spkawesome-ai-msg-label{font-size:11px;font-weight:600;color:var(--clr-text-lighter);margin-bottom:6px;display:flex;align-items:center;gap:6px;text-transform:uppercase;letter-spacing:.5px}.spkawesome-ai-source-groq,.spkawesome-ai-source-gemini{color:var(--clr-primary-light)}.spkawesome-ai-source-database{color:var(--clr-success)}.spkawesome-ai-typing{display:flex;align-items:center;gap:4px;padding:12px 14px;background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius-lg);width:fit-content;animation:fadeIn 0.3s var(--ease-smooth)}.spkawesome-ai-typing span{width:6px;height:6px;background:var(--clr-primary);border-radius:50%;animation:typingBounce 1.4s ease-in-out infinite}.spkawesome-ai-typing span:nth-child(2){animation-delay:0.2s;background:var(--clr-accent)}.spkawesome-ai-typing span:nth-child(3){animation-delay:0.4s}@keyframes typingBounce{0%,60%,100%{transform:translateY(0)}30%{transform:translateY(-6px)}}.spkawesome-ai-response-list{display:flex;flex-direction:column;gap:8px;width:100%}.spkawesome-ai-response-card{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius-lg);padding:12px;animation:cardIn 0.3s var(--ease-spring);transition:all 0.2s var(--ease-smooth);cursor:pointer}.spkawesome-ai-response-card:hover{border-color:var(--clr-primary);background:var(--clr-border-light);box-shadow:var(--shadow-md);transform:translateY(-2px)}@keyframes cardIn{from{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.spkawesome-ai-card-text{font-size:13px;color:var(--clr-text);line-height:1.6;margin:0 0 8px 0;padding-bottom:8px;border-bottom:1px solid var(--clr-border)}.spkawesome-ai-copy-btn{background:var(--clr-primary);color:#fff;border:none;border-radius:var(--radius-md);padding:5px 10px;font-size:11px;font-weight:600;cursor:pointer;transition:all 0.2s var(--ease-smooth);text-transform:uppercase;letter-spacing:.5px}.spkawesome-ai-copy-btn:hover{background:var(--clr-primary-dark);transform:scale(1.05)}.spkawesome-ai-copy-btn:active{transform:scale(.95)}.spkawesome-ai-copy-btn.copied{background:var(--clr-success)}.spkawesome-ai-chat-controls{padding:12px;border-top:1px solid var(--clr-border);display:flex;flex-direction:column;gap:12px;flex-shrink:0;background:var(--clr-bg)}.spkawesome-ai-tone-selector{display:flex;flex-direction:column;gap:6px}.spkawesome-ai-tone-selector label{font-size:11px;font-weight:700;color:var(--clr-text-light);text-transform:uppercase;letter-spacing:.5px}.spkawesome-ai-tone-dropdown{width:100%;padding:8px 12px;border:1px solid var(--clr-border);background:var(--clr-surface);color:var(--clr-text);border-radius:var(--radius-md);font-size:13px;font-weight:500;cursor:pointer;transition:all 0.2s var(--ease-smooth);font-family:var(--font-main)}.spkawesome-ai-tone-dropdown:hover{border-color:var(--clr-primary);background:var(--clr-border-light)}.spkawesome-ai-tone-dropdown:focus{outline:none;border-color:var(--clr-primary);box-shadow:0 0 0 3px rgb(99 102 241 / .1)}.spkawesome-ai-input-group{display:flex;gap:8px;align-items:flex-end}.spkawesome-ai-input{flex:1;padding:10px 12px;border:1px solid var(--clr-border);background:var(--clr-surface);color:var(--clr-text);border-radius:var(--radius-md);font-size:13px;font-family:var(--font-main);transition:all 0.2s var(--ease-smooth);resize:none;max-height:100px;min-height:38px}.spkawesome-ai-input::placeholder{color:var(--clr-text-lighter)}.spkawesome-ai-input:focus{outline:none;border-color:var(--clr-primary);box-shadow:0 0 0 3px rgb(99 102 241 / .1);background:var(--clr-bg)}.spkawesome-ai-send-btn{width:38px;height:38px;background:linear-gradient(135deg,var(--clr-primary) 0%,var(--clr-accent) 100%);color:#fff;border:none;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all 0.2s var(--ease-smooth);flex-shrink:0;padding:0;box-shadow:var(--shadow-md)}.spkawesome-ai-send-btn:hover:not(:disabled){transform:scale(1.08) translateY(-1px);box-shadow:var(--shadow-lg),var(--shadow-glow)}.spkawesome-ai-send-btn:active:not(:disabled){transform:scale(.95)}.spkawesome-ai-send-btn:disabled{opacity:.4;cursor:not-allowed}.spkawesome-ai-send-btn svg{width:18px;height:18px;stroke-width:2}@media (max-width:480px){:root{--chat-width:calc(100vw - 16px);--chat-height:550px}.spkawesome-ai-chat-widget{bottom:16px;right:8px;left:8px}.spkawesome-ai-chat-window{right:0;left:0;bottom:70px}.spkawesome-ai-bubble{max-width:90%}}@media (max-width:360px){:root{--chat-width:100vw;--chat-height:520px}.spkawesome-ai-chat-widget{bottom:0;right:0;left:0}.spkawesome-ai-chat-window{border-radius:var(--radius-lg) var(--radius-lg) 0 0}}@media (prefers-reduced-motion:reduce){.spkawesome-ai-chat-window,.spkawesome-ai-toggle-btn,.spkawesome-ai-response-card,.spkawesome-ai-bubble{animation:none;transition:none}}@media (prefers-contrast:more){.spkawesome-ai-toggle-btn{border:2px solid #fff}.spkawesome-ai-chat-window{border:2px solid var(--clr-text)}.spkawesome-ai-input,.spkawesome-ai-tone-dropdown{border:2px solid var(--clr-text)}}@media print{.spkawesome-ai-chat-widget{display:none}}