:root{--color-white:#fff;--color-cream-50:#fcfcf9;--color-cream-100:#fffffd;--color-gray-200:#f5f5f5;--color-gray-300:#a7a9a9;--color-gray-400:#777c7c;--color-slate-500:#626c71;--color-brown-600:#5e5240;--color-charcoal-700:#1f2121;--color-charcoal-800:#262828;--color-slate-900:#13343b;--color-teal-300:#32b8c6;--color-teal-400:#2da6b2;--color-teal-500:#21808d;--color-teal-600:#1d7480;--color-teal-700:#1a6873;--color-brown-600-rgb:94,82,64;--color-teal-500-rgb:33,128,141;--color-gray-400-rgb:119,124,124;--color-teal-300-rgb:50,184,198;--color-gray-300-rgb:167,169,169;--color-background:var(--color-cream-50);--color-surface:var(--color-cream-100);--color-text:var(--color-slate-900);--color-text-secondary:var(--color-slate-500);--color-primary:var(--color-teal-500);--color-primary-hover:var(--color-teal-600);--color-primary-active:var(--color-teal-700);--color-border:rgba(var(--color-brown-600-rgb),0.2);--color-card-border:rgba(var(--color-brown-600-rgb),0.12);--font-family-base:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-family-mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Monaco,Consolas,monospace;--font-size-xs:11px;--font-size-sm:12px;--font-size-base:14px;--font-size-lg:16px;--font-size-xl:18px;--font-size-2xl:20px;--font-size-3xl:24px;--space-4:4px;--space-8:8px;--space-12:12px;--space-16:16px;--space-20:20px;--space-24:24px;--space-32:32px;--radius-sm:6px;--radius-base:8px;--radius-lg:12px;--shadow-sm:0 1px 3px #0000000a,0 1px 2px #00000005;--shadow-md:0 4px 6px -1px #0000000a,0 2px 4px -1px #00000005;--shadow-lg:0 10px 15px -3px #0000000f,0 4px 6px -2px #00000008;--transition-fast:150ms cubic-bezier(0.16,1,0.3,1);--transition-normal:250ms cubic-bezier(0.16,1,0.3,1)}[data-theme=dark]{--color-background:var(--color-charcoal-700);--color-surface:var(--color-charcoal-800);--color-text:var(--color-gray-200);--color-text-secondary:rgba(var(--color-gray-300-rgb),0.7);--color-primary:var(--color-teal-300);--color-primary-hover:var(--color-teal-400);--color-border:rgba(var(--color-gray-400-rgb),0.3);--color-card-border:rgba(var(--color-gray-400-rgb),0.2)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--color-background:var(--color-charcoal-700);--color-surface:var(--color-charcoal-800);--color-text:var(--color-gray-200);--color-text-secondary:rgba(var(--color-gray-300-rgb),0.7);--color-primary:var(--color-teal-300);--color-primary-hover:var(--color-teal-400);--color-border:rgba(var(--color-gray-400-rgb),0.3);--color-card-border:rgba(var(--color-gray-400-rgb),0.2)}}:root{--color-background:#f5f5f5;--color-surface:#fff;--color-text:#1a1a1a;--color-text-secondary:#666;--color-border:#e0e0e0;--color-primary:#667eea;--color-primary-hover:#5568d3;--color-secondary:#f5f5f5}[data-theme=dark]{--color-background:#1a1a1a;--color-surface:#2d2d2d;--color-text:#e0e0e0;--color-text-secondary:#a0a0a0;--color-border:#ffffff1a;--color-primary:#7c8aff;--color-primary-hover:#8f9cff;--color-secondary:#ffffff0d}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f5f5f5;background:var(--color-background);color:#1a1a1a;color:var(--color-text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.App{height:100vh;overflow:hidden}.chat-message{align-items:flex-start;animation:slideIn .3s ease-out;display:flex;gap:12px;margin-bottom:20px;width:100%}.user-message{flex-direction:row-reverse;justify-content:flex-start}.user-message .message-content{border:none;border-radius:18px;box-shadow:0 2px 8px #667eea26;margin-left:auto;max-width:70%;padding:12px 16px}.user-message .message-avatar,.user-message .message-content{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.user-message .message-avatar{align-items:center;border-radius:50%;display:flex;flex-shrink:0;font-size:14px;font-weight:600;height:32px;justify-content:center;width:32px}.ai-message{flex-direction:row;justify-content:flex-start}.ai-message .message-content{border:none;max-width:100%;padding:0}.ai-message .message-avatar,.ai-message .message-content{background:#0000;color:#e5e7eb;color:var(--color-text,#e5e7eb)}.ai-message .message-avatar{align-items:center;display:flex;flex-shrink:0;font-size:20px;height:32px;justify-content:center;width:32px}.message-content-wrapper{display:flex;flex:1 1;flex-direction:column;gap:8px;min-width:0}.message-content{word-wrap:break-word;font-size:15px;line-height:1.6;overflow-wrap:break-word}.message-content p{line-height:1.6;margin:0 0 12px}.message-content p:last-child{margin-bottom:0}.message-timestamp{color:#e5e7eb80;font-size:11px;margin-top:4px;text-align:right}.ai-message .message-timestamp{text-align:left}.message-content h1,.message-content h2,.message-content h3,.message-content h4,.message-content h5,.message-content h6{font-weight:600;line-height:1.3;margin:16px 0 8px}.message-content h1{font-size:24px}.message-content h2{font-size:20px}.message-content h3{font-size:18px}.message-content h4{font-size:16px}.message-content ol,.message-content ul{margin:12px 0;padding-left:24px}.message-content li{line-height:1.6;margin:6px 0}.message-content code{background:#a78bfa1a;border:1px solid #a78bfa33;border-radius:4px;font-family:Courier New,monospace;font-size:14px;padding:2px 6px}.message-content pre{background:#1e1e1e;border:1px solid #ffffff1a;border-radius:8px;margin:12px 0;overflow-x:auto;padding:16px;position:relative}.message-content pre code{background:none;border:none;color:#d4d4d4;font-size:14px;line-height:1.5;padding:0}.code-block-wrapper{margin:12px 0;position:relative}.copy-code-btn{align-items:center;background:#ffffff1a;border:1px solid #fff3;border-radius:6px;color:#fffc;cursor:pointer;display:flex;font-size:12px;gap:4px;padding:6px 10px;position:absolute;right:8px;top:8px;transition:all .2s}.copy-code-btn:hover{background:#ffffff26;border-color:#ffffff4d}.copy-code-btn.copied{background:#22c55e33;border-color:#22c55e66;color:#22c55e}.message-content blockquote{border-left:3px solid #a78bfa80;color:#e5e7ebcc;font-style:italic;margin:12px 0;padding-left:16px}.message-content a{color:#60a5fa;text-decoration:underline;transition:color .2s}.message-content a:hover{color:#93c5fd}.message-content table{border-collapse:collapse;font-size:14px;margin:12px 0;width:100%}.message-content td,.message-content th{border:1px solid #ffffff1a;padding:8px 12px;text-align:left}.message-content th{background:#a78bfa1a;font-weight:600}.message-actions-bar{align-items:center;display:flex;gap:4px;margin-top:8px;opacity:0;padding:4px 0;transition:opacity .2s}.chat-message:hover .message-actions-bar{opacity:1}.action-bar-btn{align-items:center;background:#0000;border:1px solid #0000;border-radius:6px;color:#e5e7eb99;cursor:pointer;display:flex;height:32px;justify-content:center;padding:0;transition:all .15s;width:32px}.action-bar-btn:hover{background:#a78bfa1a;border-color:#a78bfa33;color:#e5e7ebe6}.action-bar-btn:active{transform:scale(.95)}@media (max-width:768px){.chat-message{gap:10px;margin-bottom:16px}.user-message .message-content{max-width:80%}.message-content{font-size:14px}.message-avatar{font-size:16px!important;height:28px!important;width:28px!important}.message-actions-bar{opacity:1}}.chat-container{background:#1f2937;color:#e5e7eb}.chat-input-form{align-items:flex-end;display:flex;gap:8px;width:100%}.input-wrapper{align-items:center;background:#ffffff0d;border:2px solid #ffffff1a;border-radius:24px;display:flex;flex:1 1;gap:6px;min-height:44px;padding:8px 12px;transition:all .2s}.input-wrapper:focus-within{background:#ffffff14;border-color:#667eea}.input-icon-btn{-webkit-tap-highlight-color:transparent;align-items:center;background:#0000;border:none;border-radius:50%;color:#a0a0a0;cursor:pointer;display:flex;flex-shrink:0;height:32px;justify-content:center;min-height:32px;min-width:32px;padding:0;transition:all .2s;width:32px}.input-icon-btn:hover{background:#ffffff1a;color:#667eea}.input-icon-btn:active{transform:scale(.9)}.mic-btn.listening{animation:pulse-mic 1.5s infinite;background:#ff545933;color:#ff5459}@keyframes pulse-mic{0%,to{box-shadow:0 0 0 0 #ff545980;transform:scale(1)}50%{box-shadow:0 0 0 8px #ff545900;transform:scale(1.05)}}.chat-input-textarea{background:#0000;border:none;color:#e0e0e0;flex:1 1;font-family:inherit;font-size:15px;line-height:1.4;max-height:100px;min-height:20px;outline:none;padding:6px 4px;resize:none}.chat-input-textarea::placeholder{color:#666}.chat-input-textarea:disabled{opacity:.5}.send-button{-webkit-tap-highlight-color:transparent;align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;height:44px;justify-content:center;min-height:44px;min-width:44px;padding:0;transition:all .2s;width:44px}.send-button:active:not(:disabled){transform:scale(.9)}.send-button:disabled{background:#444;cursor:not-allowed;opacity:.5}@media (max-width:768px){.chat-input-form{gap:8px}.input-wrapper{min-height:40px;padding:6px 10px}.input-icon-btn{height:30px;min-height:30px;min-width:30px;width:30px}.input-icon-btn svg{height:18px;width:18px}.send-button{height:40px;min-height:40px;min-width:40px;width:40px}.send-button svg{height:18px;width:18px}.chat-input-textarea{font-size:16px;padding:4px}}.modern-sidebar{animation:slideIn .3s cubic-bezier(.4,0,.2,1);background:linear-gradient(180deg,#1a1a2e,#16213e);box-shadow:2px 0 20px #0000004d;display:flex;flex-direction:column;height:100vh;left:0;position:fixed;top:0;width:320px;z-index:1000}@keyframes slideIn{0%{opacity:0;transform:translateX(-100%)}to{opacity:1;transform:translateX(0)}}.modern-sidebar-header{align-items:center;border-bottom:1px solid #ffffff1a;display:flex;justify-content:space-between;padding:20px}.sidebar-brand{gap:12px}.brand-icon,.sidebar-brand{align-items:center;display:flex}.brand-icon{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;height:40px;justify-content:center;width:40px}.sidebar-brand h2{color:#e0e0e0;font-size:18px;font-weight:600;margin:0}.close-sidebar{align-items:center;background:#ffffff0d;border:none;border-radius:8px;color:#a0a0a0;cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .2s;width:32px}.close-sidebar:hover{background:#ffffff1a;color:#fff}.sidebar-actions{padding:16px 20px}.new-chat-action{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;box-shadow:0 4px 15px #667eea4d;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:10px;justify-content:center;padding:12px;transition:all .3s;width:100%}.new-chat-action:hover{box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.sidebar-search{align-items:center;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;display:flex;gap:10px;margin:0 20px 16px;padding:10px 16px;transition:all .2s}.sidebar-search:focus-within{background:#ffffff14;border-color:#667eea}.sidebar-search svg{color:#666;flex-shrink:0}.sidebar-search input{background:#0000;border:none;color:#e0e0e0;flex:1 1;font-size:14px;outline:none}.sidebar-search input::placeholder{color:#666}.sidebar-conversations{flex:1 1;overflow-y:auto;padding:0 20px 20px}.sidebar-conversations::-webkit-scrollbar{width:6px}.sidebar-conversations::-webkit-scrollbar-track{background:#0000}.sidebar-conversations::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.empty-conversations{padding:60px 20px;text-align:center}.empty-icon{align-items:center;background:#ffffff0d;border-radius:50%;color:#666;display:flex;height:80px;justify-content:center;margin:0 auto 20px;width:80px}.empty-conversations h3{color:#e0e0e0;font-size:18px;margin-bottom:8px}.empty-conversations p{color:#666;font-size:14px}.conversation-cards{display:flex;flex-direction:column;gap:12px}.conversation-card{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;cursor:pointer;overflow:hidden;padding:16px;position:relative;transition:all .3s}.conversation-card:hover{background:#ffffff14;border-color:#fff3;box-shadow:0 4px 12px #0003;transform:translateX(4px)}.card-gradient{height:100%;left:0;position:absolute;top:0;transition:width .3s;width:4px}.conversation-card:hover .card-gradient{opacity:.1;width:100%}.card-content{position:relative;z-index:1}.card-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;line-height:1.4;margin:0 0 8px;overflow:hidden}.card-title,.edit-title-input{color:#e0e0e0;font-size:15px;font-weight:600}.edit-title-input{background:#ffffff1a;border:2px solid #667eea;border-radius:6px;outline:none;padding:6px 8px;width:100%}.card-meta{align-items:center;color:#888;display:flex;font-size:12px;gap:12px}.card-date,.card-messages{align-items:center;display:flex;gap:4px}.card-actions{display:flex;gap:6px;margin-top:12px;opacity:0;position:relative;transition:opacity .2s;z-index:2}.conversation-card:hover .card-actions{opacity:1}.action-btn{align-items:center;background:#ffffff1a;border:1px solid #fff3;border-radius:6px;color:#e0e0e0;cursor:pointer;display:flex;flex:1 1;justify-content:center;padding:6px;transition:all .2s}.action-btn:hover{background:#ffffff26;transform:scale(1.05)}.edit-btn:hover{background:#667eea33;border-color:#667eea;color:#667eea}.delete-btn:hover{background:#ff545933;border-color:#ff5459;color:#ff5459}.save-btn{background:#43e97b33;border-color:#43e97b;color:#43e97b}.cancel-btn{background:#ff545933;border-color:#ff5459;color:#ff5459}.sidebar-footer{border-top:1px solid #ffffff1a;padding:16px 20px}.clear-all-btn{align-items:center;background:#ff54591a;border:1px solid #ff54594d;border-radius:8px;color:#ff5459;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:8px;justify-content:center;padding:10px;transition:all .2s;width:100%}.clear-all-btn:hover{background:#ff545933;transform:translateY(-1px)}.delete-confirm{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;padding:16px;text-align:center}.delete-confirm p{color:#e0e0e0;font-size:14px;margin-bottom:12px}.confirm-actions{display:flex;gap:8px}.confirm-no,.confirm-yes{border-radius:6px;cursor:pointer;flex:1 1;font-size:13px;font-weight:500;padding:8px;transition:all .2s}.confirm-yes{background:#ff5459;border:none;color:#fff}.confirm-yes:hover{background:#ff3b41}.confirm-no{background:#0000;border:1px solid #fff3;color:#e0e0e0}.confirm-no:hover{background:#ffffff0d}.chat-container{background:var(--color-background);color:var(--color-text);display:flex;flex-direction:column;height:100vh;left:0;overflow:hidden;position:fixed;top:0;width:100%}.chat-header{background:var(--color-surface);border-bottom:1px solid var(--color-border);box-shadow:0 2px 8px #0000001a;flex-shrink:0;gap:12px;justify-content:space-between;min-height:60px;padding:12px 16px}.chat-header,.history-btn{align-items:center;display:flex}.history-btn{background:#667eea1a;border:1px solid var(--color-border);border-radius:8px;color:var(--color-text);cursor:pointer;font-size:13px;font-weight:500;gap:6px;padding:8px 12px;transition:all .2s;white-space:nowrap}.history-btn:hover{background:var(--color-primary);color:#fff}.header-info{flex:1 1;margin:0 12px;min-width:0;text-align:center}.header-info h1{color:var(--color-text);font-size:16px;font-weight:600;margin:0 0 2px}.header-info span{color:var(--color-text-secondary);font-size:11px}.header-actions{align-items:center;display:flex;gap:8px}.theme-toggle-btn{align-items:center;background:#667eea1a;border:1px solid var(--color-border);border-radius:50%;color:var(--color-text);cursor:pointer;display:flex;height:40px;justify-content:center;min-width:40px;padding:0;transition:all .2s;width:40px}.theme-toggle-btn:hover{background:var(--color-primary);color:#fff;transform:translateY(-1px)}.theme-toggle-btn:active{transform:scale(.95)}.export-dropdown{position:relative}.export-btn{align-items:center;background:#667eea1a;border:1px solid var(--color-border);border-radius:8px;color:var(--color-text);cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:6px;padding:8px 12px;transition:all .2s;white-space:nowrap}.export-btn:hover{background:var(--color-primary);color:#fff}.export-menu{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 4px 12px #0003;display:none;min-width:160px;overflow:hidden;position:absolute;right:0;top:calc(100% + 8px);z-index:1000}.export-dropdown:hover .export-menu{display:block}.export-menu button{background:#0000;border:none;color:var(--color-text);cursor:pointer;display:block;font-size:13px;padding:10px 16px;text-align:left;transition:background .2s;width:100%}.export-menu button:hover{background:#667eea1a}.logout-btn,.new-chat-btn{background:#667eea1a;border:1px solid var(--color-border);border-radius:8px;color:var(--color-text);cursor:pointer;font-size:13px;font-weight:500;padding:8px 12px;transition:all .2s;white-space:nowrap}.logout-btn:hover,.new-chat-btn:hover{background:var(--color-primary);color:#fff}.messages-container{background:var(--color-background);display:flex;flex:1 1;flex-direction:column;gap:16px;overflow-x:hidden;overflow-y:auto;padding:16px}.welcome-message{margin:auto;max-width:90%;padding:20px;text-align:center}.welcome-message h2{color:var(--color-text);font-size:24px;font-weight:600;margin-bottom:12px}.welcome-message p{color:var(--color-text-secondary);font-size:14px}.input-container{align-items:flex-end;background:var(--color-surface);border-top:1px solid var(--color-border);box-shadow:0 -2px 8px #0000000d;display:flex;flex-shrink:0;gap:8px;padding:12px 16px}.typing-indicator{align-items:center;display:flex;gap:4px;padding:12px}.typing-indicator span{animation:bounce 1.4s infinite;background:var(--color-text-secondary);border-radius:50%;height:8px;width:8px}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes bounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-10px)}}@media (max-width:768px){.chat-header{min-height:56px;padding:10px 12px}.export-btn,.history-btn,.logout-btn,.new-chat-btn{font-size:12px;padding:6px 10px}.theme-toggle-btn{height:36px;width:36px}.header-info h1{font-size:14px}.messages-container{padding:12px}}@media (max-width:480px){.export-btn span,.history-btn span,.new-chat-btn span{display:none}}.auth-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:20px}.auth-card{animation:slideUp .4s ease-out;background:#2d2d2d;border-radius:16px;box-shadow:0 20px 60px #00000080;max-width:420px;padding:40px;width:100%}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.auth-logo{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;color:#fff;display:flex;height:64px;justify-content:center;margin:0 auto 20px;width:64px}.auth-header{margin-bottom:32px;text-align:center}.auth-header h1{color:#e0e0e0;font-size:28px;font-weight:600;margin-bottom:8px}.auth-header p{color:#a0a0a0;font-size:14px}.auth-form{gap:20px}.auth-form,.form-group{display:flex;flex-direction:column}.form-group{gap:8px}.form-group label{color:#e0e0e0;font-size:14px;font-weight:500}.form-group input{background:#ffffff0d;border:2px solid #ffffff1a;border-radius:8px;color:#e0e0e0;font-size:15px;padding:12px 16px;transition:all .2s}.form-group input::placeholder{color:#666}.form-group input:focus{background:#ffffff14;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.auth-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-top:8px;padding:14px;transition:all .2s}.auth-button:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}.auth-button:active{transform:translateY(0)}.auth-error{background:#ff54591a;border:1px solid #ff54594d;border-radius:8px;color:#ff5459;font-size:14px;padding:12px;text-align:center}.auth-footer{margin-top:24px;text-align:center}.auth-footer p{color:#a0a0a0;font-size:14px}.auth-link{background:none;border:none;color:#667eea;cursor:pointer;font-weight:600;padding:0;text-decoration:none}.auth-link:hover{text-decoration:underline}
/*# sourceMappingURL=main.c673c0bd.css.map*/