*{margin:0;padding:0}body{background:#f5f7fa;bottom:0;height:100vh;height:100dvh;left:0;position:fixed;right:0;top:0}#root,body{overflow:hidden}#root{height:100%;width:100%}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.auth-container{align-items:center;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);display:flex;justify-content:center;min-height:100vh;padding:20px}.auth-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff;border:1px solid #fff3;border-radius:16px;box-shadow:0 10px 30px #0000001a;max-width:400px;padding:40px;width:100%}.auth-header{margin-bottom:32px;text-align:center}.auth-header h1{color:#2c3e50;font-size:28px;font-weight:600;letter-spacing:-.5px;margin:0 0 8px}.auth-header p{color:#7f8c8d;font-size:16px;font-weight:400;margin:0}.auth-form{gap:20px}.auth-form,.form-group{display:flex;flex-direction:column}.form-group{gap:8px}.form-group label{color:#2c3e50;font-size:14px;font-weight:500;letter-spacing:.3px}.form-input{background:#fafbfc;border:2px solid #e1e8ed;border-radius:8px;color:#2c3e50;font-size:16px;padding:14px 16px;transition:all .2s ease}.form-input:focus{background:#fff;border-color:#74b9ff;box-shadow:0 0 0 3px #74b9ff1a;outline:none}.form-input::placeholder{color:#a0aec0;font-weight:400}.auth-button{background:linear-gradient(135deg,#74b9ff,#0984e3);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;letter-spacing:.3px;margin-top:8px;padding:14px 24px;transition:all .2s ease}.auth-button:hover:not(:disabled){box-shadow:0 8px 25px #74b9ff4d;transform:translateY(-1px)}.auth-button:active:not(:disabled){transform:translateY(0)}.auth-button:disabled{cursor:not-allowed;opacity:.7;transform:none}.error-message{background:#ffe6e6;border-left:4px solid #e74c3c;border-radius:8px;color:#e74c3c;font-size:14px;margin-top:8px;padding:12px 16px}.auth-footer{border-top:1px solid #e1e8ed;margin-top:24px;padding-top:24px;text-align:center}.auth-footer p{color:#7f8c8d;font-size:14px;margin:0}.toggle-button{background:none;border:none;color:#74b9ff;cursor:pointer;font-size:14px;font-weight:600;padding:0;text-decoration:underline;transition:color .2s ease}.toggle-button:hover{color:#0984e3}@media (max-width:480px){.auth-container{padding:16px}.auth-card{padding:24px}.auth-header h1{font-size:24px}}.loading-dots{align-items:center;display:flex;gap:4px;padding:8px 0}.dot{animation:pulse 1.4s ease-in-out infinite both;background-color:#74b9ff;border-radius:50%;height:6px;width:6px}.dot:first-child{animation-delay:-.32s}.dot:nth-child(2){animation-delay:-.16s}.dot:nth-child(3){animation-delay:0s}.dashboard{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);bottom:0;display:flex;flex-direction:column;height:100vh;height:100dvh;left:0;overflow:hidden;position:fixed;right:0;top:0}.dashboard-header{background:#fff;border-bottom:1px solid #e1e8ed;box-shadow:0 2px 10px #0000001a;flex-shrink:0;z-index:100}.dashboard-nav{justify-content:space-between;margin:0 auto;max-width:1400px;padding:16px 24px}.dashboard-nav,.nav-left{align-items:center;display:flex}.nav-left{gap:16px}.hamburger-button{background:none;border:none;border-radius:6px;color:#2c3e50;cursor:pointer;display:none;padding:8px;transition:background-color .2s ease}.hamburger-button:hover{background:#f8f9fa}.dashboard-nav h1{color:#2c3e50;font-size:24px;font-weight:600;letter-spacing:-.5px;margin:0}.user-info{align-items:center;display:flex;gap:16px}.user-info span{color:#7f8c8d;font-size:14px;font-weight:500}.logout-button{background:linear-gradient(135deg,#ff7675,#e84393);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;letter-spacing:.3px;padding:8px 16px;transition:all .2s ease}.logout-button:hover{box-shadow:0 4px 15px #ff76754d;transform:translateY(-1px)}.logout-button:active{transform:translateY(0)}.dashboard-content{display:flex;flex:1 1;margin:0 auto;max-width:1400px;min-height:0;overflow:hidden;position:relative;width:100%}.sidebar{background:#fff;border-right:1px solid #e1e8ed;box-shadow:2px 0 10px #0000000d;display:flex;flex-direction:column;flex-shrink:0;width:300px}.sidebar-header{border-bottom:1px solid #e1e8ed;padding:20px}.voice-hint{background:#f8f9fa;border:1px solid #e1e8ed;border-radius:8px;gap:8px;margin-top:10px;padding:8px 10px}.voice-hint,.voice-hint-icon{align-items:center;display:flex}.voice-hint-icon{background:#eef5ff;border-radius:50%;color:#0984e3;height:28px;justify-content:center;width:28px}.voice-hint-text{color:#7f8c8d;font-size:12px}.new-chat-button{align-items:center;background:linear-gradient(135deg,#74b9ff,#0984e3);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;justify-content:center;padding:12px 16px;transition:all .2s ease;width:100%}.new-chat-button:hover:not(:disabled){box-shadow:0 4px 15px #74b9ff4d;transform:translateY(-1px)}.new-chat-button:disabled{background:#e1e8ed;color:#a0aec0;cursor:not-allowed;transform:none}.chat-sessions{flex:1 1;overflow-y:auto;padding:16px}.empty-sessions{color:#7f8c8d;font-size:14px;padding:20px;text-align:center}.empty-sessions p{margin:4px 0}.loading-sessions{align-items:center;color:#7f8c8d;display:flex;flex-direction:column;gap:12px;justify-content:center;padding:40px 20px}.loading-sessions p{font-size:14px;margin:0}.session-card{align-items:center;background:#f8f9fa;border:1px solid #e1e8ed;border-radius:8px;cursor:pointer;display:flex;gap:8px;justify-content:space-between;margin-bottom:8px;padding:12px;transition:all .2s ease}.session-card:hover{background:#e9ecef;border-color:#74b9ff}.session-card:hover .delete-session-button{opacity:1}.session-card.active{background:linear-gradient(135deg,#74b9ff,#0984e3);border-color:#0984e3;color:#fff}.session-content{flex:1 1;min-width:0}.session-title{color:inherit;font-size:14px;font-weight:600;margin-bottom:4px}.session-preview{color:#7f8c8d;font-size:12px;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-card.active .session-preview{color:#fffc}.session-time{color:#a0aec0;font-size:11px}.session-card.active .session-time{color:#fff9}.delete-session-button{align-items:center;background:none;border:none;border-radius:4px;color:#dc3545;cursor:pointer;display:flex;flex-shrink:0;justify-content:center;opacity:0;padding:4px;transition:all .2s ease}@media (max-width:768px){.delete-session-button{opacity:1}}.delete-session-button:hover:not(:disabled){background:#dc35451a;color:#c82333}.delete-session-button:disabled{color:#a0aec0;cursor:not-allowed;opacity:1}.session-card.active .delete-session-button{color:#fffc}.session-card.active .delete-session-button:hover{background:#ffffff1a;color:#fff}.chat-main{gap:20px;padding:20px 24px}.chat-container,.chat-main{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden}.chat-container{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff;border:1px solid #fff3;border-radius:16px;box-shadow:0 10px 30px #0000001a}.messages-container{display:flex;flex:1 1;flex-direction:column;gap:12px;overflow-y:auto;padding:20px}.empty-state{font-size:16px;font-style:italic}.empty-state,.loading-messages{align-items:center;color:#7f8c8d;display:flex;height:100%;justify-content:center}.loading-messages{flex-direction:column;gap:12px}.loading-messages p{font-size:16px;font-style:italic;margin:0}.no-session-state{align-items:center;display:flex;height:100%;justify-content:center;padding:40px 20px;text-align:center}.no-session-content{max-width:400px}.no-session-content h3{color:#2c3e50;font-size:24px;font-style:normal;font-weight:600;margin-bottom:16px}.no-session-content p{color:#7f8c8d;font-size:16px;font-style:normal;line-height:1.5;margin-bottom:32px}.start-chat-button{align-items:center;background:linear-gradient(135deg,#74b9ff,#0984e3);border:none;border-radius:12px;box-shadow:0 4px 15px #74b9ff4d;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:12px;justify-content:center;margin:0 auto;min-width:200px;padding:16px 24px;transition:all .2s ease}.start-chat-button:hover{box-shadow:0 6px 20px #74b9ff66;transform:translateY(-2px)}.start-chat-button:active{transform:translateY(0)}.start-chat-button:disabled{background:#e1e8ed;box-shadow:none;color:#a0aec0;cursor:not-allowed;transform:none}.empty-messages-state{align-items:center;color:#7f8c8d;display:flex;font-size:16px;font-style:italic;height:100%;justify-content:center}.message-container{margin-bottom:16px}.last-message,.message-container{display:flex;flex-direction:column}.last-message{justify-content:flex-start}.user-message-container{align-items:flex-end}.assistant-message-container{align-items:flex-start}.user-message-bubble{word-wrap:break-word;background:linear-gradient(135deg,#74b9ff,#0984e3);border-radius:18px;border-bottom-right-radius:4px;box-shadow:0 2px 8px #74b9ff33;color:#fff;font-size:16px;line-height:1.5;max-width:66.67%;padding:12px 16px}.user-message-bubble h1,.user-message-bubble h2,.user-message-bubble h3,.user-message-bubble h4,.user-message-bubble h5,.user-message-bubble h6{color:#fff;margin:8px 0 4px}.user-message-bubble p{margin:4px 0}.user-message-bubble code{background:#fff3;border-radius:4px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;padding:2px 4px}.user-message-bubble pre{background:#ffffff1a;border-radius:6px;margin:8px 0;overflow-x:auto;padding:8px}.user-message-bubble pre code{background:none;padding:0}.assistant-message-text{word-wrap:break-word;color:#2c3e50;font-size:16px;line-height:1.6;margin-bottom:8px;padding:8px 0;width:100%}.assistant-message-text h1,.assistant-message-text h2,.assistant-message-text h3,.assistant-message-text h4,.assistant-message-text h5,.assistant-message-text h6{color:#2c3e50;font-weight:600;margin:12px 0 8px}.assistant-message-text h1{border-bottom:2px solid #e1e8ed;font-size:24px;padding-bottom:8px}.assistant-message-text h2{border-bottom:1px solid #e1e8ed;font-size:20px;padding-bottom:6px}.assistant-message-text h3{font-size:18px}.assistant-message-text p{margin:8px 0}.assistant-message-text ol,.assistant-message-text ul{margin:8px 0;padding-left:20px}.assistant-message-text li{margin:4px 0}.assistant-message-text code{border-radius:4px;color:#e74c3c;padding:2px 6px}.assistant-message-text code,.assistant-message-text pre{background:#f8f9fa;border:1px solid #e1e8ed;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:14px}.assistant-message-text pre{border-radius:8px;line-height:1.4;margin:12px 0;overflow-x:auto;padding:16px}.assistant-message-text pre code{background:none;border:none;color:#2c3e50;font-size:14px;padding:0}.assistant-message-text blockquote{background:#f8f9fa;border-left:4px solid #74b9ff;border-radius:0 8px 8px 0;font-style:italic;margin:12px 0;padding:8px 16px}.assistant-message-text table{border-collapse:collapse;margin:12px 0;width:100%}.assistant-message-text td,.assistant-message-text th{border:1px solid #e1e8ed;padding:8px 12px;text-align:left}.assistant-message-text th{background:#f8f9fa;font-weight:600}.assistant-message-text a{color:#74b9ff;text-decoration:none}.assistant-message-text a:hover{text-decoration:underline}.input-container{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff;border:1px solid #fff3;border-radius:16px;box-shadow:0 10px 30px #0000001a;flex-shrink:0}.input-wrapper{align-items:flex-end;display:flex;gap:12px;padding:16px}.input-wrapper-no-text{justify-content:flex-end}.message-input{background:#fafbfc;border:2px solid #e1e8ed;border-radius:12px;color:#2c3e50;flex:1 1;font-family:inherit;font-size:14px;max-height:120px;min-height:20px;padding:12px 16px;resize:none;transition:all .2s ease}.message-input:focus{background:#fff;border-color:#74b9ff;box-shadow:0 0 0 3px #74b9ff1a;outline:none}.message-input::placeholder{color:#a0aec0}.message-input:disabled{background:#f8f9fa;border-color:#e1e8ed;color:#a0aec0;cursor:not-allowed}.input-buttons{align-items:center;display:flex;gap:8px}.mic-button,.send-button{align-items:center;border:none;border-radius:50%;cursor:pointer;display:flex;height:40px;justify-content:center;transition:all .2s ease;width:40px}.mic-button{background:#f8f9fa;border:2px solid #e1e8ed;color:#7f8c8d}.mic-button:hover{background:#e9ecef;color:#495057}.send-button{background:linear-gradient(135deg,#74b9ff,#0984e3);color:#fff}.recording-controls{align-items:center;background:#fff5f5;border:1px solid #ffe3e3;border-radius:999px;display:flex;gap:8px;padding:6px 10px}.recording-timer{align-items:center;color:#c92a2a;display:flex;font-weight:600;gap:6px}.recording-dot{animation:pulse 1.5s infinite;background:#ff4d4f;border-radius:50%;box-shadow:0 0 0 0 #ff4d4fb3;display:inline-block;height:8px;width:8px}@keyframes pulse{0%{box-shadow:0 0 0 0 #ff4d4fb3}70%{box-shadow:0 0 0 8px #ff4d4f00}to{box-shadow:0 0 0 0 #ff4d4f00}}.stop-recording-button{align-items:center;background:#ff4d4f;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:36px;justify-content:center;transition:transform .15s ease;width:36px}.stop-recording-button:hover{transform:translateY(-1px)}.recordings-list{flex:1 1;flex-wrap:wrap}.recording-pill,.recordings-list{align-items:center;display:flex;gap:8px}.recording-pill{background:#f8f9fa;border:1px solid #e1e8ed;border-radius:999px;padding:6px 10px}.recording-icon{background:#0984e3;border-radius:50%;height:10px;width:10px}.recording-duration{color:#7f8c8d;font-size:12px}.recording-delete-button{background:none;border:none;border-radius:50%;color:#dc3545;cursor:pointer;padding:4px}.recording-delete-button:hover{background:#dc35451a}.send-button:hover:not(:disabled){box-shadow:0 4px 15px #74b9ff4d;transform:translateY(-1px)}.send-button:disabled{background:#e1e8ed;color:#a0aec0;cursor:not-allowed;transform:none}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:500}.modal{background:#fff;border:1px solid #e1e8ed;border-radius:12px;box-shadow:0 10px 30px #0003;max-width:420px;padding:20px;width:calc(100% - 32px)}.modal-title{color:#2c3e50;font-size:18px;font-weight:600;margin-bottom:8px}.modal-body{color:#4a5568;font-size:14px;line-height:1.5}.modal-actions{display:flex;justify-content:flex-end;margin-top:16px}.modal-button{background:linear-gradient(135deg,#74b9ff,#0984e3);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:8px 14px}@media (max-width:768px){.hamburger-button{display:block}.dashboard-nav{padding:12px 16px}.dashboard-nav h1{font-size:20px}.user-info span{display:none}.dashboard-content{max-width:100%;padding:0}.sidebar{height:100vh;height:100dvh;left:-300px;position:fixed;top:0;transition:left .3s ease;z-index:200}.sidebar.sidebar-open{left:0}.sidebar-overlay{background:#00000080;bottom:0;left:0;position:fixed;right:0;top:0;z-index:150}.chat-main{gap:12px;padding:12px;width:100%}.chat-container{min-height:0}.user-message-bubble{max-width:85%}.input-wrapper{padding:12px}.mic-button,.send-button{height:36px;width:36px}.input-container{flex-shrink:0}@media (max-height:500px){.chat-main{gap:8px;padding:8px}.messages-container{padding:12px}.input-wrapper{padding:8px}}}@media (min-width:769px) and (max-width:1024px){.dashboard-content{max-width:100%}.sidebar{width:280px}.chat-main{padding:16px 20px}}@media (min-width:1400px){.dashboard-content{max-width:1600px}.sidebar{width:320px}.chat-main{padding:24px 32px}}.loading-container{align-items:center;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);display:flex;flex-direction:column;justify-content:center;min-height:100vh}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #e1e8ed;border-radius:50%;border-top-color:#74b9ff;height:40px;margin-bottom:16px;width:40px}.loading-container p{color:#7f8c8d;font-size:16px;font-weight:500;margin:0}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.App{margin:0;min-height:100vh;padding:0}*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0;padding:0}
/*# sourceMappingURL=main.5980f28e.css.map*/