.typing-title{display:inline-block;font-family:inherit}.typing-cursor{color:#007aff;display:inline-block;font-weight:400;margin-left:2px;opacity:0;transition:opacity .1s ease}.typing-cursor.visible{opacity:1}@keyframes blink-cursor{0%,to{opacity:1}50%{opacity:0}}.sidebar{background:#0000;border-right:none;display:flex;flex-direction:column;height:100vh;left:0;overflow:hidden;padding:16px 24px;position:fixed;top:0;transform:translateX(0);transition:transform .3s ease,box-shadow .3s,border-radius .3s;width:340px;width:var(--sidebar-width,340px);z-index:10}@media (max-width:768px){.sidebar{border-radius:0 16px 16px 0;height:100vh;top:0;transform:translateX(-100%);width:50vw;z-index:999}.sidebar.open{background-image:url(/static/media/bg-main.f90253e2f237a79be9bf.jpg);background-position:0;background-repeat:no-repeat;background-size:cover;transform:translateX(0)}.sidebar.opening{animation:slideInFromLeft .3s ease forwards}.sidebar.closing{animation:slideOutToLeft .3s ease forwards}}@media (max-width:550px){.sidebar{border-radius:0;width:100vw}}@media (max-width:480px){.sidebar{border-radius:0;width:100vw}}.sidebar-header{align-items:center;background:#0000;border-bottom:none;display:flex;justify-content:space-between}.sidebar-header-btn{align-items:center;display:flex;gap:8px}.btn-news .menu-icon{color:#0b1020;height:18px;transition:all .2s ease;width:18px}.btn-news:hover{transform:scale(1.2);transition:all .2s ease}.btn-news:active{transform:scale(1.05)}.btn-new-chat{background-color:#0b1020;border:none;border-radius:8px;cursor:pointer;padding:9.5px}.btn-new-chat .menu-icon{color:#fff;height:18px;width:18px}.btn-new-chat,.btn-new-chat:hover{transition:all .2s ease}.btn-new-chat:hover{transform:scale(1.1)}.logo{align-items:flex-start;color:#343a40;display:flex;font-size:1.25rem;font-weight:700;gap:.5rem}.logo img,.mobile-close-btn{height:36px;width:36px}.mobile-close-btn{align-items:center;background:none;background:#0b10200f;border:none;border-radius:8px;color:#0b1020;cursor:pointer;display:flex;font-size:22px;justify-content:center;padding:10px;transition:all .2s ease}.mobile-close-btn:hover{background:#ffffff1a;color:#333}.menu-item{align-items:center;background:#f6fef9;border:1.5px solid #1db954;border-radius:12px;color:#1db954;cursor:pointer;display:flex;font-size:15px;font-weight:500;gap:10px;margin-bottom:0;padding:10px 16px;transition:background .18s,color .18s,border .18s}.menu-item:not(:first-child){background:none;border:none;color:#222}.menu-item.active,.menu-item:hover{background:#e9fbe9;color:#1db954}.menu-item.disabled{cursor:not-allowed;opacity:.5}.menu-icon{height:18px;width:18px}.search-container{border-bottom:none;padding:10px 20px 0}.search-input-wrapper{background:#f6f6f6;border-radius:10px;padding:0 8px}.search-input{background:#0000;border:none;color:#222;font-size:15px;padding:10px 8px 10px 32px}.search-input:focus{outline:none}.search-icon{color:#bdbdbd;left:12px}.clear-search-btn{color:#bdbdbd;right:8px}.search-loading{color:#6c757d;display:flex;justify-content:center;padding:.5rem}.chat-list-header{border-bottom:none;color:#888;font-size:13px;font-weight:600;padding:0 14px 8px}.chat-list-header span{color:#0b102099;font-size:13px;font-style:normal;font-weight:650;letter-spacing:.13px;line-height:16px;text-transform:uppercase}.chat-list{flex:1 1;height:calc(100vh - 245px);margin-bottom:8px;overflow-y:auto}.no-chats-message{color:#6c757d;font-style:italic;padding:1rem;text-align:center}.chat-item{align-items:center;background:none;border:1px solid #0000;border-radius:10px;cursor:pointer;display:flex;justify-content:space-between;margin-bottom:4px;padding:6px 14px;transition:background .18s,color .18s}.chat-item.active,.chat-item:hover{background:#ffffffb3}.chat-item.active{border:1px solid #fffc;border-radius:10px;color:#0b1020}.chat-item-title{color:#0b1020;flex:1 1;font-size:16px;font-style:normal;font-weight:450;line-height:24px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-item-menu{position:relative}.chat-menu-btn{color:#bdbdbd;opacity:1;padding:2px 4px}.chat-item:hover .chat-menu-btn{color:#0b1020}.chat-menu-dropdown{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#76aae51a;border:1px solid #fffc!important;border:none;border-radius:16px;display:flex;flex-direction:column;gap:5px;min-width:140px;padding:6px;position:absolute;right:0;top:110%;z-index:10}.chat-menu-option{align-items:center;background:none;border:none;border-radius:8px;box-shadow:none;cursor:pointer;display:flex;font-size:15px;font-weight:500;gap:8px;outline:none;padding:10px 20px;transition:background .16s,color .16s}.chat-menu-option:focus,.chat-menu-option:hover{background:#ffffffb3;border-radius:10px;color:#0b1020;cursor:pointer}.search-result-group{background-color:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;margin-bottom:1rem;overflow:hidden}.search-result-chat-title{background-color:#f8f9fa;border-bottom:1px solid #dee2e6;color:#343a40;font-weight:500;padding:.75rem}.search-result-item{border-bottom:1px solid #f1f3f5;cursor:pointer;transition:background-color .2s ease}.search-result-item:last-child{border-bottom:none}.search-result-item:hover{background-color:#f8f9fa}.search-result-content{color:#495057;font-size:.875rem;margin-bottom:.25rem}.search-result-date{color:#6c757d;font-size:.75rem}.search-matches{padding:.5rem 0}.search-match{border-bottom:1px solid #f1f3f5;cursor:pointer;padding:.75rem;transition:background-color .2s ease}.search-match:last-child{border-bottom:none}.search-match:hover{background-color:#f8f9fa}.match-content{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#495057;display:-webkit-box;font-size:.875rem;line-height:1.4;margin-bottom:.5rem;overflow:hidden}.match-time{color:#6c757d;font-size:.75rem}.chat-list-wrapper{height:100%;margin:16px 0 20px;padding:16px 6px}.account-section,.chat-list-wrapper{background:#76aae51a;border:1px solid #fffc;border-radius:16px;position:relative}.account-section{width:100%}.update-btn{background:#fff;border:1px solid #ededed;border-radius:15px;color:#8f8f8f;cursor:pointer;font-size:15px;font-weight:500;margin-top:20px;padding:10px 20px;pointer-events:none;width:100%}.update-badge{background:#0b1020;border-radius:4px;color:#fff;font-size:13px;font-style:normal;font-weight:650;letter-spacing:.13px;line-height:16px;margin-left:auto;padding:2px 4px;text-transform:uppercase}.account-info{cursor:pointer;gap:12px;padding:12px 14px;transition:all .2s ease;width:100%}.account-info,.account-section{align-items:center;display:flex}.account-section{height:68px;padding:6px}.account-info:hover{background:#ffffffb3;border-radius:10px;transition:all .2s ease}.account-avatar{align-items:center;background:#f6f6f6;border-radius:6px;color:#bdbdbd;display:flex;font-size:22px;height:24px;justify-content:center;position:relative;width:24px}.account-avatar img{border-radius:6px;height:100%;object-fit:cover;width:100%}.pro-badge{background:#1db954;border-radius:8px;color:#fff;font-size:10px;font-weight:700;letter-spacing:.5px;padding:2px 6px;position:absolute;right:-6px;top:-6px}.account-details{flex:1 1;overflow:hidden}.account-name{color:#0b1020;font-size:14px;font-style:normal;font-weight:650;line-height:20px;margin-bottom:2px}.account-email{color:#888;font-size:13px}.logout-btn{align-items:center;background:none;border:none;border-radius:8px;color:#bdbdbd;display:flex;font-size:15px;gap:8px;padding:8px 0 0;transition:background .18s,color .18s}.logout-btn:hover{background:#f6f6f6;color:#1db954}.account-section .upgraded-pro-btn{background:#f6f6f6;border:none;border-radius:8px;color:#bdbdbd;cursor:not-allowed;font-size:15px;font-weight:500;margin-top:10px;padding:10px 0;text-align:center;width:100%}.chat-list::-webkit-scrollbar{background:#0000;width:6px}.chat-list::-webkit-scrollbar-thumb{background:#f2f2f2;border-radius:6px}@media (max-width:768px){.sidebar{padding:12px 20px 8px}.chat-list-wrapper{margin:16px 0}.logo img{height:38px;width:140px}.sidebar-menu{gap:6px;padding:8px 16px 0}.menu-item{border-radius:14px;font-size:16px;padding:12px 16px}.search-container{padding:8px 16px 0}.search-input{font-size:16px;padding:12px 8px 12px 36px}.chat-list-header{font-size:14px;padding:16px 16px 4px}.chat-list{padding:0 6px}.chat-item{border-radius:12px;margin-bottom:3px;padding:12px 14px}.chat-item-title{font-size:16px}.account-name{font-size:17px}.account-email{font-size:14px}.logout-btn{font-size:16px;padding:10px 0 0}.update-btn{font-size:16px;padding:12px 20px}.account-info,.chat-item,.logout-btn,.menu-item{-webkit-tap-highlight-color:rgba(29,185,84,.1);touch-action:manipulation}.chat-menu-btn,.clear-search-btn{margin:-4px;padding:8px}}@media (max-width:480px){.sidebar{padding:10px 12px 6px}.logo img{height:32px;width:120px}.sidebar-menu{padding:6px 12px 0}.menu-item{font-size:17px;padding:14px 16px}.search-container{padding:6px 12px 0}.search-input{font-size:17px;padding:14px 8px 14px 40px}.chat-list-header{padding:14px 12px 4px}.chat-list{padding:0 4px}.chat-item{margin-bottom:2px;padding:14px 12px}.chat-item-title{font-size:17px}.account-avatar{font-size:24px;height:48px;width:48px}.account-name{font-size:18px}.account-email{font-size:15px}.logout-btn{font-size:17px;padding:12px 0 0}.update-btn{font-size:17px;padding:14px 20px}}:root{--danger-color:#e74c3c;--danger-hover:#c0392b}.modal-tabs{display:flex;gap:8px;margin:0 auto}.tab-btn{background:#0000;border:none;border-radius:8px;color:#666;cursor:pointer;font-weight:500;padding:8px 16px;transition:all .2s ease}.tab-btn:hover{background:#ffffff1a;color:#333}.tab-btn.active{background:#3498db1a;color:#3498db;font-weight:600}.tasks-tab{margin:auto}.tasks-tab-empty{padding-top:44px}.tasks-content{align-items:center;display:flex;flex-direction:column;gap:135px}.btn-task{width:100%}.btn-task .btn{width:-webkit-fit-content;width:fit-content}.tasks-content h3{color:#333;font-size:1.25rem;margin-bottom:16px}.tasks-content p{color:#666;line-height:1.5}.tasks-content p,.tasks-list{margin-bottom:24px}.task-item{background:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:12px;padding:16px}.task-item h4{color:#333;font-size:1rem;margin:0 0 8px}.task-item p{color:#666;font-size:.9rem;margin:0 0 12px}.task-status{text-align:center}.status-active{font-weight:500}.status-active,.status-pending{border-radius:4px;font-size:.8rem;padding:4px 8px}.tasks-actions{display:flex;justify-content:flex-end;width:100%}.tasks-actions .btn{border:none;border-radius:8px;cursor:pointer;font-weight:500;margin:auto;max-width:149px;min-width:103px;padding:10px 16px;transition:all .2s ease}.tasks-icon{color:#3498db;margin-right:8px}.empty-tasks{color:#666;padding:40px 20px;text-align:center}.empty-tasks .tasks-actions{margin-top:20px}.empty-icon{margin-bottom:26px}.empty-tasks h4{color:#333;font-size:28px;font-style:normal;font-weight:550;letter-spacing:-.56px;line-height:32px}.empty-tasks p{font-size:.9rem;margin:0}.task-details{margin:8px 0}.task-schedule{align-items:center;color:#666;display:inline-flex;font-size:.85rem;gap:4px}.status-completed{background:#27ae60;border-radius:4px;color:#fff;font-size:.8rem;font-weight:500;padding:4px 8px}.tasks-actions .btn{align-items:center;display:inline-flex;gap:6px}.loading-state{padding:40px 20px;text-align:center}.loading-state p{margin-top:12px}.connections-table{background:#76aae51a;border-radius:8px}.table-header{background:#0000;color:#6c757d;display:grid;font-size:.75rem;font-weight:600;grid-template-columns:2fr 2fr 1fr 1fr 100px;letter-spacing:.5px;text-transform:uppercase}.header-cell{font-size:13px;font-style:normal;font-weight:650;letter-spacing:.13px;line-height:16px;padding:12px 16px;text-transform:uppercase}.table-row{display:grid;grid-template-columns:2fr 2fr 1fr 1fr 100px;transition:background-color .2s ease}.cell{font-size:.9rem;padding:16px}.cell,.source-cell{align-items:center;display:flex}.source-cell{font-weight:500;gap:8px}.provider-logo{height:20px;width:20px}.project-id-cell{color:#495057;font-family:monospace;font-size:.85rem}.status-cell,.status-connected{color:#28a745;font-weight:500}.created-cell{color:#6c757d;font-size:.85rem}.actions-cell,.manage-btn{position:relative}.manage-btn{border:none;cursor:pointer;font-size:16px;padding:12px 11px;transition:all .2s ease}.manage-btn:hover{background:#e9ecef;border-color:#adb5bd;border-radius:12px;padding:12px 11px}.dropdown-menu{background:#76aae51a;border:1px solid #fffc!important;border:none;border-radius:16px;display:flex;flex-direction:column;gap:5px;min-width:140px;padding:6px;position:absolute;right:0;top:110%;z-index:10}.dropdown-item{background:none;border:none;color:#495057;cursor:pointer;display:block;font-size:.85rem;padding:8px 12px;text-align:left;transition:background-color .2s ease;width:100%}.dropdown-item:hover{background:#f8f9fa;border-radius:12px}.reports-table .dropdown-item{align-items:center;display:flex;gap:8px;padding:8px 12px}.reports-table .dropdown-item svg{flex-shrink:0;height:14px;width:14px}.dropdown-item.revoke-item{color:#dc3545}.dropdown-item.revoke-item:hover{background:#f8d7da}@media (max-width:768px){.table-header,.table-row{gap:8px;grid-template-columns:1fr}.cell,.header-cell{padding:8px 12px}.cell:before{color:#6c757d;content:attr(data-label);font-size:.75rem;font-weight:600;margin-right:8px;text-transform:uppercase}.table-header{display:none}}@media (max-width:1100px){.connections-table{overflow-x:scroll}}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.modal,.modal-content{background:#fff;background:var(--bg-primary,#fff);border:1px solid #e1e5e9;border:1px solid var(--border-color,#e1e5e9);border-radius:16px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;height:auto;max-width:85vw;max-width:1088px;overflow:hidden;position:relative;width:100%}.modal-confirm{max-width:85vw;width:420px}.modal-header{align-items:center;border-bottom:1px solid #e1e5e9;border-bottom:1px solid var(--border-color,#e1e5e9);display:flex;justify-content:space-between;padding:1.5rem 2rem;position:relative}.modal-header .auth-toggle{left:50%;margin-bottom:0;position:absolute;transform:translateX(-50%);width:200px}.modal-header h2{align-items:center;color:#2c3e50;color:var(--text-primary,#2c3e50);display:flex;font-size:1.25rem;font-weight:600;gap:.75rem;margin:0}.modal-icon{color:#3498db;color:var(--primary-color,#3498db);font-size:1.5rem}.modal-close-btn{background:none;border:none;border-radius:8px;color:#7f8c8d;color:var(--text-secondary,#7f8c8d);cursor:pointer;font-size:1.5rem;padding:.5rem;transition:all .2s ease}.modal-close-btn:hover{background:#0000000d;color:#2c3e50;color:var(--text-primary,#2c3e50)}.modal-body{-webkit-overflow-scrolling:touch;flex:1 1;margin:auto;overscroll-behavior:contain;width:100%}.modal-body-title{align-items:center;display:flex;flex-direction:column;gap:16px;justify-content:center;margin-bottom:20px}.modal-body-connection{margin:auto;padding:24px 0 52px;width:335px}.modal-body::-webkit-scrollbar{width:6px}.modal-body::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.modal-body::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.modal-body::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.modal-description{color:#7f8c8d;color:var(--text-secondary,#7f8c8d);font-size:.95rem;line-height:1.6;margin-bottom:1.5rem}.bi-integration-step{display:flex;flex-direction:column;height:100%}.bi-integration-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{gap:6px;margin-bottom:16px}.form-group .label_color,.form-group label{font-style:normal;font-weight:650;letter-spacing:.13px;line-height:16px}.form-group .label_color{color:#0b102099;font-size:13px;text-transform:uppercase}.input-hint{color:#0b102099;font-size:14px;font-style:normal;font-weight:500;line-height:20px}.form-group input,.form-group textarea,.form-input{background:#0b102010;border:none;border-radius:8px;box-sizing:border-box;color:#0b102099;font-family:inherit;font-size:14px;font-size:.9rem;padding:8px 10px;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.form-group input:focus,.form-group textarea:focus,.form-input:focus{border-color:#3498db;border-color:var(--primary-color,#3498db);box-shadow:0 0 0 3px #3498db1a;outline:none}.form-group input:disabled,.form-group textarea:disabled,.form-input:disabled{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);cursor:not-allowed;opacity:.6}.form-hint{color:#7f8c8d;color:var(--text-secondary,#7f8c8d);font-size:.85rem;line-height:1.4;margin-top:.25rem}.error-message{align-items:flex-start}.error-message,.success-message{font-size:.9rem;gap:.75rem;margin-bottom:1rem}.success-message{background:#27ae601a;border:1px solid #27ae604d;color:#27ae60;line-height:1.5;padding:1rem}.btn,.success-message{align-items:center;border-radius:8px;display:flex}.btn{border:none;cursor:pointer;font-size:.95rem;font-weight:600;gap:.5rem;justify-content:center;min-height:44px;padding:8px 14px;transition:all .2s ease;width:100%}.btn-primary{width:100%}.btn-primary,.btn-primary:hover:not(:disabled){background:#0b1020;color:#fff}.btn-secondary{background:#0b10200f;color:#0b1020;width:-webkit-fit-content;width:fit-content}.btn-secondary:hover:not(:disabled){background:#0b1020;color:#fff}.btn-danger{background:var(--danger-color,#e74c3c)}.btn:disabled{box-shadow:none!important;opacity:.6;transform:none!important}.modal-actions{display:flex;gap:1rem;justify-content:center;margin-top:2rem}.modal-actions .btn{width:-webkit-fit-content;width:fit-content}.modal-actions .btn-full{width:100%}.tables-list{display:flex;flex-direction:column;gap:.75rem;margin:1rem 0;max-height:400px;overflow-y:auto;padding-right:.5rem}.table-item{align-items:center;background:#fff;background:var(--bg-primary,#fff);border:2px solid #e1e5e9;border:2px solid var(--border-color,#e1e5e9);border-radius:12px;cursor:pointer;display:flex;justify-content:space-between;padding:1.5rem;transition:all .3s ease}.table-item:hover{box-shadow:0 4px 20px #3498db26;transform:translateY(-2px)}.table-item.selected,.table-item:hover{border-color:#3498db;border-color:var(--primary-color,#3498db)}.table-item.selected{background:#3498db0d;box-shadow:0 4px 20px #3498db33}.table-info{display:flex;flex-direction:column;gap:.5rem}.table-name{align-items:center;color:#2c3e50;color:var(--text-primary,#2c3e50);display:flex;flex-wrap:wrap;font-size:1.1rem;font-weight:600;gap:.75rem}.table-name svg{color:#3498db;color:var(--primary-color,#3498db);flex-shrink:0;font-size:1.2rem}.table-title{font-size:1.1rem}.table-dataset{background:#3498db1a;border-radius:4px;font-size:.85rem;font-weight:400;padding:.25rem .5rem}.table-dataset,.table-description{color:#7f8c8d;color:var(--text-secondary,#7f8c8d)}.table-description{font-size:.9rem;line-height:1.4;margin:.25rem 0}.table-meta{color:#7f8c8d;color:var(--text-secondary,#7f8c8d);display:flex;flex-wrap:wrap;font-size:.85rem;gap:1.5rem;margin-top:.5rem}.table-meta span{align-items:center;background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-radius:4px;display:flex;padding:.25rem .5rem}.table-dates{color:#7f8c8d;color:var(--text-secondary,#7f8c8d);font-size:.8rem;margin-top:.5rem}.table-select{align-items:center;display:flex;flex-shrink:0;height:32px;justify-content:center;margin-left:1rem;width:32px}.checkbox{border:1px solid #e1e5e9;border:1px solid var(--border-color,#e1e5e9);border-radius:30px;height:20px;transition:all .2s ease;width:20px}.checkbox-label input[type=checkbox]{-webkit-appearance:none;appearance:none;background:#fff;border:1px solid #e1e5e9;border:1px solid var(--border-color,#e1e5e9);border-radius:4px;height:20px;position:relative;width:20px}.checkbox-label input[type=checkbox]:checked:after{color:#fff;content:"✓";font-size:14px;font-weight:700;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.checkbox-label input[type=checkbox]:checked{background:#158aeb;border-color:#158aeb;border-radius:50px}.form-group input,.form-group textarea,.form-select{font-size:16px;padding:.875rem}.table-item:hover .checkbox{border-color:#3498db;border-color:var(--primary-color,#3498db)}.success-icon{font-size:1.4rem}.no-tables{align-items:center;color:#7f8c8d;color:var(--text-secondary,#7f8c8d);display:flex;flex-direction:column;gap:1.5rem;padding:4rem 2rem;text-align:center}.no-tables svg{color:#f39c12;font-size:3rem}.no-tables p{color:#2c3e50;color:var(--text-primary,#2c3e50);font-size:1.1rem;font-weight:600;margin:0}.no-tables small{font-size:.9rem;line-height:1.6;max-width:400px}.section{align-items:flex-start;display:grid;grid-template-columns:1fr 1fr;margin:auto;max-width:686px;padding:44px 0 52px;width:100%}.section h3{color:#2c3e50;color:var(--text-primary,#2c3e50);font-size:28px;font-style:normal;font-weight:550;letter-spacing:-.56px;line-height:32px}.loading-state{align-items:center;color:#666;color:var(--text-secondary,#666);display:flex;flex-direction:column;gap:1rem;justify-content:center;padding:3rem}.loading-state svg{color:#3498db;color:var(--primary-color,#3498db);font-size:2rem}.form-select{-webkit-appearance:none;appearance:none;background:#fff;background:var(--bg-primary,#fff);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;border:2px solid #e1e5e9;border:2px solid var(--border-color,#e1e5e9);border-radius:8px;color:#2c3e50;color:var(--text-primary,#2c3e50);font-size:1rem;padding:.75rem 2.5rem .75rem .75rem;transition:all .2s ease;width:100%}.form-select:focus{border-color:#3498db;border-color:var(--primary-color,#3498db);box-shadow:0 0 0 3px #3498db1a;outline:none}.existing-connection{padding:2rem;text-align:center}.connection-info h3{align-items:center;color:#27ae60;color:var(--success-color,#27ae60);display:flex;font-size:1.25rem;gap:.5rem;justify-content:center;margin-bottom:1.5rem}.connection-details{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-radius:8px;margin-bottom:2rem;padding:1.5rem;text-align:left}.connection-details p{align-items:center;display:flex;justify-content:space-between;margin:.5rem 0}.connection-details strong{color:#2c3e50;color:var(--text-primary,#2c3e50);min-width:120px}.connection-actions{display:flex;gap:1rem;justify-content:center}.categories-list{max-height:400px;overflow-y:auto}.category-section{border:1px solid #e1e5e9;border:1px solid var(--border-color,#e1e5e9);border-radius:8px;margin-bottom:2rem;overflow:hidden}.category-title{align-items:center;background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-bottom:1px solid #e1e5e9;border-bottom:1px solid var(--border-color,#e1e5e9);color:#2c3e50;color:var(--text-primary,#2c3e50);display:flex;font-size:1.1rem;font-weight:600;gap:.5rem;margin:0;padding:1rem}.category-section .tables-list{background:#fff;margin:0;padding:0}.category-section .table-item{border:none;border-bottom:1px solid #e1e5e9;border-bottom:1px solid var(--border-color,#e1e5e9);border-radius:0}.category-section .table-item:last-child{border-bottom:none}.task-wizard{display:flex;flex-direction:column;gap:94px;max-height:90vh}.step-header,.step1-header{margin-bottom:2rem;width:100%}.step-title-row{display:flex;flex-direction:column;gap:1rem;margin-bottom:1rem}.step-indicator-inline{color:#0b102099;font-size:13px;font-style:normal;font-weight:650;letter-spacing:.13px;line-height:16px;text-transform:uppercase}.step-title-row h3{color:#0b1020;flex:1 1;font-size:1.5rem;font-weight:600;margin:0}.step-content>.step-header p,.step-content>.step1-header p{color:#7f8c8d;color:var(--text-secondary,#7f8c8d);font-size:1rem;margin:.5rem 0 0}.step1-form{gap:1.5rem;width:100%}.form-group,.step1-form{display:flex;flex-direction:column}.form-input,.form-select{background:#0b10200f;border:none;border-radius:8px;color:#0b1020;font-size:14px;font-style:normal;font-weight:500;line-height:20px;padding:8px 10px;transition:border-color .2s ease}.form-input:focus,.form-select:focus{background:#0b10200f;outline:none}.form-select:disabled{background:#0b10200f;color:#7f8c8d;color:var(--text-secondary,#7f8c8d)}.input-hint,.table-info-hint{background:#e3f2fd;background:var(--bg-info,#e3f2fd);border-radius:4px;color:#7f8c8d;color:var(--text-secondary,#7f8c8d);font-size:.9rem;margin-top:.5rem;padding:.5rem}.analysis-type-buttons{display:flex;gap:.75rem;margin-top:.5rem}.analysis-type-btn{background:#0b10200f;border:none;border-radius:8px;color:#0b1020;cursor:pointer;font-size:14px;font-style:normal;font-weight:650;line-height:20px;padding:8px 14px;transition:all .2s ease}.analysis-type-btn.selected,.analysis-type-btn:hover{background:#0b1020;color:#fff}.form-textarea{border:2px solid #e1e5e9;border:2px solid var(--border-color,#e1e5e9);border-radius:8px;font-family:inherit;font-size:1rem;min-height:100px;padding:.75rem;resize:vertical;transition:border-color .2s ease}.form-textarea:focus{border-color:#3498db;border-color:var(--primary-color,#3498db);outline:none}.tasks-table-container{padding:20px;width:100%}.tasks-table{background:#76aae51a;border-collapse:collapse;border-radius:16px;width:100%}.tasks-table th{color:#0b102099;font-size:13px;font-style:normal;font-weight:650;letter-spacing:.13px;line-height:16px;padding:16px 20px;text-align:left;text-transform:uppercase}.tasks-table th:nth-child(4){text-align:center}.tasks-table td{padding:16px;vertical-align:middle}.tasks-table td:nth-child(4){text-align:center}.task-name{color:#2c3e50;font-weight:600}.task-prompt{color:#6c757d;max-width:200px}.task-schedule{color:#495057;font-size:.9rem}.task-dataset{color:#6c757d;font-size:.9rem}.status-badge{font-style:normal;font-weight:450;line-height:24px}.status-badge.status-active{color:#24b83c}.status-badge.status-paused{color:#ffc200}.status-badge.status-completed{color:#24b83c}.status-badge.status-pending{color:#721c24}.task-actions{text-align:right;width:60px}.dropdown-container{display:inline-block;position:relative}.dropdown-trigger{background:none;border:none;border-radius:4px;color:#6c757d;cursor:pointer;padding:8px;transition:all .2s ease}.dropdown-trigger:hover{background:#e9ecef;color:#495057}.reports-empty-state{flex-direction:column;padding:60px 40px;text-align:center}.reports-empty-state,.reports-icon{align-items:center;display:flex;justify-content:center}.reports-icon{background:#f8f9fa;border-radius:16px;height:64px;margin-bottom:24px;width:64px}.reports-icon .fa-file-lines{color:#6c757d;font-size:24px}.reports-empty-state h3{color:#2c3e50;font-size:20px;font-weight:600;margin:0 0 24px}.create-report-btn{background:#000;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:12px 24px;transition:background-color .2s ease;width:-webkit-fit-content;width:fit-content}.create-report-btn:hover{background:#333}.no-chat-message{color:#6c757d;font-size:14px;font-style:italic;margin:0}.reports-header{align-items:center;border-bottom:1px solid #e1e5e9;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.reports-header h3{color:#2c3e50;font-size:18px;font-weight:600;margin:0}.reports-table-container{height:600px;overflow-x:auto;overflow-y:scroll;padding:20px}.reports-table{background:#76aae51a;border-radius:16px;padding:4px;width:100%}.reports-table th{color:#6c757d;font-size:.75rem;font-weight:600;letter-spacing:.5px;padding:12px 16px;text-align:left;text-transform:uppercase}.reports-table th:last-child{text-align:center}.reports-table td{padding:16px;vertical-align:middle}.report-row{width:100%}.report-filename{font-weight:500}.file-icon{color:#76aae5}.report-date,.report-size{color:#6c757d;font-size:.9rem}.report-actions{text-align:center}.error-state,.loading-state{padding:40px 20px;text-align:center}.error-message{color:#dc3545;margin:0}@media (max-width:768px){.reports-table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}.reports-table{font-size:.9rem;min-width:500px}.reports-table td,.reports-table th{padding:12px 8px}.report-filename{min-width:150px}.report-date,.report-size{font-size:.8rem;min-width:80px}.report-actions{min-width:50px}.reports-table .dropdown-menu{background:#fff;border:1px solid #e1e5e9;border-radius:8px;box-shadow:0 4px 12px #00000026;min-width:140px;position:absolute;right:0;top:100%;z-index:9999}.reports-table .dropdown-item{align-items:center;background:none;border:none;cursor:pointer;display:flex;font-size:.9rem;gap:8px;padding:12px 16px;text-align:left;transition:background-color .2s ease;width:100%}.reports-table .dropdown-item svg{flex-shrink:0;height:14px;width:14px}.reports-table .dropdown-item:hover{background:#f8f9fa}.reports-table .dropdown-item:first-child{border-radius:8px 8px 0 0}.reports-table .dropdown-item:last-child{border-radius:0 0 8px 8px}.reports-table .dropdown-trigger{align-items:center;display:flex;justify-content:center;min-height:44px;min-width:44px;padding:12px}}.create-report-form{margin:0 auto;max-width:500px;padding:20px}.create-report-form .form-group{margin-bottom:20px}.create-report-form .form-label{color:#2c3e50;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.create-report-form .form-input,.create-report-form .form-select,.create-report-form .form-textarea{background:#fff;border:1px solid #e1e5e9;border-radius:8px;color:#2c3e50;font-size:14px;padding:12px 16px;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.create-report-form .form-input:focus,.create-report-form .form-select:focus,.create-report-form .form-textarea:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff1a;outline:none}.create-report-form .form-textarea{min-height:100px;resize:vertical}.create-report-form .form-actions{border-top:1px solid #e1e5e9;display:flex;gap:12px;justify-content:flex-end;margin-top:30px;padding-top:20px}.create-report-form .btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:12px 24px;transition:all .2s ease}.create-report-form .btn-secondary{background:#f8f9fa;border:1px solid #e1e5e9;color:#6c757d}.create-report-form .btn-secondary:hover{background:#e9ecef;color:#495057}.create-report-form .btn-primary{background:#000;color:#fff}.create-report-form .btn-primary:hover{background:#333}.report-config-form{margin:0 auto;max-width:600px;padding:20px}.config-header{margin-bottom:30px;text-align:left}.config-header h3{color:#2c3e50;font-size:18px;font-weight:600;margin:0 0 12px}.config-header p{color:#6c757d;font-size:14px;line-height:1.5;margin:0}.form-section-label{color:#6c757d;display:block;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.form-helper-text{color:#6c757d;font-size:13px;line-height:1.4;margin-bottom:12px}.custom-prompt{background:#f8f9fa;border:1px solid #e1e5e9;min-height:80px}.checkbox-container{align-items:flex-start;cursor:pointer;display:flex;gap:12px;margin-bottom:16px;position:relative}.checkbox-container input[type=checkbox]{accent-color:#007bff;height:18px;margin:0;width:18px}.checkbox-label{color:#2c3e50;font-size:14px;font-weight:500}.report-config-form .form-actions{border-top:1px solid #e1e5e9;display:flex;gap:12px;justify-content:space-between;margin-top:40px;padding-top:20px}.cancel-btn{background:#f8f9fa!important;border:1px solid #e1e5e9!important;color:#6c757d!important}.cancel-btn:hover{background:#e9ecef!important;color:#495057!important}.generate-btn{background:#2c3e50!important;color:#fff!important;min-width:180px}.generate-btn:hover{background:#1a252f!important}.confirm-body{padding:20px}@media (max-width:768px){.tasks-table-container{overflow-x:auto}.tasks-table{min-width:600px}.task-prompt{max-width:150px}.tasks-table td,.tasks-table th{padding:8px 12px}}.step1-form .form-group{margin-bottom:0}.advice-text{color:#0b102099;font-size:14px;font-style:normal;font-weight:500;line-height:20px}.step2-form,.step3-form{display:flex;flex-direction:column;width:100%}.step3-form{background:#76aae51a;border-radius:16px;padding:16px 20px}.step3-form h4{color:#0b102099;font-size:13px;font-style:normal;font-weight:650;letter-spacing:.13px;line-height:16px;margin-bottom:12px;text-transform:uppercase}.modal-body-container{padding:20px}.step-indicator{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-bottom:1px solid #e1e5e9;border-bottom:1px solid var(--border-color,#e1e5e9);gap:1rem;justify-content:center;padding:1.5rem 2rem 1rem}.step,.step-indicator{align-items:center;display:flex}.step{border-radius:8px;flex-direction:column;gap:.5rem;padding:.5rem;position:relative;transition:all .3s ease}.step.active{background:#3498db;background:var(--primary-color,#3498db);color:#fff}.step.completed{background:#27ae60;background:var(--success-color,#27ae60);color:#fff;cursor:pointer}.step-number{align-items:center;background:#fff3;border:2px solid;border-radius:50%;display:flex;font-weight:700;height:32px;justify-content:center;width:32px}.step.active .step-number,.step.completed .step-number{background:#ffffff4d;border-color:#fff}.step-label{font-size:.85rem;font-weight:500;text-align:center}.step-content{display:flex;flex:1 1;gap:51px;grid-template-columns:1fr 1fr;justify-content:space-between;margin:auto;max-width:686px;overflow-y:auto;padding-bottom:12px;width:100%}.step-content h3{font-size:28px;font-style:normal;font-weight:550;letter-spacing:-.56px;line-height:32px}.step-content>p{color:#7f8c8d;color:var(--text-secondary,#7f8c8d);margin-bottom:2rem}.datasets-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));margin-top:1rem}.dataset-card{align-items:center;background:#fff;border:2px solid #e1e5e9;border:2px solid var(--border-color,#e1e5e9);border-radius:12px;cursor:pointer;display:flex;padding:1.5rem;transition:all .3s ease}.dataset-card:hover{border-color:#3498db;border-color:var(--primary-color,#3498db);box-shadow:0 4px 12px #3498db1a;transform:translateY(-2px)}.dataset-icon{align-items:center;background:#3498db;background:var(--primary-color,#3498db);border-radius:8px;color:#fff;display:flex;font-size:1.25rem;height:48px;justify-content:center;margin-right:1rem;width:48px}.dataset-info{flex:1 1}.dataset-info h4{color:#2c3e50;color:var(--text-primary,#2c3e50);font-size:1.1rem;margin:0 0 .25rem}.dataset-info p{color:#7f8c8d;color:var(--text-secondary,#7f8c8d);font-size:.9rem;margin:0}.dataset-arrow{color:#bdc3c7;color:var(--text-light,#bdc3c7);margin-left:1rem}.tables-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-top:1rem}.table-card{align-items:center;background:#fff;border:2px solid #e1e5e9;border:2px solid var(--border-color,#e1e5e9);border-radius:12px;cursor:pointer;display:flex;padding:1.5rem;transition:all .3s ease}.table-card:hover{border-color:#27ae60;border-color:var(--success-color,#27ae60);box-shadow:0 4px 12px #27ae601a;transform:translateY(-2px)}.table-icon{align-items:center;background:#27ae60;background:var(--success-color,#27ae60);border-radius:8px;color:#fff;display:flex;font-size:1.25rem;height:48px;justify-content:center;margin-right:1rem;width:48px}.table-info{flex:1 1}.table-info h4{color:#2c3e50;color:var(--text-primary,#2c3e50);font-size:1.1rem;margin:0 0 .5rem}.table-info p{color:#7f8c8d;color:var(--text-secondary,#7f8c8d);font-size:.9rem;line-height:1.4;margin:0 0 .5rem}.table-stats{color:#95a5a6;color:var(--text-light,#95a5a6);display:flex;font-size:.8rem;gap:1rem}.table-arrow{color:#bdc3c7;color:var(--text-light,#bdc3c7);margin-left:1rem}.schedule-options{grid-gap:1rem;display:grid;gap:1rem}.schedule-option{align-items:center;background:#0b10200f;border-radius:30px;color:#0b1020;cursor:pointer;display:flex;font-size:14px;font-style:normal;font-weight:650;line-height:20px;padding:8px 14px;transition:all .3s ease}.schedule-option.selected,.schedule-option:hover{background:#0b1020;color:#fff}.schedule-info{flex:1 1}.schedule-info p{color:#7f8c8d;color:var(--text-secondary,#7f8c8d);font-size:.9rem;margin:0}.schedule-check{color:#27ae60;color:var(--success-color,#27ae60);font-size:1.2rem;height:24px;width:24px}.summary-item{align-items:flex-start;border-bottom:1px solid #e1e5e9;border-bottom:1px solid var(--border-color,#e1e5e9);display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:1rem}.summary-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.summary-item strong{color:#2c3e50;color:var(--text-primary,#2c3e50);font-weight:600;min-width:120px}.summary-item span{color:#7f8c8d;color:var(--text-secondary,#7f8c8d);flex:1 1;margin-left:1rem;text-align:right}.prompt-preview{font-style:italic;line-height:1.4;max-height:60px;overflow-y:auto}.task-info{align-items:flex-start;background:#3498db1a;border:1px solid #3498db33;border-radius:8px;margin-top:1.5rem;padding:1rem}.task-info p{color:#2c3e50;color:var(--text-primary,#2c3e50);font-size:.9rem;line-height:1.4;margin:0}.step-actions{border-top:1px solid #e1e5e9;border-top:1px solid var(--border-color,#e1e5e9);justify-content:flex-end;padding:12px 20px}.step-actions,.step-actions-right{align-items:center;display:flex;gap:1rem}.no-datasets{color:#7f8c8d;color:var(--text-secondary,#7f8c8d);padding:3rem 2rem;text-align:center}.no-datasets svg{color:#f39c12;color:var(--warning-color,#f39c12);font-size:3rem;margin-bottom:1rem}.tasks-management .modal-body{padding:1.5rem}.tasks-grid{margin-top:1rem}.task-card,.tasks-grid{display:flex;flex-direction:column;gap:1rem}.task-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1.25rem;transition:all .2s ease}.task-card:hover{border-color:#3498db;box-shadow:0 2px 8px #00000014}.task-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.task-title{align-items:center;color:#2c3e50;display:flex;flex:1 1;font-size:1rem;font-weight:600;gap:.5rem;min-width:0}.task-title span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-badge{border-radius:16px;flex-shrink:0;font-size:.75rem;font-weight:500;gap:.25rem;padding:.25rem .75rem;white-space:nowrap}.task-content{grid-gap:1.5rem;align-items:start;display:grid;gap:1.5rem;grid-template-columns:1fr 1fr}.task-info{display:flex;flex-direction:column;gap:.75rem}.task-info-item{align-items:center;display:flex;font-size:.85rem;gap:.5rem;line-height:1.3}.task-info-item svg{color:#64748b;flex-shrink:0;width:14px}.task-info-item strong{color:#475569;min-width:80px}.task-prompt{padding:1rem}.task-prompt strong{color:#334155;display:block;font-size:.85rem;margin-bottom:.5rem}.task-prompt p{word-wrap:break-word;color:#64748b;font-size:.85rem;line-height:1.4;margin:0;max-height:80px;overflow-y:auto}.task-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:auto;padding-top:1rem}.btn-sm{align-items:center;border-radius:6px;display:inline-flex;font-size:.8rem;gap:.25rem;justify-content:center;min-width:80px;padding:.5rem 1rem;transition:all .2s ease}.btn-warning{background:#f59e0b;border:1px solid #f59e0b;color:#fff}.btn-warning:hover:not(:disabled){background:#d97706;border-color:#d97706}.btn-success{background:#10b981;border:1px solid #10b981;color:#fff}.btn-success:hover:not(:disabled){background:#059669;border-color:#059669}.btn-outline{background:#0b10200f;color:#0b1020;width:-webkit-fit-content;width:fit-content}.btn-outline:hover:not(:disabled){background:#0b1020;color:#fff}.btn-danger{background:#e74c3c;border:1px solid #e74c3c;color:#fff}.btn-danger:hover:not(:disabled){background:#c0392b;border-color:#c0392b}.btn:disabled{background:#e5e7eb!important;border-color:#e5e7eb!important;color:#9ca3af!important;cursor:not-allowed}.no-tasks{color:#6b7280;padding:3rem 2rem;text-align:center}.no-tasks svg{color:#d1d5db;font-size:3rem;margin-bottom:1rem}.no-tasks h3{color:#374151;font-size:1.25rem;margin:0 0 .5rem}.no-tasks p{color:#6b7280;line-height:1.5;margin:0 auto;max-width:400px}.schedule-type-selection{margin-bottom:16px}.schedule-options{align-items:center;display:flex;gap:8px}.time-selection{margin-bottom:2rem}.days-selection h4,.schedule-type-selection>h4,.time-selection h4{color:#0b102099;font-size:13px;font-style:normal;font-weight:650;letter-spacing:.13px;line-height:16px;margin-bottom:8px;text-transform:uppercase}.time-input{background:#0b10200f;border:none;border-radius:8px;color:#0b1020;font-size:1rem;font-size:14px;font-style:normal;font-weight:500;line-height:20px;padding:.75rem;width:100%}.time-input:focus{border-color:#3498db;border-color:var(--primary-color,#3498db);box-shadow:0 0 0 3px #3498db1a;outline:none}.dates-selection,.days-selection{margin-bottom:2rem}.days-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(7,1fr);max-width:350px}.day-option{align-items:center;background:#0b10200f;border-radius:30px;color:#0b1020;cursor:pointer;display:flex;font-size:14px;font-style:normal;font-weight:650;line-height:20px;padding:8px 14px;transition:all .3s ease}.day-option.selected,.day-option:hover{background:#0b1020;color:#fff}.day-check{font-size:.7rem;position:absolute;right:4px;top:4px}.dates-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(7,1fr);max-width:350px}.date-option{align-items:center;background:#0b10200f;border-radius:30px;color:#0b1020;cursor:pointer;display:flex;font-size:14px;font-style:normal;font-weight:650;justify-content:center;line-height:20px;padding:8px 14px;text-align:center;transition:all .3s ease}.date-option.selected,.date-option:hover{background:#0b1020;color:#fff}.dates-selection h4{color:#0b102099;font-size:13px;font-style:normal;font-weight:650;letter-spacing:.13px;line-height:16px;margin-bottom:8px;text-transform:uppercase}.date-check{font-size:.6rem;position:absolute;right:2px;top:2px}.schedule-preview{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-left:4px solid #3498db;border-left:4px solid var(--primary-color,#3498db);border-radius:6px;margin-top:1.5rem;padding:1rem}.schedule-preview p{color:#7f8c8d;color:var(--text-secondary,#7f8c8d);font-style:italic;margin:0}@media (max-width:768px){.task-content{gap:1rem;grid-template-columns:1fr}.task-actions{flex-wrap:wrap;gap:.5rem}.btn-sm{flex:1 1;min-width:90px}.step-content{flex-direction:column;gap:0}}.report-configure .section{margin-bottom:2rem}.analysis-options,.detail-options{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.analysis-option,.detail-option{background:#fff;border:2px solid #e1e5e9;border:2px solid var(--border-color,#e1e5e9);border-radius:12px;cursor:pointer;padding:1.5rem;transition:all .3s ease}.analysis-option:hover,.detail-option:hover{border-color:#3498db;border-color:var(--primary-color,#3498db);box-shadow:0 4px 12px #3498db1a}.analysis-option.selected,.detail-option.selected{background:#3498db0d;border-color:#3498db;border-color:var(--primary-color,#3498db)}.analysis-option-header,.detail-option-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.analysis-check,.detail-check{color:#3498db;color:var(--primary-color,#3498db);font-size:1.2rem}.analysis-option p,.detail-option p{color:#7f8c8d;color:var(--text-secondary,#7f8c8d);font-size:.9rem;line-height:1.4;margin:0}.checkbox-group{margin-top:1rem}.checkbox-label{align-items:flex-start;border-radius:8px;cursor:pointer;display:flex;gap:8px;transition:background-color .2s ease}.label-text_block p{color:#0b1020;font-size:14px;font-style:normal;font-weight:500;line-height:20px}.checkbox-description,.label-text_block span{color:#0b102099;font-size:14px;font-style:normal;font-weight:500;line-height:20px}.checkbox-description{margin-top:12px}.checkbox-label:hover{background:#3498db0d}.custom-prompt-textarea{font-size:14px!important;font-style:normal;font-weight:500;line-height:20px}.checkbox-label input[type=checkbox]{border-radius:30px;height:18px;margin:0;width:18px}.report-progress{padding:2rem 1rem;text-align:center}.progress-content{margin:0 auto;max-width:500px}.progress-icon{color:#3498db;color:var(--primary-color,#3498db);font-size:3rem;margin-bottom:1.5rem}.progress-content h3{color:#2c3e50;color:var(--text-primary,#2c3e50);font-size:1.5rem;margin:0 0 .5rem}.progress-message{color:#7f8c8d;color:var(--text-secondary,#7f8c8d);font-size:1.1rem;margin-bottom:2rem}.progress-bar{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-radius:4px;height:8px;margin-bottom:.5rem;overflow:hidden;width:100%}.progress-fill{background:linear-gradient(90deg,#3498db,#2980b9);background:linear-gradient(90deg,var(--primary-color,#3498db),#2980b9);border-radius:4px;height:100%;transition:width .5s ease}.progress-text{color:#2c3e50;color:var(--text-primary,#2c3e50);font-weight:600;margin-bottom:2rem}.progress-details{display:flex;flex-direction:column;gap:1rem;text-align:left}.progress-step{align-items:center;border-radius:8px;display:flex;gap:1rem;padding:.75rem;transition:all .3s ease}.progress-step.completed{background:#27ae601a;color:#27ae60;color:var(--success-color,#27ae60)}.progress-step.pending{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);color:#7f8c8d;color:var(--text-secondary,#7f8c8d)}.progress-step svg{flex-shrink:0;height:16px;width:16px}.report-complete{padding:2rem 1rem;text-align:center}.success-content{margin:0 auto;max-width:500px}.success-icon{color:#27ae60;color:var(--success-color,#27ae60);font-size:4rem;margin-bottom:1.5rem}.success-content h3{color:#2c3e50;color:var(--text-primary,#2c3e50);font-size:1.75rem;margin:0 0 1rem}.success-content p{color:#7f8c8d;color:var(--text-secondary,#7f8c8d);font-size:1.1rem;line-height:1.6;margin-bottom:2rem}.report-info{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-radius:12px;margin-bottom:2rem;padding:1.5rem}.report-stats{display:flex;flex-direction:column;gap:1rem}.stat-item{align-items:center;color:#7f8c8d;color:var(--text-secondary,#7f8c8d);display:flex;font-size:.95rem;gap:.75rem}.stat-item svg{color:#3498db;color:var(--primary-color,#3498db);flex-shrink:0;width:16px}.stat-item strong{color:#2c3e50;color:var(--text-primary,#2c3e50)}.report-error{padding:2rem 1rem;text-align:center}.error-content{margin:0 auto;max-width:500px}.error-icon{color:#e74c3c;color:var(--danger-color,#e74c3c);font-size:4rem;margin-bottom:1.5rem}.error-content h3{color:#2c3e50;color:var(--text-primary,#2c3e50);font-size:1.5rem;margin:0 0 1rem}.error-message{background:#e74c3c1a;border:1px solid #e74c3c4d;color:#e74c3c;color:var(--danger-color,#e74c3c);font-size:.95rem;line-height:1.5;margin-bottom:2rem;padding:1rem}@media (max-width:768px){.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;display:flex;justify-content:center;padding:1rem}.modal,.modal-content{border-radius:16px;box-shadow:0 20px 60px #0006;margin:0 auto;max-height:calc(100vh - 2rem);max-width:calc(100vw - 2rem);min-width:320px;overflow:hidden;position:relative;transform:none;width:calc(100vw - 2rem)}.modal-large{max-height:calc(100vh - 1.5rem);max-width:calc(100vw - 1.5rem);min-width:340px;width:calc(100vw - 1.5rem)}.modal-confirm{max-width:calc(100vw - 2rem);min-width:300px;width:calc(100vw - 2rem)}.modal-header{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-bottom:1px solid #e1e5e9;border-bottom:1px solid var(--border-color,#e1e5e9);padding:1rem 1.5rem;position:-webkit-sticky;position:sticky;top:0;z-index:10}.modal-header h2{font-size:1.1rem;margin:0}.modal-icon{font-size:1.2rem}.modal-close-btn{-webkit-tap-highlight-color:transparent;align-items:center;background:#0000000d;border:none;border-radius:50%;color:#7f8c8d;color:var(--text-secondary,#7f8c8d);display:flex;font-size:1.2rem;height:40px;justify-content:center;padding:0;touch-action:manipulation;width:40px}.modal-close-btn:hover{background:#0000001a;color:#2c3e50;color:var(--text-primary,#2c3e50)}.modal-body{-webkit-overflow-scrolling:touch;max-height:calc(100vh - 8rem);overflow-y:auto;overscroll-behavior:contain;padding:1rem 1.5rem}.progress-details,.report-stats{gap:.75rem}.stat-item{background:#ffffff80;border-radius:6px;font-size:.9rem;padding:.5rem}.table-item{align-items:flex-start;border-radius:8px;flex-direction:column;gap:.75rem;padding:1rem}.table-select{align-self:flex-end;margin-left:0;margin-top:.5rem}.table-name{font-size:.95rem;line-height:1.3}.table-meta{flex-direction:column;gap:.5rem;width:100%}.table-meta span{font-size:.8rem;padding:.25rem .5rem}.modal-actions{gap:.75rem}.btn{-webkit-tap-highlight-color:transparent;border:none;border-radius:12px;cursor:pointer;font-size:1rem;font-weight:600;justify-content:center;min-height:52px;overflow:hidden;padding:1rem 1.5rem;position:relative;touch-action:manipulation;transition:all .2s ease;width:-webkit-fit-content;width:fit-content}.btn:active{transform:scale(.96)}.btn:disabled{cursor:not-allowed;opacity:.5;transform:none!important}.btn-secondary{background:#f8f9fa;border:2px solid #e9ecef;box-shadow:0 2px 8px #0000000d;color:#2c3e50}.btn-secondary:hover:not(:disabled){background:#e9ecef;border-color:#dee2e6}.btn-danger{background:linear-gradient(135deg,#e74c3c,#c0392b);box-shadow:0 4px 12px #e74c3c4d;color:#fff}.btn-danger:hover:not(:disabled){box-shadow:0 6px 16px #e74c3c66;transform:translateY(-1px)}.btn-success{background:linear-gradient(135deg,#27ae60,#229954);box-shadow:0 4px 12px #27ae604d;color:#fff}.btn-success:hover:not(:disabled){box-shadow:0 6px 16px #27ae6066;transform:translateY(-1px)}.form-group{margin-bottom:1.5rem}.form-group label{font-size:1rem;margin-bottom:.5rem}.form-group input,.form-group textarea,.form-select{-webkit-appearance:none;appearance:none;border:2px solid #e1e5e9;border:2px solid var(--border-color,#e1e5e9);border-radius:8px;font-size:16px;padding:.875rem}.form-group textarea{min-height:120px;resize:vertical}.form-hint{font-size:.9rem;line-height:1.4;margin-top:.5rem}.custom-prompt-textarea{font-family:inherit;min-height:120px;resize:vertical}.form-help-text{color:#7f8c8d;color:var(--text-secondary,#7f8c8d);font-size:.85rem;line-height:1.4;margin-top:.5rem}.form-section-label{color:#2c3e50;color:var(--text-primary,#2c3e50);font-size:1rem;font-weight:600;margin-bottom:.5rem}.analysis-options,.detail-options{gap:.75rem}.analysis-option,.detail-option{-webkit-tap-highlight-color:transparent;border:2px solid #e1e5e9;border:2px solid var(--border-color,#e1e5e9);border-radius:8px;padding:1rem;touch-action:manipulation}.analysis-option:active,.detail-option:active{transform:scale(.98)}.analysis-option-header,.detail-option-header{margin-bottom:.5rem}.analysis-option p,.detail-option p{font-size:.9rem;line-height:1.4}.checkbox-label{-webkit-tap-highlight-color:transparent;border-radius:8px;font-size:1rem;padding:.875rem;touch-action:manipulation}.progress-content{padding:1rem}.progress-icon{font-size:2.5rem;margin-bottom:1rem}.progress-content h3{font-size:1.3rem;margin-bottom:.5rem}.progress-message{font-size:1rem;margin-bottom:1.5rem}.progress-bar{border-radius:3px;height:6px;margin-bottom:.5rem}.progress-text{font-size:1rem;margin-bottom:1.5rem}.progress-step{border-radius:6px;font-size:.9rem;padding:.75rem}.progress-step svg{height:18px;width:18px}.error-content,.success-content{padding:1rem;text-align:center}.error-icon,.success-icon{font-size:3rem;margin-bottom:1rem}.error-content h3,.success-content h3{font-size:1.4rem;margin-bottom:.75rem}.error-content p,.success-content p{font-size:1rem;line-height:1.5;margin-bottom:1.5rem}.modal-confirm{margin:0;max-width:100%}.confirm-message{font-size:1rem;line-height:1.4;margin-bottom:1rem}.confirm-warning{color:#7f8c8d;color:var(--text-secondary,#7f8c8d);font-size:.9rem;line-height:1.4;margin-bottom:0}.modal-footer{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-top:1px solid #e1e5e9;border-top:1px solid var(--border-color,#e1e5e9);display:flex;flex-direction:column;gap:.75rem;padding:1rem 1.5rem}.report-configure .section{gap:30px;grid-template-columns:1fr}}@media (max-width:480px){.modal-overlay{padding:.5rem}.modal,.modal-content{border-radius:12px;max-height:calc(100vh - 1rem);max-width:calc(100vw - 1rem);min-width:280px;width:calc(100vw - 1rem)}.modal-large{max-height:calc(100vh - .5rem);max-width:calc(100vw - .5rem);min-width:300px;width:calc(100vw - .5rem)}.modal-confirm{max-width:calc(100vw - 1rem);min-width:280px;width:calc(100vw - 1rem)}.modal-header{padding:.875rem 1rem}.modal-header h2{font-size:1rem}.modal-icon{font-size:1.1rem}.modal-close-btn{font-size:1.1rem;height:36px;width:36px}.modal-body{max-height:calc(100vh - 7rem);padding:.875rem 1rem}.form-group{margin-bottom:1.25rem}.form-group label{font-size:.95rem}.form-group input,.form-group textarea,.form-select{font-size:16px;padding:.75rem}.form-group textarea{min-height:100px}.form-hint{font-size:.85rem}.analysis-option,.detail-option{padding:.875rem}.analysis-option p,.detail-option p{font-size:.85rem}.checkbox-label{font-size:.95rem;padding:.75rem}.checkbox-label input[type=checkbox]{height:18px;width:18px}.checkbox-label input[type=checkbox]:checked:after{font-size:12px}.progress-icon{font-size:2rem}.progress-content h3{font-size:1.2rem}.progress-message{font-size:.95rem}.progress-step{font-size:.85rem;padding:.625rem}.progress-step svg{height:16px;width:16px}.error-icon,.success-icon{font-size:2.5rem}.error-content h3,.success-content h3{font-size:1.2rem}.error-content p,.success-content p{font-size:.95rem}.stat-item{font-size:.85rem;padding:.375rem}.table-item{gap:.625rem;padding:.875rem}.table-name{font-size:.9rem}.table-meta span{font-size:.75rem;padding:.2rem .4rem}.modal-actions{gap:.625rem;margin-top:1.25rem;padding-top:1.25rem}.btn{border-radius:10px;font-size:1rem;font-weight:600;min-height:48px;padding:.875rem 1.25rem}.modal-footer{gap:.625rem;padding:.875rem 1rem}.confirm-message{font-size:.95rem}.confirm-warning{font-size:.85rem}}@media (orientation:landscape) and (max-height:600px){.modal{max-height:calc(100vh - .5rem)}.modal-body,.modal-header{padding:.75rem 1rem}.modal-body{max-height:calc(100vh - 6rem);overflow-y:scroll}.progress-icon{font-size:1.8rem;margin-bottom:.75rem}.progress-content h3{font-size:1.1rem;margin-bottom:.375rem}.progress-message{font-size:.9rem;margin-bottom:1rem}.progress-step{font-size:.8rem;padding:.5rem}.form-group{margin-bottom:1rem}.form-group textarea{min-height:80px}.analysis-option,.detail-option{padding:.75rem}.error-icon,.success-icon{font-size:2rem;margin-bottom:.75rem}.btn{min-height:40px;padding:.625rem 1rem}}.reports-list-modal{max-width:800px;width:90%}.reports-info{border-bottom:1px solid var(--border-color);margin-bottom:20px;padding-bottom:15px}.reports-info h3{color:var(--text-color);font-size:1.3em;font-weight:600;margin:0 0 8px}.chat-info{align-items:center;color:var(--text-secondary);display:flex;font-size:.9em;gap:8px;margin:0}.info-icon{color:var(--primary-color)}.loading-container{align-items:center;color:var(--text-secondary);display:flex;gap:12px;justify-content:center;padding:40px}.loading-icon{color:var(--primary-color);font-size:1.2em}.error-container{align-items:center;color:var(--error-color);display:flex;flex-direction:column;gap:15px;padding:40px;text-align:center}.error-icon{color:var(--error-color);font-size:2em}.no-reports{color:var(--text-secondary);padding:60px 20px;text-align:center}.no-reports-icon{color:var(--text-muted);font-size:3em;margin-bottom:20px}.no-reports h3{color:var(--text-color);font-size:1.4em;font-weight:600;margin:0 0 10px}.no-reports p{line-height:1.5;margin:0 auto;max-width:400px}.reports-container{max-height:400px;overflow-y:auto}.reports-header{border-bottom:1px solid var(--border-color);margin-bottom:15px;padding-bottom:10px}.reports-header h4{color:var(--text-color);font-size:1.1em;font-weight:600;margin:0}.reports-list{display:flex;flex-direction:column;gap:12px}.report-item{background:var(--background-secondary);border:1px solid var(--border-color);border-radius:8px;transition:all .2s ease}.report-item:hover{border-color:var(--primary-color);box-shadow:0 2px 8px #0000001a}.report-info{gap:16px;justify-content:space-between;padding:16px}.report-info,.report-main-info{align-items:center;display:flex}.report-main-info{flex:1 1;gap:12px}.report-icon{color:var(--primary-color);font-size:1.8em;min-width:32px}.report-details{flex:1 1}.report-name{color:var(--text-color);font-size:1.1em;font-weight:600;margin:0 0 6px}.report-meta{display:flex;flex-wrap:wrap;gap:20px}.report-date,.report-size{color:var(--text-secondary);font-size:.85em}.report-actions .btn{align-items:center;display:flex;font-size:.9em;gap:6px;min-width:auto;padding:8px 16px}@media (max-width:768px){.reports-list-modal{margin:10px;max-width:none;width:95vw}.report-info{align-items:stretch;flex-direction:column;gap:12px}.report-main-info{align-items:flex-start}.report-meta{flex-direction:column;gap:8px}.report-actions{align-self:stretch}.report-actions .btn{flex:1 1;justify-content:center}}.report-processing{background-color:#f8f9fa}.status-processing{color:#3498db;font-weight:500}.status-failed{color:#e74c3c;font-weight:500}.status-pending{color:#95a5a6;font-weight:500}.text-error{color:#e74c3c;font-size:.85rem}.btn-refresh{background:#0000;border:none;border-radius:4px;color:#3498db;cursor:pointer;padding:6px 12px;transition:all .2s ease}.btn-refresh:hover{background:#3498db1a;color:#2980b9}.dropdown-item svg{margin-right:8px}.modal-news{max-height:85vh;max-width:550px;width:90%}.modal-news .modal-actions{margin-bottom:40px}.modal-news .modal-icon{color:#0b1020}.modal-news .modal-body{max-height:calc(85vh - 140px);overflow-y:auto;padding:0;scrollbar-color:#cbd5e0 #0000;scrollbar-width:thin}.modal-news .modal-body::-webkit-scrollbar{width:8px}.modal-news .modal-body::-webkit-scrollbar-track{background:#0000}.modal-news .modal-body::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#667eea66,#764ba299);border-radius:10px;-webkit-transition:all .3s ease;transition:all .3s ease}.modal-news .modal-body::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#667eea99,#764ba2cc)}.news-content{padding:20px}.news-header{margin-bottom:24px;text-align:center}.news-badge{align-items:center;color:#000;display:inline-flex;font-size:16px;font-weight:600;gap:8px;margin-bottom:16px;padding:8px 16px}.news-header h3{color:#2c3e50;font-size:28px;font-weight:600;line-height:1.3;margin:0}.news-body{display:flex;flex-direction:column;gap:24px}.news-description{color:#5a6c7d;font-size:16px;line-height:1.6;margin:0;text-align:center}.news-features{background:linear-gradient(135deg,#667eea0d,#764ba20d);border:1px solid #667eea33;border-radius:12px;margin-bottom:20px;padding:20px}.news-features.news-latest{background:linear-gradient(135deg,#27ae6014,#34d39914);border:2px solid #27ae604d;box-shadow:0 2px 8px #27ae601a}.news-features.news-latest h4{color:#27ae60}.news-features.news-previous{background:linear-gradient(135deg,#667eea08,#764ba208);border:1px solid #667eea26;opacity:.9}.news-features.news-previous h4{color:#718096}.news-features h4{color:#2c3e50;font-size:16px;font-weight:600;margin:0 0 16px}.news-features ul{display:flex;flex-direction:column;gap:12px;list-style:none;margin:0;padding:0}.news-features li{align-items:flex-start;color:#4a5568;display:flex;font-size:14px;gap:12px;line-height:1.5}.feature-icon{color:#27ae60;flex-shrink:0;font-size:16px;margin-top:2px}.news-features li strong{color:#2c3e50}.news-footer-info{display:flex;flex-direction:column;gap:16px;margin-top:8px}.news-tip{align-items:center;background:#e3f2fd;border-left:4px solid #2196f3;border-radius:8px;color:#1565c0;display:flex;font-size:14px;gap:12px;padding:12px 16px}.news-tip svg{flex-shrink:0;font-size:18px}.news-bug-report{background:linear-gradient(135deg,#ff98000d,#ffc1070d);border:1px solid #ff980033;border-radius:12px;padding:16px}.bug-report-header{align-items:center;display:flex;gap:10px;margin-bottom:12px}.bug-icon{color:#ff9800;font-size:20px}.bug-report-header h4{color:#2c3e50;font-size:16px;font-weight:600;margin:0}.news-bug-report p{color:#4a5568;font-size:14px;line-height:1.6;margin:0 0 10px}.news-bug-report p:last-child{margin-bottom:0}.email-link{border-bottom:1px solid #0000;color:#2196f3;font-weight:600;text-decoration:none;transition:all .2s ease}.email-link:hover{border-bottom-color:#1976d2;color:#1976d2}.thank-you-text{color:#666!important;font-style:italic;margin-top:8px!important}.modal-news{animation:newsSlideIn .4s cubic-bezier(.34,1.56,.64,1)}@keyframes newsSlideIn{0%{opacity:0;transform:scale(.9) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}@media (max-width:768px){.modal-news{max-height:90vh;max-width:none;width:95%}.modal-news .modal-body{max-height:calc(90vh - 120px)}.news-content{padding:16px}.news-header h3{font-size:22px}.news-header{margin-bottom:20px}.news-description{font-size:15px}.news-features{padding:16px}.news-features li,.news-tip{font-size:13px}.news-tip{padding:10px 12px}.news-bug-report{padding:14px}.bug-report-header h4{font-size:15px}.bug-icon{font-size:18px}.news-bug-report p{font-size:13px}}@media (max-width:480px){.modal-news{max-height:92vh}.modal-news .modal-body{max-height:calc(92vh - 110px)}.news-header h3{font-size:19px}.news-header{margin-bottom:16px}.news-badge{font-size:12px;padding:6px 12px}.news-features li{gap:8px}.feature-icon{font-size:14px}.news-bug-report{padding:12px}.bug-report-header{gap:8px}.bug-report-header h4{font-size:14px}.bug-icon{font-size:16px}.news-bug-report p{font-size:12px}}.chat-header{align-items:center;display:flex;gap:1rem;padding:22px 20px;position:relative;z-index:10}.sidebar-toggle{color:var(--text-secondary);font-size:24px;transition:var(--transition)}.sidebar-toggle:hover{background:var(--bg-tertiary);color:var(--text-primary)}.chat-title-container{align-items:center;display:flex;flex:1 1;gap:.5rem}.chat-title{color:var(--text-primary);font-size:1.25rem;font-weight:600;margin:0}.delete-chat-btn,.edit-title-btn,.explain-btn{align-items:center;border-radius:var(--radius-lg);color:var(--text-secondary);display:flex;font-size:1rem;height:36px;justify-content:center;transition:var(--transition);width:36px}.edit-title-btn:hover{background:var(--bg-tertiary);color:var(--primary-color)}.delete-chat-btn:hover{background:var(--bg-tertiary);color:var(--danger-color)}.explain-btn:hover{background:var(--bg-tertiary);color:var(--warning-color)}.chat-actions{align-items:center;display:flex;gap:.5rem;margin-left:auto}.header-action-btn{align-items:center;background:none;border:none;border-radius:var(--radius-lg);color:var(--text-secondary);cursor:pointer;display:flex;font-size:1rem;height:36px;justify-content:center;transition:var(--transition);width:36px}.header-action-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.export-btn:hover{color:#2eca73}.settings-btn:hover{color:var(--primary-color)}.database-btn:hover{color:var(--info-color)}.export-btn:disabled{cursor:not-allowed;opacity:.5}.export-btn:disabled:hover{background:none;color:var(--text-secondary)}@media (max-width:768px){.chat-header{display:none;padding:.75rem 1rem}.chat-title{font-size:1.1rem}.delete-chat-btn,.edit-title-btn,.explain-btn,.header-action-btn{height:32px;width:32px}}.chat-dropdown{position:relative}.chat-actions .chat-menu-btn{align-items:center;background:none;border:none;border-radius:var(--radius-lg);color:var(--text-secondary);cursor:pointer;display:flex;font-size:1rem;height:36px;justify-content:center;transition:var(--transition);width:36px}.chat-actions .chat-menu-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.chat-dropdown-menu_delete{background:#76aae51a;border:1px solid #fffc!important;border-radius:16px;margin-top:4px;min-width:160px;overflow:hidden;padding:6px 10px;position:absolute;right:0;top:100%;z-index:1000}.chat-dropdown-item_delete{align-items:center;background:none;border:none;color:#333;cursor:pointer;display:flex;font-size:16px;font-style:normal;font-weight:450;gap:8px;line-height:24px;padding:6px 10px;text-align:left;transition:background-color .15s ease;width:100%}.chat-dropdown-item_delete:hover{background:#f5f5f5}.chat-dropdown-item_delete.delete-item:hover{background:#ffffffb3;border-radius:10px;color:#0b1020}@media (max-width:768px){.chat-menu-btn{height:32px;width:32px}}.messages{-webkit-overflow-scrolling:touch;box-sizing:border-box;gap:12px;overflow-y:auto;overscroll-behavior:contain;padding:20px 20px 200px 40px;position:relative;scroll-behavior:smooth;scrollbar-color:#007aff4d #0000;scrollbar-width:thin;touch-action:pan-y}.messages::-webkit-scrollbar{background:#0000;width:10px}.messages::-webkit-scrollbar-track{background:#0000;border-radius:10px;margin:10px 0}.messages::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#007aff66,#007aff99);background-clip:padding-box;border:2px solid #0000;border-radius:10px;-webkit-transition:all .3s ease;transition:all .3s ease}.messages::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#007aff99,#007affcc);background-clip:padding-box;border:2px solid #0000;border-radius:10px;box-shadow:0 0 6px #007aff66}.messages::-webkit-scrollbar-thumb:active{background:linear-gradient(180deg,#007affcc,#007aff);box-shadow:0 0 8px #007aff99}.message{word-wrap:break-word;animation:fadeIn .3s ease-in;gap:12px;margin-bottom:0;max-width:80%;opacity:1;overflow-wrap:break-word;transition:opacity .3s ease}.message.user{margin-left:auto}.message.assistant{margin-right:auto}.message-avatar-assistant{align-items:center;display:flex;gap:10px}.message.temporary{opacity:.8}.message-avatar{background:var(--primary-color);border-radius:50%;color:#fff;margin-right:1rem;min-width:40px}.message-avatar.user-avatar{background:var(--secondary-color)}.message-sender{align-self:flex-start;color:#666;font-size:14px;margin-top:8px}.message-content{display:flex;flex-direction:column;gap:4px;max-width:100%;overflow:hidden}.message-bubble{-webkit-touch-callout:default;border-radius:12px;display:inline-block;font-size:15px;line-height:1.5;max-width:100%;padding:12px 16px;-webkit-user-select:text;user-select:text}.message.user .message-bubble{color:#fff}.message-content-text{display:flex;flex-direction:column;gap:8px}.message-avatar-block{align-items:center;display:flex;gap:10px;margin-bottom:4px}.message.user .message-avatar-block{flex-direction:row-reverse}.message-text{font-family:Roboto Flex;max-width:100%;width:-webkit-fit-content;width:fit-content}.message.user .message-text{margin-left:auto}.message-meta{gap:8px;margin-top:4px}.message.user .message-meta{justify-content:flex-end}.message-time{color:#666;font-size:12px}.message-actions{display:flex;gap:8px;opacity:0;transition:opacity .2s}.message:hover .message-actions{opacity:1}.action-button{-webkit-tap-highlight-color:transparent;background:none;border:none;color:#666;cursor:pointer;padding:2px;touch-action:manipulation;transition:color .2s}.action-button:hover{color:#007aff}.action-button.loading{color:#007aff;cursor:not-allowed}.message-images{display:flex;flex-direction:column;gap:6px;margin:0}.message-image-container{background:#f8f9fa;border-radius:8px;box-shadow:0 2px 8px #0000001a;display:inline-block;max-width:100%;overflow:hidden;position:relative}.message-image{border-radius:8px;display:block;height:auto;max-width:100%;transition:transform .2s ease}.message-image:hover{transform:scale(1.02)}.image-actions{opacity:0;position:absolute;right:8px;top:8px;transition:opacity .2s ease}.message-image-container:hover .image-actions{opacity:1}.image-action-button{-webkit-tap-highlight-color:transparent;align-items:center;background:#000000b3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:14px;height:32px;justify-content:center;touch-action:manipulation;transition:all .2s ease;width:32px}.image-action-button:hover{background:#000000e6;transform:scale(1.1)}.message-image-error{align-items:center;background:#f8d7da;border:1px solid #f5c6cb;border-radius:8px;color:#721c24;display:flex;flex-direction:column;gap:8px;justify-content:center;min-height:100px;padding:16px;text-align:center}.message-image-error p{font-weight:500;margin:0}.message-image-error small{font-size:.8em;opacity:.7}.message.highlighted{animation:highlight 3s ease-in-out}@keyframes highlight{0%,to{background-color:initial}50%{background-color:#007aff1a}}.typing-indicator{align-items:center;display:flex;gap:4px;padding:4px 8px}.typing-indicator span{animation:typing 1.4s ease-in-out infinite;background:#007aff;border-radius:50%;display:inline-block;height:8px;width:8px}.typing-indicator span:first-child{animation-delay:0s}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.message.generating{opacity:.9}.generating-status{animation:pulse 1.5s ease-in-out infinite;color:#666;font-size:13px;font-style:italic;margin-top:8px}.partial-content{word-wrap:break-word;background:#007aff0d;border-left:3px solid #007aff;border-radius:4px;color:#333;font-size:14px;margin-top:8px;padding:8px;white-space:pre-wrap}.message-text{-webkit-touch-callout:default;line-height:1.6;-webkit-user-select:text;user-select:text}.message-text h1,.message-text h2,.message-text h3,.message-text h4,.message-text h5,.message-text h6{color:#1a1a1a;font-family:Roboto Flex;font-weight:600;line-height:1.3;margin:0}.message-text h1{font-size:1.5em}.message-text h2{font-size:1.3em}.message-text h3{font-size:1.1em}.message-text h4,.message-text h5,.message-text h6{font-size:1em}.message-text p{color:#0b1020;font-size:16px;font-style:normal;font-weight:450;line-height:1.5;line-height:24px;margin:0}.message-text ol,.message-text ul{line-height:15px;margin:0;padding-left:18px}.message-text li{line-height:1.4;margin:0}.message-text ol{counter-reset:item;line-height:0!important}.message-text li{list-style:none}.message-text code{background:#afb8c133;border:1px solid #afb8c14d;border-radius:4px;color:#d73a49;padding:2px 6px}.message-text code,.message-text pre{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.9em}.message-text pre{background:#f6f8fa;border:1px solid #e1e4e8;border-radius:6px;line-height:1.4;margin:20px 0;overflow-x:auto;padding:8px}.message-text pre code{background:none;border:none;color:#24292e;padding:0}.message-text blockquote{background:#f8f9fa;border-left:4px solid #dfe2e5;border-radius:0 6px 6px 0;color:#6a737d;margin:0;padding:0 12px}.message-text blockquote p{margin:0}.message-text a{color:#0366d6;text-decoration:none}.message-text a:hover{text-decoration:underline}.message-text table{border-collapse:collapse;display:block;margin:0;overflow-x:auto;white-space:nowrap;width:100%}.message-text table td,.message-text table th{border:1px solid #dfe2e5;padding:4px 8px;text-align:left}.message-text table th{background:#f6f8fa;font-weight:600}.message-text table tr:nth-child(2n){background:#f6f8fa}.html-table-wrapper{margin:0;max-width:100%;min-width:0;position:relative;width:-webkit-fit-content;width:fit-content}.table-copy-button{-webkit-tap-highlight-color:transparent;align-items:center;background:#fffffff2;border:1px solid #e1e4e8;border-radius:6px;box-shadow:0 2px 4px #0000001a;color:#666;cursor:pointer;display:flex;font-size:14px;gap:6px;opacity:0;padding:6px 10px;position:absolute;right:8px;top:8px;touch-action:manipulation;transition:all .2s ease;z-index:10}.html-table-wrapper:hover .table-copy-button{opacity:1}.table-copy-button:hover{background:#f6f8fa;border-color:#007aff;box-shadow:0 3px 6px #007aff33;color:#007aff;transform:translateY(-1px)}.table-copy-button:active{transform:translateY(0)}.html-table-container{-webkit-overflow-scrolling:touch;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:8px;box-shadow:0 1px 4px #0000001a;display:block;margin:0;max-width:100%;min-width:0;overflow-x:auto;width:-webkit-fit-content;width:fit-content}.html-table-container table{background:#fff!important;border-collapse:collapse!important;border-radius:8px!important;color:#000!important;margin:15px 0!important;max-width:none!important;overflow:hidden!important;table-layout:auto!important;width:-webkit-max-content!important;width:max-content!important}.html-table-container th{background:linear-gradient(135deg,#2eca73,#27ae60)!important;border:none!important;font-weight:600!important;padding:6px 12px!important;text-align:left!important}.html-table-container td,.html-table-container th{-webkit-font-smoothing:antialiased!important;-moz-osx-font-smoothing:grayscale!important;color:#000!important;font-size:13px!important;text-rendering:optimizeLegibility!important;white-space:nowrap!important}.html-table-container td{border-bottom:1px solid #e8e8e8!important;border-right:1px solid #e8e8e8!important;overflow:hidden!important;padding:4px 12px!important;text-overflow:ellipsis!important}.html-table-container td:last-child{border-right:none!important}.html-table-container tr:last-child td{border-bottom:none!important}.html-table-container tr:nth-child(2n){background-color:#f8f9fa!important}.html-table-container tr:hover{background-color:#e3f2fd!important;transition:background-color .2s ease!important}.html-table-container tbody{background:#fff!important;color:#000!important}.html-table-container thead{background:linear-gradient(135deg,#2eca73,#27ae60)!important;color:#000!important}.html-table-container tbody tr,.html-table-wrapper table{background:#fff!important;color:#000!important}.html-table-wrapper tbody,.html-table-wrapper td,.html-table-wrapper th,.html-table-wrapper thead,.html-table-wrapper tr,.message.assistant .html-table-container,.message.assistant .html-table-container *,.message.assistant .html-table-wrapper,.message.assistant .html-table-wrapper *{color:#000!important}.html-table-container table *,.html-table-wrapper table *{background:inherit!important;color:inherit!important}.html-table-container table th,.html-table-wrapper table th{color:#000!important}.html-table-container table td,.html-table-wrapper table td{background:#fff!important;color:#000!important}@media (max-width:768px){.html-table-container{border-radius:6px;box-shadow:0 1px 3px #0000001a;display:block;margin:0;max-width:100%;transform:translateZ(0);width:-webkit-fit-content;width:fit-content}.html-table-container table{border-radius:6px}.html-table-container td,.html-table-container th{font-size:14px;padding:4px 10px}.table-copy-button{font-size:16px;opacity:1;padding:8px 12px}}@media (max-width:480px){.html-table-container{display:block;margin:0;max-width:100%;transform:translateZ(0);width:-webkit-fit-content;width:fit-content}.html-table-container td,.html-table-container th{font-size:13px;padding:3px 8px}}.message-text hr{border:none;margin:0}.message-text strong{font-weight:600}.message-text em{font-style:italic}.message-text del{opacity:.7;text-decoration:line-through}@media (max-width:1024px){.messages{gap:10px;padding:16px 16px 180px 24px}.message{gap:10px;max-width:85%}.message-avatar{height:36px;min-width:36px;width:36px}.message-bubble{font-size:14px;padding:10px 14px}}@media (max-width:768px){.messages{gap:8px;padding:12px 12px 160px}.message{gap:8px;margin-bottom:0;max-width:90%}.message-avatar{height:32px;margin-right:.5rem;min-width:32px;width:32px}.message-bubble{border-radius:16px;font-size:16px;line-height:1.4;padding:12px 14px}.message-content{gap:6px}.message-meta{gap:6px}.message-meta,.message-time{font-size:11px}.message-actions{margin-top:4px;opacity:1}.action-button{align-items:center;display:flex;font-size:16px;justify-content:center;min-height:44px;min-width:44px;padding:8px}.image-action-button{font-size:16px;height:44px;opacity:1;width:44px}.message-images{gap:4px;margin:0}.message-image,.message-image-container{border-radius:12px}.image-action-button:hover,.message-image:hover{transform:none}.message-bubble{-webkit-touch-callout:default;-webkit-user-select:text;user-select:text;width:100%}}@media (max-width:480px){.messages{gap:6px;padding:8px 8px 140px}.message{gap:6px;margin-bottom:0;max-width:95%}.message-avatar{height:28px;margin-right:.25rem;min-width:28px;width:28px}.message-bubble{border-radius:14px;font-size:15px;padding:10px 12px}.message-meta{gap:4px}.message-meta,.message-time{font-size:10px}.action-button{min-height:40px;min-width:40px;padding:6px}.image-action-button{font-size:14px;height:40px;width:40px}.message-avatar-block{gap:6px;margin-bottom:4px}}@media (orientation:landscape) and (max-height:600px){.messages{gap:4px;padding:6px 8px 120px}.message{gap:4px;margin-bottom:0}.message-avatar{height:24px;min-width:24px;width:24px}.message-bubble{border-radius:12px;font-size:14px;line-height:1.3;padding:8px 10px}.message-meta{font-size:9px}}@media (max-width:768px){.message-bubble{-webkit-touch-callout:default;-webkit-user-select:text;user-select:text}@supports (-webkit-touch-callout:none){.message-bubble{-webkit-touch-callout:default;-webkit-user-select:text}}}@media only screen and (-webkit-min-device-pixel-ratio:2),only screen and (min-device-pixel-ratio:2),only screen and (min-resolution:192dpi),only screen and (min-resolution:2dppx){.html-table-container td,.html-table-container th{-webkit-font-smoothing:subpixel-antialiased;font-smooth:always;text-shadow:0 0 1px #00000003}}.message-documents{display:flex;flex-direction:column;gap:8px;margin-top:16px}.message-document{align-items:center;background:#fffc;border-radius:16px;color:#0b1020;display:flex;justify-content:space-between;padding:12px}.document-info{flex:1 1;gap:12px}.document-icon,.document-info{align-items:center;display:flex}.document-icon{font-size:24px;height:32px;justify-content:center;width:32px}.document-name{color:#0b1020;font-size:14px;font-weight:500;word-break:break-word}.message-documents a:hover{text-decoration:none}.user-message-files{margin-bottom:10px}.document-actions{display:flex;gap:8px}.download-btn{background:#fffffffa;border:1px solid #445eb21c;border-radius:16px;transition:all .3s ease;width:-webkit-fit-content;width:fit-content}.download-btn:hover{text-decoration:none;transform:translateY(-1px);transition:all .3s ease}.download-btn:active{transform:translateY(0)}.thinking-text{background:linear-gradient(135deg,#4a90e21a,#50c8781a);border-left:3px solid #4a90e266;border-radius:0 6px 6px 0;font-style:italic;opacity:.6;padding-left:12px;position:relative;transition:all .3s ease}.thinking-text:before{animation:thinkingPulse 2s ease-in-out infinite;background:linear-gradient(0deg,#4a90e2cc,#50c878cc 50%,#4a90e2cc);bottom:0;content:"";left:-3px;position:absolute;top:0;width:3px}.thinking-indicator{animation:thinkingBounce 1.5s ease-in-out infinite;background:#4a90e2e6;border-radius:12px;box-shadow:0 2px 8px #4a90e24d;color:#fff;font-size:11px;font-weight:500;padding:4px 8px;position:absolute;right:8px;top:-8px}.thinking-dots{align-items:center;display:inline-flex;gap:2px}@keyframes thinkingPulse{0%,to{opacity:.6;transform:scaleY(1)}50%{opacity:1;transform:scaleY(1.1)}}@keyframes thinkingBounce{0%,to{opacity:.8;transform:translateY(0) scale(1)}50%{opacity:1;transform:translateY(-2px) scale(1.05)}}.message-text:not(.thinking-text){background:#0000;border-left:none;font-style:normal;opacity:1;padding-left:0;transition:all .4s ease}@media (prefers-color-scheme:dark){.thinking-text{background:linear-gradient(135deg,#4a90e226,#50c87826);border-left-color:#4a90e299}.thinking-indicator{background:#4a90e2cc;box-shadow:0 2px 8px #4a90e266}}.markdown-content{color:#0b1020;font-family:Roboto Flex;line-height:1.6}.markdown-h1{border-bottom:2px solid #3498db;color:#2c3e50;font-size:1.8em;font-weight:700;margin:1.2em 0 .8em;padding-bottom:.3em}.markdown-h2{border-bottom:1px solid #bdc3c7;font-size:1.5em;margin:.8em 0 .4em;padding-bottom:.2em}.markdown-h2,.markdown-h3{color:#34495e;font-weight:600}.markdown-h3{font-size:1.3em;margin:.8em 0 .5em}.markdown-h4{color:#34495e;font-size:1.1em;font-weight:600;margin:.6em 0 .4em}.markdown-p{line-height:1;margin:0}.markdown-ol,.markdown-ul{margin:0;padding-left:1em}.markdown-li{line-height:1;margin:0}.markdown-ul .markdown-li{list-style-type:disc}.markdown-ol .markdown-li,.markdown-ul .markdown-li{color:#0b1020;font-size:16px;font-style:normal;font-weight:450;line-height:20px}.markdown-ol .markdown-li{list-style-type:decimal}.markdown-strong{color:#2c3e50;font-weight:700}.markdown-em{color:#34495e;font-style:italic}.markdown-code-inline{border:1px solid #e9ecef;border-radius:3px;color:#e74c3c;padding:.2em .4em}.markdown-code-block,.markdown-code-inline{background:#f8f9fa;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.9em}.markdown-code-block{border:1px solid #e9ecef;border-radius:6px;line-height:1.4;margin:1em 0;overflow-x:auto;padding:1em}.markdown-code-block code{background:none;border:none;color:#2c3e50;padding:0}.markdown-blockquote{background:#f8f9fa;border-left:4px solid #3498db;color:#555;font-style:italic;margin:1em 0;padding:.5em 0 .5em 1em}.markdown-table{background:#fff;border-collapse:collapse;border-radius:6px;box-shadow:0 2px 4px #0000001a;font-size:.9em;margin:1em 0;overflow:hidden;width:100%}.markdown-thead{background:#3498db;color:#fff}.markdown-th{border-bottom:2px solid #2980b9;font-weight:600;padding:.8em;text-align:left}.markdown-td{border-bottom:1px solid #ecf0f1;padding:.8em}.markdown-tr:nth-child(2n) .markdown-td{background:#f8f9fa}.markdown-tr:hover .markdown-td{background:#e3f2fd}.markdown-link{border-bottom:1px solid #0000;color:#3498db;text-decoration:none;transition:all .2s ease}.markdown-link:hover{border-bottom-color:#2980b9;color:#2980b9}@media (prefers-color-scheme:dark){.markdown-h1,.markdown-h2,.markdown-h3,.markdown-h4{color:#ecf0f1}.markdown-h1{border-bottom-color:#3498db}.markdown-h2{border-bottom-color:#7f8c8d}.markdown-strong{color:#ecf0f1}.markdown-em{color:#bdc3c7}.markdown-code-inline{color:#e74c3c}.markdown-code-block,.markdown-code-inline{background:#2c3e50;border-color:#34495e}.markdown-code-block code{color:#ecf0f1}.markdown-blockquote{background:#2c3e50;border-left-color:#3498db;color:#bdc3c7}.markdown-table{background:#2c3e50}.markdown-thead{background:#34495e}.markdown-th{border-bottom-color:#2c3e50}.markdown-td{border-bottom-color:#34495e}.markdown-tr:nth-child(2n) .markdown-td{background:#34495e}.markdown-tr:hover .markdown-td{background:#3498db}}.welcome-screen{align-items:center;display:flex;flex:1 1;justify-content:center}.welcome-screen.drag-over{position:relative}.welcome-screen-drag-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#158beb24;border:2px dashed #158aeb;border-radius:16px;bottom:0;display:flex;justify-content:center;left:0;margin:20px;pointer-events:none;position:absolute;right:0;top:0;z-index:10000}.welcome-screen-drag-content{align-items:center;color:#158aeb;display:flex;flex-direction:column;font-weight:600;margin:auto;text-align:center}.welcome-screen-drag-icon{color:#158aeb;display:block;font-size:3.5rem;margin-bottom:16px}.welcome-screen-drag-content span{display:block;font-size:1.4rem;font-weight:700;margin-bottom:8px}.welcome-screen-drag-content small{display:block;font-size:1rem;font-weight:500;opacity:.85}@media (max-width:768px){.welcome-screen-drag-overlay{border-radius:12px;margin:10px}.welcome-screen-drag-icon{font-size:2.5rem;margin-bottom:12px}.welcome-screen-drag-content span{font-size:1.1rem;margin-bottom:6px}.welcome-screen-drag-content small{font-size:.9rem}}@media (max-width:480px){.welcome-screen-drag-overlay{border-radius:10px;margin:8px}.welcome-screen-drag-icon{font-size:2rem;margin-bottom:10px}.welcome-screen-drag-content span{font-size:1rem;margin-bottom:4px}.welcome-screen-drag-content small{font-size:.8rem}.welcome-input-wrapper{padding:0!important}}.welcome-content-wrapper{align-items:center;display:flex;flex-direction:column;height:calc(100vh - 80px);width:100%}.welcome-content{animation:fadeIn .5s ease-out;margin:auto;max-width:800px;text-align:center;width:100%}.welcome-icon{align-items:center;background:var(--bg-gradient);border-radius:var(--radius-full);box-shadow:var(--shadow-colored);color:var(--text-white);display:flex;font-size:2.5rem;height:80px;justify-content:center;margin:0 auto 2rem;width:80px}.welcome-icon svg{filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.welcome-content img{height:150px;margin-bottom:30px;pointer-events:none;-webkit-user-select:none;user-select:none;width:152px}.welcome-content h2{color:#0b1020;font-size:28px;font-style:normal;font-weight:550;letter-spacing:-.56px;line-height:32px;margin-top:60px}.welcome-content>p{color:var(--text-secondary);font-size:22px;line-height:1.6;margin-bottom:2.5rem}.welcome-input-container{background:#f9f9f9;margin:0 auto;max-width:800px;padding:24px 24px 18px;width:100%}.welcome-input-wrapper,.welcome-input-wrapper-inner{align-items:center;display:flex;gap:12px}.welcome-input-wrapper{background:#fafafa;border:none;border-radius:24px;box-shadow:none;min-height:64px;padding:0 20px;width:100%}.welcome-input-wrapper textarea{background-color:var(--input-bg);border-radius:12px;color:var(--text-color);flex-grow:1;font-size:18px;max-height:200px;min-height:44px;overflow-y:scroll;padding:12px;resize:none;transition:border-color .2s ease;width:100%}.welcome-input-wrapper textarea::placeholder{color:#bdbdbd;font-size:1.08rem}.welcome-send-btn{align-items:center;background:#0b1020;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:22px;height:36px;justify-content:center;overflow:hidden;position:relative;transition:all .2s ease;width:36px}.welcome-send-btn:hover:not(:disabled){transform:scale(1.05)}.welcome-send-btn:disabled{cursor:not-allowed;opacity:.6}.welcome-input-wrapper .fa-microphone{color:#222;cursor:pointer;font-size:18px;margin:0 8px;transition:color .18s}.welcome-input-wrapper .fa-microphone:hover{color:#1db954}.welcome-input-wrapper,.welcome-input-wrapper:focus-within{border:none;box-shadow:none}.char-counter{color:#bdbdbd;font-size:.95rem}.welcome-input-footer{display:flex;justify-content:end;margin-top:8px;padding:0 2px}.welcome-file-btn{align-items:center;border:none;color:#0b102099;cursor:pointer;display:flex;font-size:22px;height:22px;justify-content:center;margin-right:23px;overflow:hidden;position:relative;transition:all .2s ease;width:22px}.welcome-file-btn:hover:not(:disabled){color:#0b1020;transform:scale(1.05)}.welcome-file-btn:disabled{cursor:not-allowed;opacity:.6}.welcome-voice-btn{align-items:center;border:none;color:#0b102099;cursor:pointer;display:flex;font-size:22px;height:22px;justify-content:center;overflow:hidden;position:relative;transition:all .2s ease;width:22px}.welcome-voice-btn:hover:not(:disabled){color:#0b1020;transform:scale(1.05)}.welcome-voice-btn:disabled{cursor:not-allowed;opacity:.6}.welcome-voice-confirm-btn{align-items:center;background:linear-gradient(135deg,#22c55e,#16a34a);border:none;border-radius:8px;box-shadow:0 2px 8px #22c55e40;color:#fff;cursor:pointer;display:flex;font-size:1rem;height:36px;justify-content:center;transition:all .2s ease;width:36px}.welcome-voice-confirm-btn:hover:not(:disabled){background:linear-gradient(135deg,#16a34a,#15803d);box-shadow:0 4px 12px #22c55e59;transform:translateY(-1px)}.welcome-voice-confirm-btn:disabled{background:#a1a1aa;box-shadow:none;cursor:not-allowed;opacity:.6}.welcome-voice-cancel-btn{align-items:center;background:linear-gradient(135deg,#f1f5f9,#e2e8f0);border:2px solid #cbd5e1;border-radius:8px;box-shadow:0 2px 4px #64748b1a;color:#64748b;cursor:pointer;display:flex;font-size:1rem;height:36px;justify-content:center;transition:all .2s ease;width:36px}.welcome-voice-cancel-btn:hover:not(:disabled){background:linear-gradient(135deg,#e2e8f0,#cbd5e1);border-color:#94a3b8;box-shadow:0 4px 8px #64748b26;color:#475569;transform:translateY(-1px)}.voice-recording-indicator{gap:16px;padding:16px 20px}.wave-bars{gap:3px;height:24px}.wave-bars .bar{animation:wave 1.2s ease-in-out infinite;background:#fff}.wave-bars .bar:first-child{animation-delay:-.9s}.wave-bars .bar:nth-child(2){animation-delay:-.7s}.wave-bars .bar:nth-child(3){animation-delay:-.5s}.wave-bars .bar:nth-child(4){animation-delay:-.3s}.wave-bars .bar:nth-child(5){animation-delay:-.1s}@keyframes wave{0%,40%,to{height:8px;opacity:.5}20%{height:24px;opacity:1}}.recording-text{color:#fff;font-size:14px;font-weight:500}.recording-icon{animation:pulse 1.5s infinite;font-size:16px}.welcome-input-wrapper.recording-mode{background:#fffc;border:1px solid #158aeb;border-radius:10px;color:#158aeb}.welcome-input-wrapper.recording-mode::placeholder{color:#158aeb;font-style:italic}.file-info{gap:12px}.file-icon{font-size:16px}.file-name{color:#333;font-size:14px}.file-details .file-size{background:#22c55e1a;border-radius:4px;color:#4a5568;display:inline-block;font-size:.8rem;font-weight:500;margin-right:auto;margin-top:3px;padding:3px 6px}.remove-file-btn{margin-left:16px;transition:all .2s}@media (max-width:768px){.welcome-content{padding:1em}.welcome-content h2{font-size:1.5rem}.welcome-content>p{font-size:1rem}.welcome-input-container{padding:1rem;position:relative;z-index:999}.welcome-input-container.sidebar-open{opacity:.3;pointer-events:none;z-index:900}.welcome-input-wrapper,.welcome-input-wrapper textarea{-webkit-user-select:text!important;user-select:text!important}.welcome-input-wrapper textarea{-webkit-touch-callout:default;-webkit-text-size-adjust:none;-webkit-appearance:none;font-size:16px;pointer-events:auto;touch-action:manipulation}.selected-file{padding:10px 12px}.file-name{font-size:13px}.file-details .file-size{font-size:11px}}.selected-files{margin-bottom:16px;max-width:100%}.selected-files-header{align-items:center;color:#4a5568;display:flex;font-size:14px;font-weight:500;justify-content:space-between;margin-bottom:8px}.remove-all-files-btn{align-items:center;background:#ef4444;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:12px;gap:4px;padding:4px 8px;transition:background-color .2s}.remove-all-files-btn:hover{background:#dc2626}.selected-files-list{border-radius:8px;display:flex;gap:8px;max-height:200px;overflow-y:auto;scrollbar-color:#cbd5e0 #0000;scrollbar-width:thin}.selected-files-list::-webkit-scrollbar{width:6px}.selected-files-list::-webkit-scrollbar-track{background:#0000}.selected-files-list::-webkit-scrollbar-thumb{background:#cbd5e0;border-radius:3px}.selected-files-list::-webkit-scrollbar-thumb:hover{background:#a0aec0}:root{--surface-color:#fff;--background-secondary:#f8f9fa;--border-light:#f1f3f5;--hover-color:#f8f9fa;--text-secondary:#718096;--error-color:#dc3545}.input-area{bottom:0;box-shadow:0 -60px 40px 0 #ffffffe6;left:0;margin:auto;max-width:800px;padding:24px 24px 18px;position:relative;transition:all .3s ease;width:100%;z-index:9}.input-container{align-items:flex-end;display:flex;flex-direction:column;gap:10px;width:100%}.input-wrapper textarea{background-color:var(--input-bg);border-radius:12px;color:var(--text-color);flex-grow:1;font-size:18px;max-height:200px;min-height:44px;overflow-y:scroll;padding:12px;resize:none;transition:border-color .2s ease;width:100%}.input-wrapper textarea:focus{border-color:var(--primary-color);outline:none}.input-wrapper textarea:disabled{background-color:var(--disabled-bg);cursor:not-allowed}.input-wrapper{width:100%}.chat-input-btns{gap:8px;justify-content:flex-end;margin-left:auto}.chat-input-btns,.send-btn{align-items:center;display:flex}.send-btn{-webkit-tap-highlight-color:transparent;background:#1db954;border:none;border-radius:50%;box-shadow:0 2px 8px #1db95414;color:#fff;cursor:pointer;font-size:20px;height:44px;justify-content:center;overflow:hidden;position:relative;touch-action:manipulation;transition:background .18s,transform .18s;width:44px}.send-btn:hover:not(:disabled){background:#17a74a;transform:scale(1.07)}.send-btn:disabled{cursor:not-allowed;opacity:.5}.send-btn.loading{background-color:var(--primary-color-light)}.input-footer{align-items:center;display:flex;font-size:12px;justify-content:space-between;margin-left:auto;margin-right:auto;margin-top:8px;max-width:800px}.char-counter,.input-footer{color:#718096;color:var(--text-secondary)}.char-counter.warning{color:var(--warning-color)}.char-counter.danger{color:#dc3545;color:var(--error-color)}.powered-by{color:#718096;color:var(--text-secondary);font-size:12px}.advanced-toggle{-webkit-tap-highlight-color:transparent;align-items:center;cursor:pointer;display:flex;gap:8px;touch-action:manipulation}.advanced-toggle input{display:none}.toggle-slider{background-color:#e2e8f0;background-color:var(--border-color);border-radius:10px;height:20px;position:relative;transition:all .2s ease;width:36px}.toggle-slider:before{background-color:#fff;border-radius:50%;content:"";height:16px;left:2px;position:absolute;top:2px;transition:all .2s ease;width:16px}.advanced-toggle input:checked+.toggle-slider{background-color:var(--primary-color)}.advanced-toggle input:checked+.toggle-slider:before{transform:translateX(16px)}.advanced-toggle input:disabled+.toggle-slider{cursor:not-allowed;opacity:.5}.file-btn{-webkit-tap-highlight-color:transparent;align-items:center;background:#f5f5f5;border:1px solid #ddd;border-radius:50%;color:#666;cursor:pointer;display:flex;font-size:18px;height:44px;justify-content:center;touch-action:manipulation;transition:all .18s;width:44px}.file-btn:hover:not(:disabled){background:#16a34a;border-color:#16a34a;color:#fff;transform:scale(1.05)}.file-btn:disabled{cursor:not-allowed;opacity:.5}.selected-file{align-items:center;background:#f8f9fa;border:1px solid #e9ecef;border-radius:12px;display:flex;justify-content:space-between;margin-bottom:12px;padding:12px 16px;transition:all .2s ease}.file-info{color:#495057;font-size:14px}.file-name{font-weight:500;max-width:200px}.remove-file-btn{border-radius:50%;color:#fff;transition:all .18s}.remove-file-btn:hover:not(:disabled){transform:scale(1.1)}.remove-file-btn:disabled{cursor:not-allowed;opacity:.5}@media (max-width:768px){.input-area{-webkit-overflow-scrolling:touch;background:#fff;bottom:0;left:0;max-width:none;padding:16px;pointer-events:auto;position:fixed;right:0;touch-action:manipulation;transform:none;-webkit-user-select:text!important;user-select:text!important;width:100%;z-index:10}.input-area.sidebar-open{opacity:.3;pointer-events:none;z-index:900}.input-wrapper{background:#fff;gap:8px;pointer-events:auto;touch-action:manipulation;-webkit-user-select:text!important;user-select:text!important}.input-wrapper:focus-within{border-color:#22c55e}.message-input{-webkit-touch-callout:default;-webkit-user-modify:read-write-plaintext-only;-webkit-text-size-adjust:none;-webkit-appearance:none;background:#0000;border:none;-webkit-border-radius:14px;color:#2d3748;font-size:16px;max-height:200px;min-height:48px;padding:14px 16px;pointer-events:auto;touch-action:manipulation;-webkit-user-select:text!important;user-select:text!important}.message-input:focus{border:none;outline:none}.input-controls{gap:6px}.send-button{align-items:center;background:#0b1020;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;justify-content:center;overflow:hidden;position:relative;transition:all .2s ease}.file-button,.send-button{font-size:22px;height:22px;width:22px}.file-button{-webkit-tap-highlight-color:transparent;color:#0b102099;margin-right:3px;min-height:48px;min-width:48px;pointer-events:auto;touch-action:manipulation}.file-button:active,.send-button:active{color:#0b1020;transform:scale(.95)}.character-count{color:#718096;font-size:11px;margin-top:6px}.file-mode-hint{color:#22c55e;font-size:11px;padding:8px 12px}}@media (max-width:480px){.input-area{padding:12px}.message-input{border-radius:12px;font-size:16px;max-height:90px;min-height:44px;padding:12px 14px}.file-button,.send-button{font-size:18px;height:44px;width:44px}.character-count{font-size:10px;margin-top:4px}.file-mode-hint{font-size:10px;padding:6px 8px}}@media (orientation:landscape) and (max-height:600px){.input-area,.message-input{padding:10px 12px}.message-input{font-size:15px;max-height:60px;min-height:40px}.file-button,.send-button{font-size:16px;height:40px;width:40px}.character-count{font-size:9px;margin-top:4px}.file-mode-hint{font-size:9px;padding:4px 6px}}.input-form{display:flex;flex-direction:column;gap:8px;width:100%}.input-wrapper{align-items:center;background:#fff;background:var(--surface-color);display:flex;gap:8px;padding:8px;transition:border-color .2s ease}.input-wrapper:focus-within{border-color:#4ade80;border-color:var(--accent-color)}.message-input{background:none;border:none;color:#2d3748;color:var(--text-primary);flex:1 1;font-family:inherit;font-size:1rem;line-height:1.4;max-height:200px;min-height:24px;outline:none;overflow-y:auto;padding:4px 0;resize:none}.message-input::placeholder{color:#718096;color:var(--text-secondary)}.input-controls{align-items:center;display:flex;gap:10px}.send-button{background:#0b1020;border-radius:8px;color:#fff;height:36px;overflow:hidden;position:relative;width:36px}.file-button,.send-button{align-items:center;border:none;cursor:pointer;display:flex;font-size:22px;justify-content:center;transition:all .2s ease}.file-button{color:#0b102099;height:22px;width:22px}.file-button:hover:not(:disabled),.send-button:hover:not(:disabled){transform:translateY(-1px)}.file-button:disabled,.send-button:disabled{color:#fff;cursor:not-allowed;opacity:.6;transform:none}.character-count{color:#718096;color:var(--text-secondary);font-size:.8rem;margin-top:4px;text-align:right}.file-mode-hint{background:linear-gradient(135deg,#22c55e1a,#22c55e0d);border:2px solid #22c55e33;border-radius:10px;box-shadow:0 2px 8px #22c55e1a;color:#16a34a;font-size:.8rem;font-weight:500;margin-top:8px;overflow:hidden;padding:8px 12px;position:relative;text-align:center;transition:all .3s ease}.file-mode-hint:before{background:linear-gradient(135deg,#22c55e,#16a34a);border-radius:0 2px 2px 0;bottom:0;content:"";left:0;position:absolute;top:0;width:3px}.file-mode-hint:hover{background:linear-gradient(135deg,#22c55e26,#22c55e14);border-color:#22c55e4d;box-shadow:0 4px 12px #22c55e26;transform:translateY(-1px)}.file-mode-hint:after{content:"💡";font-size:.9rem;opacity:.7;position:absolute;right:10px;top:50%;transform:translateY(-50%)}.chat-files-section{background:linear-gradient(135deg,#f8f9fa,#fff);border:1px solid #e9ecef;border-radius:12px;box-shadow:0 2px 8px #0000000a;margin-bottom:12px;overflow:hidden;transition:all .3s ease}.chat-files-section:hover{box-shadow:0 4px 16px #00000014;transform:translateY(-1px)}.chat-files-header{align-items:center;background:linear-gradient(135deg,#22c55e,#16a34a);border-bottom:1px solid #ffffff1a;color:#fff;display:flex;font-size:.85rem;font-weight:600;justify-content:space-between;padding:10px 16px}.chat-files-header svg{color:#ffffffe6;font-size:.9rem;margin-right:6px}.toggle-files-btn{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:.7rem;height:24px;justify-content:center;transition:all .2s ease;width:24px}.toggle-files-btn:hover{background:#ffffff4d;transform:scale(1.1)}.chat-files-list{background:#fff;padding:8px 16px}.chat-file-item{align-items:center;background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:6px;overflow:hidden;padding:8px 12px;position:relative;transition:all .2s ease}.chat-file-item:last-child{margin-bottom:0}.chat-file-item:hover{background:#f1f3f4;border-color:#22c55e;transform:translateX(2px)}.chat-file-item:before{background:linear-gradient(135deg,#22c55e,#16a34a);border-radius:0 2px 2px 0;bottom:0;content:"";left:0;position:absolute;top:0;width:3px}.file-info{align-items:center;display:flex;flex:1 1;gap:8px;min-width:0}.file-icon{background:#22c55e1a;border-radius:6px;color:#158aeb;flex-shrink:0;font-size:1rem;padding:6px}.file-details{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.file-name{color:#2d3748;font-size:.8rem;font-weight:600;max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-meta{align-items:center;color:#718096;display:flex;flex-wrap:wrap;font-size:.7rem;gap:6px}.file-tools{background:#22c55e1a;border-radius:3px;color:#22c55e;font-size:.65rem;font-weight:500;padding:1px 4px}.remove-file-btn{align-items:center;border:none;color:#0b102099;cursor:pointer;display:flex;flex-shrink:0;font-size:22px;height:22px;justify-content:center;transition:all .2s ease;width:22px}.remove-file-btn:hover{color:#0b1020;transform:scale(1.1)}.remove-file-btn:active{transform:scale(.95)}.file-preview{background:#fffffffa;border:1px solid #445eb21c;border-radius:16px;margin-bottom:12px;overflow:hidden;position:relative;transition:all .3s ease}.file-preview-content{align-items:center;background:#fffc;display:flex;justify-content:space-between;padding:12px}.file-preview .file-info{align-items:start;display:flex;flex:1 1;flex-direction:column;gap:5px;min-width:0}.file-preview .file-icon{background:#76aae51a;border-radius:8px;color:#158aeb;flex-shrink:0;font-size:1.1rem;margin-right:12px;padding:7px}.file-preview .file-name{color:#1a202c;font-size:.9rem;font-weight:700;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-preview .file-size{background:#22c55e1a;border-radius:4px;color:#4a5568;font-size:.8rem;font-weight:500;margin-top:3px;padding:3px 6px}.file-preview .remove-file-btn{align-items:center;border:none;color:#0b102099;cursor:pointer;display:flex;flex-shrink:0;font-size:22px;height:22px;justify-content:center;margin-left:16px;transition:all .2s ease;width:22px}.file-preview .remove-file-btn:hover{color:#0b1020;transform:scale(1.15)}@keyframes slideInFromTop{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.chat-file-item,.chat-files-section{animation:slideInFromTop .3s ease-out}.chat-file-item{animation-delay:0s;animation-delay:calc(var(--item-index, 0)*.1s)}.file-preview{animation:slideInFromLeft .4s ease-out}@media (max-width:768px){.chat-files-section{border-radius:10px;margin-bottom:8px}.chat-files-header{font-size:.8rem;padding:8px 12px}.chat-files-list{padding:6px 12px}.chat-file-item{margin-bottom:4px;padding:6px 10px}.file-name{font-size:.75rem;max-width:180px}.file-meta{font-size:.65rem}.remove-file-btn{font-size:.65rem;height:24px;width:24px}.file-preview{border-radius:10px;margin-bottom:8px}.file-preview-content{padding:8px 12px}.file-preview .file-icon{font-size:1rem;padding:6px}.file-preview .file-name{font-size:.8rem;max-width:180px}.file-preview .remove-file-btn{font-size:.75rem;height:28px;width:28px}.file-mode-hint{font-size:.75rem;margin-top:6px;padding:6px 10px}.file-mode-hint:after{font-size:.8rem;right:8px}}@media (max-width:480px){.chat-files-header{font-size:.75rem;padding:6px 10px}.chat-files-list{padding:4px 10px}.chat-file-item{padding:5px 8px}.file-name{font-size:.7rem;max-width:120px}.file-meta{font-size:.6rem}.file-icon{font-size:.9rem;padding:4px}.file-preview-content{padding:6px 10px}.file-preview .file-icon{font-size:.9rem;padding:4px}.file-preview .file-name{font-size:.75rem;max-width:120px}.file-preview .file-size{font-size:.65rem;padding:2px 4px}.file-preview .remove-file-btn{font-size:.65rem;height:24px;width:24px}.file-mode-hint{font-size:.7rem;margin-top:5px;padding:5px 8px}.file-mode-hint:after{font-size:.75rem;right:6px}}.voice-button{align-items:center;border:none;color:#0b102099;cursor:pointer;display:flex;font-size:22px;height:22px;justify-content:center;transition:all .2s ease;width:22px}.voice-button:hover:not(:disabled){color:#0b1020;transform:translateY(-1px)}.voice-button:disabled{color:#718096;color:var(--text-secondary);cursor:not-allowed;opacity:.6}.voice-stop-button{align-items:center;background:linear-gradient(135deg,#f59e0b,#d97706);border:none;border-radius:8px;box-shadow:0 2px 8px #f59e0b33;color:#fff;cursor:pointer;display:flex;font-size:22px;height:36px;justify-content:center;transition:all .2s ease;width:36px}.voice-stop-button:hover{background:linear-gradient(135deg,#d97706,#b45309);box-shadow:0 4px 12px #f59e0b4d;transform:translateY(-1px)}.voice-confirm-button{align-items:center;background:linear-gradient(135deg,#22c55e,#16a34a);border:none;border-radius:8px;box-shadow:0 2px 8px #22c55e40;color:#fff;cursor:pointer;display:flex;font-size:1rem;height:36px;justify-content:center;transition:all .2s ease;width:36px}.voice-confirm-button:hover:not(:disabled){background:linear-gradient(135deg,#16a34a,#15803d);box-shadow:0 4px 12px #22c55e59;transform:translateY(-1px)}.voice-confirm-button:disabled{background:#a1a1aa;box-shadow:none;cursor:not-allowed;opacity:.6}.voice-cancel-button{align-items:center;background:linear-gradient(135deg,#f1f5f9,#e2e8f0);border:2px solid #cbd5e1;border-radius:8px;color:#64748b;cursor:pointer;display:flex;font-size:1rem;height:36px;justify-content:center;transition:all .2s ease;width:36px}.voice-cancel-button:hover{background:linear-gradient(135deg,#e2e8f0,#cbd5e1);border-color:#94a3b8;color:#475569;transform:translateY(-1px)}.voice-recording-indicator{animation:slideInFromTop .3s ease-out;background:#fffc;border:1px solid #158aeb;border-radius:10px;color:#0b1020;gap:12px;margin-bottom:12px;padding:12px 20px}.recording-animation,.voice-recording-indicator{align-items:center;display:flex;justify-content:center}.wave-bars{align-items:center;display:flex;gap:2px;height:20px}.wave-bars .bar{animation:waveAnimation 1.5s ease-in-out infinite;background:#158aeb;border-radius:2px;height:100%;width:3px}.wave-bars .bar:first-child{animation-delay:0s}.wave-bars .bar:nth-child(2){animation-delay:.1s}.wave-bars .bar:nth-child(3){animation-delay:.2s}.wave-bars .bar:nth-child(4){animation-delay:.3s}.wave-bars .bar:nth-child(5){animation-delay:.4s}@keyframes waveAnimation{0%,to{height:6px;opacity:.5}50%{height:20px;opacity:1}}.recording-text{align-items:center;color:#158aeb;display:flex;font-size:.9rem;font-weight:600;gap:8px}.recording-icon{animation:pulse 2s ease-in-out infinite;color:#158aeb}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.input-wrapper.recording-mode{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-color:#158aeb}.input-wrapper.recording-mode .message-input{background:#0000;color:#158aeb;font-weight:500}.input-wrapper.recording-mode .message-input::placeholder{color:#158aeb;font-style:italic}@media (max-width:768px){.voice-button,.voice-cancel-button,.voice-confirm-button{-webkit-tap-highlight-color:transparent;font-size:20px;height:48px;min-height:48px;min-width:48px;touch-action:manipulation;width:48px}.voice-button:active,.voice-cancel-button:active,.voice-confirm-button:active{transform:scale(.95)}.voice-recording-indicator{border-radius:10px;margin-bottom:8px;padding:8px 16px}.recording-text{font-size:.8rem}.wave-bars{height:16px}.wave-bars .bar{width:2px}@keyframes waveAnimation{0%,to{height:4px;opacity:.5}50%{height:16px;opacity:1}}}@media (max-width:480px){.voice-button,.voice-cancel-button,.voice-confirm-button{font-size:18px;height:44px;min-height:44px;min-width:44px;width:44px}.voice-recording-indicator{border-radius:8px;margin-bottom:6px;padding:6px 12px}.recording-text{font-size:.75rem}.wave-bars{height:14px}@keyframes waveAnimation{0%,to{height:3px;opacity:.5}50%{height:14px;opacity:1}}}@media (orientation:landscape) and (max-height:600px){.voice-recording-indicator{margin-bottom:4px;padding:4px 8px}.recording-text{font-size:.7rem}.wave-bars{height:12px}.voice-button,.voice-cancel-button,.voice-confirm-button,.voice-stop-button{font-size:16px;height:40px;min-height:40px;min-width:40px;width:40px}}.files-preview{margin-bottom:16px;max-width:100%}.files-preview .selected-files-header{align-items:center;color:#4a5568;display:flex;font-size:14px;font-weight:500;justify-content:space-between;margin-bottom:8px}.files-preview .remove-all-files-btn{align-items:center;background:#ef4444;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:12px;gap:4px;padding:4px 8px;transition:background-color .2s}.files-preview .remove-all-files-btn:hover{background:#dc2626}.files-preview .selected-files-list{border-radius:8px;max-height:200px;overflow-y:auto;scrollbar-color:#cbd5e0 #0000;scrollbar-width:thin}.files-preview .selected-files-list::-webkit-scrollbar{width:6px}.files-preview .selected-files-list::-webkit-scrollbar-track{background:#0000}.files-preview .selected-files-list::-webkit-scrollbar-thumb{background:#cbd5e0;border-radius:3px}.files-preview .selected-files-list::-webkit-scrollbar-thumb:hover{background:#a0aec0}.files-preview .file-preview{margin-bottom:6px}.files-preview .file-preview:last-child{margin-bottom:0}.main-content{background:var(--bg-chat);border-radius:12px 0 0 12px;display:flex;flex:1 1;flex-direction:column;margin-left:340px;margin-left:var(--sidebar-width,340px);overflow:hidden;position:relative;transition:margin-left .3s ease,width .3s ease;width:calc(100% - 340px);width:calc(100% - var(--sidebar-width, 340px))}.copy-notification{animation:slideInRight .3s ease-out,fadeOut .3s ease-in 1.7s;background:#2eca73;border-radius:8px;box-shadow:0 4px 12px #2eca7366;color:#fff;font-size:15px;font-weight:500;padding:12px 20px;position:fixed;right:20px;top:20px;z-index:10000}.copy-notification,.copy-notification span{align-items:center;display:flex;gap:8px}@keyframes slideInRight{0%{opacity:0;transform:translateX(400px)}to{opacity:1;transform:translateX(0)}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.messages-container{-webkit-overflow-scrolling:touch;overflow-y:auto;overscroll-behavior:contain;padding:1rem 1rem calc(1rem + 140px);position:relative;scroll-behavior:smooth;touch-action:pan-y}.messages,.messages-container{display:flex;flex:1 1;flex-direction:column}.messages{gap:1.5rem;margin:auto;max-width:800px;padding-bottom:200px;width:100%}.message{animation:slideUp .3s ease-out;display:flex;gap:1rem;max-width:100%}.message.user{flex-direction:row-reverse}.message-avatar{align-items:center;background:var(--bg-gradient);border-radius:var(--radius-full);color:var(--text-white);display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.message.user .message-avatar{background:var(--bg-gradient-light)}.message.user .message-content{align-items:flex-end;display:flex;flex-direction:column;overflow:hidden}.message-bubble{word-wrap:break-word;font-size:.95rem;line-height:1.6;overflow-wrap:break-word;padding:1rem 1.25rem;white-space:pre-wrap}.message.user .message-bubble{background-color:#76aae51a;border:none;color:#040f0b}.message-meta{align-items:center;color:var(--text-muted);display:flex;font-size:.8rem;gap:.5rem;margin-top:.5rem}.message.user .message-meta{flex-direction:row-reverse}.message-time{font-size:.75rem}.error-message{align-items:center;background-color:var(--danger-color);display:flex}.copy-success-message,.error-message{border-radius:8px;box-shadow:0 2px 8px #0003;left:50%;padding:12px 20px;position:fixed;top:20px;transform:translateX(-50%);z-index:1000}.copy-success-message{animation:fadeInOut 2s ease-in-out;background-color:#4caf50;background-color:var(--success-color,#4caf50);color:#fff}@keyframes fadeInOut{0%{opacity:0;transform:translate(-50%,-20px)}15%{opacity:1;transform:translate(-50%)}85%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-20px)}}@media (max-width:1024px){.main-content{margin-left:280px;width:calc(100% - 280px)}}@media (max-width:768px){.main-content{display:flex;flex-direction:column;height:calc(100vh - 60px);height:calc(100vh - var(--mobile-header-height, 60px));margin-left:0;margin-top:60px;margin-top:var(--mobile-header-height,60px);overflow:hidden;width:100%}.messages-container{padding:.75rem .75rem calc(.75rem + 140px);padding-bottom:calc(.75rem + var(--mobile-input-height, 80px) + 60px)}.messages{-webkit-overflow-scrolling:touch!important;box-sizing:border-box!important;display:flex!important;flex:1 1;flex-direction:column!important;gap:12px!important;height:calc(100vh - 160px)!important;height:calc(100vh - var(--mobile-header-height, 60px) - 100px)!important;overflow-x:hidden;overflow-y:auto!important;overscroll-behavior:contain;padding:12px 12px 160px!important;position:relative!important;touch-action:pan-y!important;transform:translateZ(0);-webkit-transform:translateZ(0);will-change:scroll-position}.message{gap:.75rem}.message-content{max-width:100%}.message-avatar{font-size:.9rem;height:36px;width:36px}.message-bubble{border-radius:18px;font-size:1rem;line-height:1.5;padding:.875rem 1rem}.message-meta{font-size:.75rem;margin-top:.375rem}.message-time{font-size:.7rem}.copy-success-message,.error-message{font-size:.9rem;left:1rem;max-width:calc(100vw - 2rem);padding:10px 16px;right:1rem;top:70px;top:calc(var(--mobile-header-height, 60px) + 10px);transform:none}}@media (max-width:480px){.main-content{display:flex;flex-direction:column;height:calc(100vh - 56px);height:calc(100vh - var(--mobile-header-height, 56px));margin-top:56px;margin-top:var(--mobile-header-height,56px);overflow:hidden}.messages-container{padding:.5rem .5rem calc(.5rem + 120px);padding-bottom:calc(.5rem + var(--mobile-input-height, 70px) + 50px)}.messages{gap:8px!important;gap:1rem;height:calc(100vh - 146px)!important;height:calc(100vh - var(--mobile-header-height, 56px) - 90px)!important;padding:8px 8px 140px!important}.message{gap:.5rem}.message-content{max-width:100%}.message-avatar{font-size:.8rem;height:32px;width:32px}.message-bubble{border-radius:16px;font-size:1rem;line-height:1.4;padding:.75rem .875rem}.message-meta{font-size:.7rem;margin-top:.25rem}.message-time{font-size:.65rem}.copy-success-message,.error-message{font-size:.85rem;left:.75rem;padding:8px 12px;right:.75rem;top:64px;top:calc(var(--mobile-header-height, 56px) + 8px)}}@media (orientation:landscape) and (max-height:600px){.main-content{display:flex;flex-direction:column;height:calc(100vh - 50px);height:calc(100vh - var(--mobile-header-height, 50px));margin-top:50px;margin-top:var(--mobile-header-height,50px);overflow:hidden}.messages-container{padding:.5rem .5rem calc(.5rem + 100px);padding-bottom:calc(.5rem + var(--mobile-input-height, 60px) + 40px)}.messages{gap:6px!important;gap:.75rem;height:calc(100vh - 130px)!important;height:calc(100vh - var(--mobile-header-height, 50px) - 80px)!important;padding:6px 6px 120px!important}.message-bubble{font-size:.9rem;padding:.625rem .75rem}.message-avatar{font-size:.75rem;height:28px;width:28px}}@media (max-width:768px){.message-bubble{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:text;user-select:text}.messages-container{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}@supports (-webkit-touch-callout:none){.messages-container{-webkit-overflow-scrolling:touch}}}.main-content.drag-over{position:relative}.main-content-drag-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#158beb1e;border:2px dashed #158aeb;border-radius:16px;bottom:0;display:flex;justify-content:center;left:0;margin:20px;pointer-events:none;position:absolute;right:0;top:0;z-index:10000}.main-content-drag-content{align-items:center;color:#158aeb;display:flex;flex-direction:column;font-weight:600;margin:auto;text-align:center}.main-content-drag-icon{color:#158aeb;display:block;filter:drop-shadow(0 4px 12px #158beb64);font-size:3.5rem;margin-bottom:16px}.main-content-drag-content span{display:block;font-size:1.4rem;font-weight:700;margin-bottom:8px}.main-content-drag-content small{display:block;font-size:1rem;font-weight:500;opacity:.85}@media (max-width:768px){.main-content-drag-overlay{border-radius:12px;margin:10px}.main-content-drag-icon{font-size:2.5rem;margin-bottom:12px}.main-content-drag-content span{font-size:1.1rem;margin-bottom:6px}.main-content-drag-content small{font-size:.9rem}}@media (max-width:480px){.main-content-drag-overlay{border-radius:10px;margin:8px}.main-content-drag-icon{font-size:2rem;margin-bottom:10px}.main-content-drag-content span{font-size:1rem;margin-bottom:4px}.main-content-drag-content small{font-size:.8rem}}.loading-overlay{align-items:center;animation:fadeIn .3s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fffc;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.loading-spinner{align-items:center;display:flex;flex-direction:column;gap:1rem}.loading-spinner svg{color:var(--primary-color);filter:drop-shadow(0 2px 4px rgba(102,126,234,.2));font-size:3rem}.loading-spinner span{color:var(--text-secondary);font-size:1rem;font-weight:500}.auth-form-container{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background-image:url(/static/media/bg-auth.1735f0a4e22831a74714.png);background-position:50%;background-repeat:no-repeat;background-size:cover;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.auth-form{animation:slideIn .3s ease-out;background:#fff;border:none;border-radius:20px;box-shadow:0 8px 32px #2eca731a,0 2px 8px #0000000f;margin:20px;max-width:400px;width:100%}.auth-form-header{align-items:center;display:flex;flex-direction:column;gap:18px;justify-content:space-between;margin-bottom:20px;padding:28px 32px 0}.auth-form-header h2{color:#222;font-family:Roboto Flex;font-size:20px;font-style:normal;font-weight:550;letter-spacing:-.2px;line-height:24px;margin:0}.auth-close-btn{background:none;border:none;border-radius:8px;color:#bdbdbd;cursor:pointer;font-size:22px;padding:8px;transition:background .18s,color .18s}.auth-close-btn:hover{background:#f2f2f2;color:#222}.auth-toggle-container{padding:24px 32px 0}.auth-toggle{background:#f5f5f5;border-radius:30px;display:flex;margin-bottom:24px;padding:4px;position:relative}.auth-toggle-btn{background:none;border:none;border-radius:26px;color:#888;cursor:pointer;flex:1 1;font-size:14px;font-weight:600;padding:12px 0;position:relative;transition:all .3s ease;z-index:2}.auth-toggle-btn.active{background:#fff;box-shadow:0 2px 8px #0000001a;color:#222}.auth-toggle-btn:hover:not(.active){color:#555}.auth-form-content{padding:0 32px 32px}.auth-error-message{background:#ffeded;border:1px solid #ffd2d2;border-radius:10px;color:#d32f2f;font-size:15px;margin-bottom:20px;padding:12px 16px}.auth-form-group{margin-bottom:16px}.auth-form-group label{color:#888;display:block;font-size:15px;font-weight:500;margin-bottom:8px;text-transform:uppercase}.auth-form-group input{background:#0b10200f;border:none;border-radius:10px;box-sizing:border-box;color:#222;font-size:16px;padding:13px 16px;transition:box-shadow .18s;width:100%}.auth-form-group input:focus{box-shadow:0 0 0 2px #158aeb;outline:none}.auth-form-group input.error{box-shadow:0 0 0 2px #f44}.auth-form-group input::placeholder{color:#bdbdbd}.auth-form-group input:disabled{cursor:not-allowed;opacity:.6}.auth-input-with-icon{position:relative}.auth-input-icon{color:#888;font-size:14px;position:absolute;right:12px;top:50%;transform:translateY(-50%)}.auth-field-error{color:#f66;display:block;font-size:12px;margin-top:4px}.auth-form-help{color:#bdbdbd;display:block;font-size:13px;margin-top:6px}.auth-submit-btn{align-items:center;background:#0b1020;border:none;border-radius:10px;box-shadow:0 2px 8px #2eca7314;color:#fff;cursor:pointer;display:flex;font-size:17px;font-weight:600;gap:8px;justify-content:center;margin-top:20px;padding:15px 0;transition:background .18s,box-shadow .18s,transform .18s;width:100%}.auth-submit-btn:hover:not(:disabled){background:#0b1020;box-shadow:0 4px 16px #2eca7321;transform:translateY(-1px) scale(1.01)}.auth-submit-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}.auth-form-footer{border-top:1px solid #333;padding:20px 24px 24px;text-align:center}.auth-form-footer p{color:#888;font-size:14px;margin:0}.auth-switch{border-top:1px solid #f2f2f2;margin-top:20px;padding-top:16px;text-align:center}.auth-switch-btn{background:none;border:none;color:#2eca73;cursor:pointer;font-size:14px;font-weight:500;text-decoration:underline;transition:color .18s;transition:color .2s ease}.auth-switch-btn:hover:not(:disabled){color:#5aa3ff}.auth-switch-btn:disabled{cursor:not-allowed;opacity:.6}@media (max-width:480px){.auth-form{margin:10px;max-width:98vw}.auth-form-header{padding:20px 20px 0}.auth-form-header h2{font-size:22px}.auth-toggle-container{padding:20px 20px 0}.auth-form-content{padding:0 20px 18px}.auth-form-footer{padding:16px 20px 20px}}.settings-overlay{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.settings-modal{animation:slideIn .3s ease-out;background:#fff;border:none;border-radius:20px;box-shadow:0 8px 32px #2eca731a,0 2px 8px #0000000f;display:flex;flex-direction:column;margin:20px;max-height:90vh;max-width:420px;width:100%}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.settings-header{align-items:center;display:flex;justify-content:space-between;padding:28px 32px 0}.settings-header h2{color:#222;font-size:26px;font-weight:700;margin:0}.settings-close-btn{background:none;border:none;border-radius:8px;color:#bdbdbd;cursor:pointer;font-size:22px;padding:8px;transition:background .18s,color .18s}.settings-close-btn:hover{background:#f2f2f2;color:#222}.settings-tabs{border-bottom:1px solid #f2f2f2;display:flex;margin-bottom:24px}.settings-tab{align-items:center;background:none;border:none;border-bottom:2px solid #0000;color:#888;cursor:pointer;display:flex;flex:1 1;font-size:14px;font-weight:500;gap:8px;justify-content:center;padding:16px 20px;transition:all .2s ease}.settings-tab:hover{background:#f8f8f8;color:#222}.settings-tab.active{background:#f8f8f8;border-bottom-color:#158aeb;color:#158aeb}.settings-content{flex:1 1;overflow-y:auto;padding:32px}.settings-success-message{background:#22c55e;border:1px solid #16a34a;border-radius:8px}.settings-error-message,.settings-success-message{color:#fff;font-size:14px;margin-bottom:20px;padding:12px 16px}.settings-error-message{background:#f44;border:1px solid #f66;border-radius:8px}.settings-tab-content{animation:fadeIn .2s ease-out}.avatar-section{align-items:center;display:flex;flex-direction:column;gap:16px;margin-bottom:24px}.avatar-preview{align-items:center;background-color:#f5f5f5;border-radius:50%;box-shadow:0 2px 8px #2eca730f;display:flex;height:110px;justify-content:center;overflow:hidden;width:110px}.avatar-image{height:100%;object-fit:cover;width:100%}.avatar-placeholder{align-items:center;color:#bdbdbd;display:flex;font-size:48px;height:100%;justify-content:center;width:100%}.avatar-controls{display:flex;gap:12px}.upload-avatar-btn{align-items:center;background-color:#deeaf5;border:none;border-radius:8px;color:#158aeb;cursor:pointer;display:flex;font-size:15px;font-weight:500;gap:8px;padding:8px 18px;transition:background .18s,color .18s}.upload-avatar-btn:hover{background-color:#158beb6b;color:#158aeb}.error-message{color:#fff;font-size:14px;margin-top:4px}.settings-form-group{margin-bottom:20px}.settings-form-group label{color:#888;display:block;font-size:15px;font-weight:500;margin-bottom:8px}.settings-form-group input{background:#f5f5f5;border:none;border-radius:10px;box-sizing:border-box;color:#222;font-size:16px;padding:13px 16px;transition:box-shadow .18s;width:100%}.settings-form-group input:focus{box-shadow:0 0 0 2px #158aeb;outline:none}.settings-form-group input::placeholder{color:#bdbdbd}.settings-form-group input.error{border-color:#f44;box-shadow:0 0 0 3px #ff44441a}.settings-form-group input:disabled{cursor:not-allowed;opacity:.6}.settings-field-error{color:#f66;display:block;font-size:12px;margin-top:4px}.settings-submit-btn{background:#0b1020;border:none;border-radius:10px;box-shadow:0 2px 8px #2eca7314;color:#fff;cursor:pointer;font-size:17px;font-weight:600;margin-top:18px;padding:15px 0;transition:background .18s,box-shadow .18s,transform .18s;width:100%}.settings-submit-btn:hover:not(:disabled){background:#0b1020c2}.settings-submit-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}.subscription-info{text-align:center}.subscription-status{background:#2a2a2a;border:1px solid #333;border-radius:12px;margin-bottom:32px;padding:24px}.subscription-status h3{color:#fff;font-size:18px;font-weight:600;margin:0 0 16px}.status-badge{align-items:center;border-radius:8px;display:inline-flex;font-size:16px;font-weight:600;gap:8px;margin-bottom:12px;padding:12px 20px}.status-badge.pro{background:linear-gradient(135deg,gold,#ffb300);color:#000}.status-badge.free{background:#333;color:#888}.expiry-date{color:#888;font-size:14px;margin:0}.subscription-features{background:#2a2a2a;border:1px solid #333;border-radius:12px;margin-bottom:32px;padding:20px;text-align:left}.subscription-features h4{color:#fff;font-size:16px;font-weight:600;margin:0 0 16px}.subscription-features ul{list-style:none;margin:0;padding:0}.subscription-features li{color:#ccc;font-size:14px;padding:8px 0 8px 24px;position:relative}.subscription-features li:before{color:#22c55e;content:"✓";font-weight:700;left:0;position:absolute}.pro-activate-btn{background:linear-gradient(135deg,gold,#ffb300);border:none;border-radius:8px;color:#000;cursor:pointer;font-size:16px;font-weight:600;padding:16px 32px;transition:all .2s ease}.pro-activate-btn:hover:not(:disabled){background:linear-gradient(135deg,#ffe135,#ffc300);box-shadow:0 4px 12px #ffd7004d;transform:translateY(-1px)}.pro-activate-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}@media (max-width:640px){.settings-modal{margin:10px;max-height:95vh;max-width:98vw}.settings-header{padding:20px 20px 0}.settings-header h2{font-size:20px}.settings-content{padding:18px}.settings-tab{font-size:13px;padding:12px 16px}.avatar-preview{height:100px;width:100px}.avatar-placeholder{font-size:32px}.upload-avatar-btn{font-size:12px;padding:8px 16px}}.language-settings{padding:20px 0}.language-settings h3{color:#222;font-size:20px;font-weight:600;margin:0 0 8px}.language-description{color:#666;font-size:14px;line-height:1.5;margin:0 0 24px}.language-options{display:flex;flex-direction:column;gap:12px}.language-option{align-items:center;border:2px solid #f5f5f5;border-radius:12px;cursor:pointer;display:flex;padding:16px 20px;position:relative;transition:all .2s ease}.language-option:hover{background:#fafafa;border-color:#e0e0e0}.language-option.active{background:#f8fff8;border-color:#158aeb}.language-flag{font-size:24px;line-height:1;margin-right:16px}.language-info{display:flex;flex:1 1;flex-direction:column}.language-name{color:#222;font-size:16px;font-weight:500;margin-bottom:2px}.language-native{color:#666;font-size:14px}.language-check{color:#2eca73;font-size:18px;margin-left:12px}@media (max-width:640px){.language-option{padding:14px 16px}.language-flag{font-size:20px;margin-right:12px}.language-name{font-size:15px}.language-native{font-size:13px}}.settings-logout-section{border-top:1px solid #f0f0f0;margin-top:20px;padding:20px 0 0}.settings-logout-btn{align-items:center;background:#ff4757;border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:10px;justify-content:center;padding:14px 20px;transition:all .2s ease;width:100%}.settings-logout-btn:hover{background:#ff3742;box-shadow:0 4px 12px #ff47574d;transform:translateY(-1px)}.settings-logout-btn:active{box-shadow:0 2px 6px #ff47574d;transform:translateY(0)}@media (max-width:640px){.settings-logout-section{margin-top:16px;padding:16px 0 0}.settings-logout-btn{font-size:14px;padding:12px 16px}}:root{--primary-color:#667eea;--primary-hover:#5a6fd8;--primary-light:#e0e7ff;--secondary-color:#764ba2;--accent-color:#4ade80;--accent-secondary:#22c55e;--accent-dark:#16a34a;--success-color:#10b981;--danger-color:#f56565;--warning-color:#f6ad55;--bg-primary:#fff;--bg-secondary:#f8fafc;--bg-tertiary:#f1f5f9;--bg-gradient:linear-gradient(135deg,#667eea,#764ba2);--bg-gradient-light:linear-gradient(135deg,#4ade80,#22c55e);--bg-gradient-soft:linear-gradient(135deg,#e0e7ff,#f0f4ff);--bg-chat:#fafbfc;--bg-dark:#1a202c;--bg-darker:#171923;--text-primary:#2d3748;--text-secondary:#4a5568;--text-muted:#718096;--text-light:#a0aec0;--text-white:#fff;--border-color:#e2e8f0;--border-hover:#cbd5e1;--border-focus:#667eea;--shadow-sm:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;--shadow-xl:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;--shadow-colored:0 4px 15px #667eea40;--shadow-soft:0 2px 15px #00000014;--radius-sm:0.375rem;--radius-md:0.5rem;--radius-lg:0.75rem;--radius-xl:1rem;--radius-2xl:1.5rem;--radius-full:9999px;--transition:all 0.3s cubic-bezier(0.4,0,0.2,1);--transition-fast:all 0.2s cubic-bezier(0.4,0,0.2,1);--transition-slow:all 0.5s cubic-bezier(0.4,0,0.2,1);--transition-bounce:all 0.3s cubic-bezier(0.68,-0.55,0.265,1.55);--sidebar-width:340px;--mobile-header-height:60px;--mobile-input-height:80px}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;background-image:url(/static/media/bg-main.f90253e2f237a79be9bf.jpg);background-position:50%;background-repeat:no-repeat;background-size:cover;color:#2d3748;color:var(--text-primary);font-family:Roboto Flex,Roboto,sans-serif;font-weight:400;line-height:1.6;overflow:hidden;-webkit-user-select:none;user-select:none}.app{display:flex;height:100vh;position:relative;width:100vw}.mobile-header{align-items:center;background:#fff;background:var(--bg-primary);display:none;height:60px;height:var(--mobile-header-height);justify-content:space-between;left:0;padding:0 1rem;position:fixed;right:0;top:0;z-index:99}.mobile-menu-btn{align-items:center;background:#f8fafc;background:var(--bg-secondary);border-radius:8px;color:#2d3748;color:var(--text-primary);display:flex;font-size:1.2rem;height:40px;justify-content:center;transform:scale(1);transition:all .2s cubic-bezier(.4,0,.2,1);transition:var(--transition-fast);transition:all .2s ease;width:40px}.mobile-menu-btn_new-chat{background:#0b1020;color:#fff}.mobile-reports-btn{background:#76aae5;color:#fff}.mobile-bi-btn{background:#28a745;color:#fff}.mobile-menu-btn:hover{transform:scale(1.1);transition:all .2s ease}.mobile-title{color:#2d3748;color:var(--text-primary);font-size:1.1rem;font-weight:600;left:50%;max-width:calc(100% - 200px);overflow:hidden;pointer-events:none;position:absolute;text-align:center;text-overflow:ellipsis;transform:translateX(-50%);white-space:nowrap}.mobile-header-actions{align-items:center;display:flex;gap:8px}.mobile-chat-dropdown{position:relative}.mobile-chat-menu-btn{background:#f8fafc;background:var(--bg-secondary);color:#4a5568;color:var(--text-secondary)}.mobile-chat-menu-btn:hover{background:#f1f5f9;background:var(--bg-tertiary);color:#2d3748;color:var(--text-primary)}.mobile-dropdown-menu{background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 4px 20px #00000026;margin-top:4px;min-width:140px;overflow:hidden;position:absolute;right:0;top:100%;z-index:1001}.mobile-dropdown-item{align-items:center;background:none;border:none;color:#333;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:12px 16px;text-align:left;transition:background-color .15s ease;width:100%}.mobile-dropdown-item:hover{background:#f5f5f5}.mobile-dropdown-item.delete-item{color:#ff4757}.mobile-dropdown-item.delete-item:hover{background:#ffebee;color:#d32f2f}.mobile-overlay{background:#00000080;bottom:0;display:none;left:0;opacity:0;pointer-events:none;position:fixed;right:0;top:0;transition:opacity .3s ease;z-index:999}.mobile-overlay.visible{opacity:1}button{background:none;border:none;color:inherit;cursor:pointer;font-family:inherit;margin:0;padding:0}button:disabled{cursor:not-allowed;opacity:.6}textarea{background:none;border:none;color:inherit;font-family:inherit;outline:none;resize:none}textarea::placeholder{color:#718096;color:var(--text-muted)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInFromLeft{0%{transform:translateX(-100%)}to{transform:translateX(0)}}@keyframes slideOutToLeft{0%{transform:translateX(0)}to{transform:translateX(-100%)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:1024px){:root{--sidebar-width:280px}}@media (max-width:768px){.app{flex-direction:column}.mobile-header{display:flex}.mobile-overlay{display:block}body{-webkit-overflow-scrolling:touch;overflow:auto!important;overscroll-behavior:contain;-webkit-user-select:text;user-select:text}}@media (max-width:480px){:root{--sidebar-width:100vw;--mobile-header-height:56px;--mobile-input-height:70px}.mobile-title{font-size:1rem;max-width:calc(100% - 160px)}.mobile-menu-btn{font-size:1.1rem;height:36px;width:36px}body{-webkit-overflow-scrolling:touch;overflow:auto!important;overscroll-behavior:contain}}@media (orientation:landscape) and (max-height:600px){:root{--mobile-header-height:50px;--mobile-input-height:60px}body{-webkit-overflow-scrolling:touch;overflow:auto!important;overscroll-behavior:contain}}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.mobile-menu-btn,button{-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:translateZ(0)}}@media (max-width:768px){body,html{-webkit-overflow-scrolling:touch!important;overflow:auto!important}.app,body{touch-action:manipulation!important}.app{overflow:hidden!important}.messages{-webkit-overflow-scrolling:touch!important;overflow-y:scroll!important;overscroll-behavior:contain!important;pointer-events:auto!important;touch-action:pan-y!important}}
/*# sourceMappingURL=main.293edd4f.css.map*/