.table-scroll-wrapper{border:1px solid #dee2e6;border-radius:6px;max-height:60vh;overflow:auto;position:relative}.table-scroll-wrapper.empty{align-items:center;background-color:#f8f9fa;color:#6c757d;display:flex;justify-content:center;min-height:100px}.message-table{border-collapse:collapse;font-size:.8rem;width:100%}.message-table td,.message-table th{border-bottom:1px solid #dee2e6;border-right:1px solid #e9ecef;padding:10px 12px;text-align:left;vertical-align:top}.message-table td:last-child,.message-table th:last-child{border-right:none}.message-table th{box-shadow:0 2px 2px -1px #0000001a;color:#343a40;font-size:.9rem;font-weight:600;position:-webkit-sticky;position:sticky;top:0;white-space:nowrap;z-index:1}.message-table tbody tr:nth-child(2n),.message-table th{background-color:#f8f9fa}.message-table tbody tr:hover{background-color:#e9ecef}.cell-scroll{max-height:250px;overflow-y:auto;white-space:pre-wrap;word-break:break-word}.col-narrow .cell-scroll{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.col-narrow{min-width:120px}.col-medium{min-width:150px}.col-wide{min-width:250px}.modal-overlay{background-color:#0009;inset:0}.modal-content.column-config-modal{background:#fff;border-radius:8px;box-shadow:0 4px 15px #0003;display:flex;flex-direction:column;max-width:900px;width:90%}.modal-footer,.modal-header{align-items:center;display:flex;flex-shrink:0;padding:16px 24px}.modal-header{border-bottom:1px solid #eee;justify-content:space-between}.modal-header h2{font-size:1rem;font-weight:700;margin:0}.close-button{background:none;border:none;color:#888;cursor:pointer;font-size:1.5rem}.modal-body{flex-grow:1;max-height:70vh;overflow-y:auto;padding:16px 24px}.context-group{margin-bottom:24px}.context-header{border-bottom:2px solid #e9ecef;color:#0d6efd;font-size:.9rem;font-weight:600;letter-spacing:.5px;margin-bottom:12px;padding-bottom:8px;text-transform:uppercase}.column-list{display:flex;flex-direction:column;gap:12px}.column-item{align-items:center;background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;display:flex;gap:12px;padding:10px;position:relative}.column-item.dragging{background-color:#fff;box-shadow:0 2px 8px #00000026}.drag-handle{color:#adb5bd;cursor:grab;font-size:1.1rem}.drag-handle:active{cursor:grabbing}.alias-input{border:1px solid #ced4da;border-radius:4px;flex-grow:1;font-size:.8rem;padding:4px 8px}.alias-input:focus{border-color:#86b7fe;box-shadow:0 0 0 .25rem #0d6efd40;outline:none}.item-content{gap:12px;width:100%}.column-meta,.item-content{align-items:center;display:flex}.column-meta{gap:8px;position:relative}.context-badge{background-color:#e9ecef;border:1px solid #ced4da;border-radius:4px;color:#495057;font-size:.7rem;font-weight:600;padding:2px 6px;text-transform:uppercase}.original-name-tooltip{background-color:#333;border-radius:4px;bottom:125%;color:#fff;font-size:.75rem;left:50%;opacity:0;padding:5px 8px;position:absolute;text-align:center;transform:translateX(-50%);transition:opacity .2s;visibility:hidden;white-space:nowrap;z-index:1}.column-meta:hover .original-name-tooltip{opacity:1;visibility:visible}.modal-footer{border-top:1px solid #eee;gap:10px;justify-content:flex-end}.button-primary,.button-secondary{border:none;border-radius:6px;cursor:pointer;font-size:.8rem;font-weight:600;padding:8px 16px}.button-primary{background-color:#0d6efd;color:#fff}.button-secondary{background-color:#6c757d;color:#fff}.button-primary:disabled{background-color:#a0c7ff;cursor:not-allowed}:root{--font-size-base:0.8rem;--sidebar-width-nav:260px;--sidebar-width-config:300px;--sidebar-collapsed-width:50px}body{background-color:#f0f4f9;font-size:.8rem;font-size:var(--font-size-base)}.app-container{display:flex;height:100vh;overflow:hidden;width:100%}.main-chat{background-color:#f7f8fa;display:flex;flex-direction:column;flex-grow:1;min-width:0}.sidebar-config,.sidebar-nav{background-color:#fff;box-shadow:none;box-sizing:border-box;display:flex;flex-direction:column;flex-shrink:0;overflow-y:auto;padding:16px;position:relative;transform:translateX(0);transition:width .3s ease,transform .3s ease-in-out,padding .3s ease}.sidebar-nav{border-right:1px solid #e0e0e0;padding:12px;width:260px;width:var(--sidebar-width-nav)}.sidebar-config{border-left:1px solid #e0e0e0;order:1;width:300px;width:var(--sidebar-width-config)}.sidebar-config.collapsed,.sidebar-nav.collapsed{overflow:hidden;padding:12px 5px;width:50px;width:var(--sidebar-collapsed-width)}.sidebar-content.hidden{display:none}.sidebar-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;margin-bottom:12px;min-height:30px;padding-bottom:6px}.sidebar-config.collapsed .sidebar-header,.sidebar-nav.collapsed .sidebar-header{border-bottom:none;justify-content:center;margin-bottom:0}.sidebar-title{font-size:.95rem;font-weight:600;white-space:nowrap}.collapse-btn{align-items:center;background:none;border:none;border-radius:4px;color:#555;cursor:pointer;display:flex;font-size:1rem;justify-content:center;padding:4px}.collapse-btn:hover{background-color:#eee}.mobile-nav-toggle{display:none}.mobile-close-btn{background:none;border:none;color:#555;cursor:pointer;display:none;font-size:1.6rem}.overlay{background:#00000080;inset:0;position:fixed;z-index:998}.mobile-header,.overlay{display:none}@media (min-width:1025px){.app-container{display:flex}.sidebar-nav{order:0}.main-chat{flex-grow:1;width:auto}.sidebar-config{display:flex;order:2}.desktop-only{display:flex}}@media (max-width:1024px) and (min-width:769px){.sidebar-config{display:none}.main-chat{width:100%}.desktop-only{display:flex}}@media (max-width:768px){.main-chat{width:100%}.mobile-nav-toggle{display:none}.sidebar-config,.sidebar-nav{box-shadow:2px 0 10px #0000001a;height:100%;position:fixed;top:0;transition:transform .3s ease-in-out;width:260px;width:var(--sidebar-width-nav);z-index:1000}.sidebar-config{width:300px;width:var(--sidebar-width-config)}.sidebar-nav{left:0;transform:translateX(-100%)}.sidebar-nav.open{transform:translateX(0)}.sidebar-config{display:flex;right:0;transform:translateX(100%)}.sidebar-config.open{transform:translateX(0)}.overlay,.sidebar-config .mobile-close-btn,.sidebar-nav .mobile-close-btn{display:block}.config-section select[multiple]{max-height:100px;min-height:40px;overflow-y:auto}.mobile-header{align-items:center;background-color:#f7f8fa;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:10px 15px;position:-webkit-sticky;position:sticky;top:0;z-index:900}.mobile-header-title{font-size:.95rem;font-weight:600}.menu-toggle-btn{background:none;border:none;cursor:pointer;font-size:1.4rem}.desktop-only{display:none!important}.sidebar-config.collapsed,.sidebar-nav.collapsed{padding:16px;width:260px;width:var(--sidebar-width-nav)}.sidebar-config.collapsed{width:300px;width:var(--sidebar-width-config)}.sidebar-content.hidden{display:block}}.new-chat-btn{background:#1660ff;border:none;border-radius:6px;color:#fff;cursor:pointer;display:block;font-size:.85rem;font-weight:600;margin-bottom:8px;padding:8px;text-align:center;text-decoration:none;width:100%}.new-chat-btn:hover{opacity:.9}.new-chat-btn:disabled{cursor:not-allowed;opacity:.6}.new-chat-btn.btn-teal{background-color:#17a2b8;color:#fff}.new-chat-btn.btn-purple{background-color:#6610f2;color:#fff}.new-chat-btn.btn-analyze{background-color:#0d6efd;color:#fff}.chat-list{flex-grow:1}.chat-list-item{align-items:center;border:1px solid #0000;border-radius:4px;cursor:pointer;display:flex;margin-bottom:2px;padding:6px}.chat-list-item.selected{background:#e6f0ff}.chat-title{flex:1 1;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-rename-input{border:1px solid #ccc;border-radius:4px;flex:1 1;font-size:.8rem;padding:2px 6px}.chat-action-btn{color:#555;cursor:pointer;margin-left:4px;opacity:.5}.chat-list-item:hover .chat-action-btn{opacity:1}.messages-area{flex-grow:1;overflow-y:auto;padding:20px}.copy-feedback{background:#333;border-radius:8px;color:#fff;font-size:.8rem;left:50%;padding:8px 16px;position:fixed;top:20px;transform:translateX(-50%);z-index:1000}.message-wrapper{align-items:flex-start;display:flex;margin-bottom:12px;max-width:100%}.message-wrapper.user{justify-content:flex-end}.message-wrapper.assistant{justify-content:flex-start}.message-bubble{word-wrap:break-word;border-radius:18px;box-shadow:0 1px 2px #0000000d;font-size:.8rem;line-height:1.5;max-width:85%;padding:10px 16px;position:relative}.message-wrapper.user .message-bubble{background-color:#dcf8c2;border-bottom-right-radius:4px}.message-wrapper.assistant .message-bubble{background-color:#fff;border-bottom-left-radius:4px}.message-actions{align-items:center;display:flex;opacity:0;padding:0 8px;transition:opacity .2s}.message-wrapper:hover .message-actions{opacity:1}.message-actions button{background:none;border:none;color:#777;cursor:pointer;font-size:1rem}.input-area{background-color:#fff;border-top:1px solid #e0e0e0;display:flex;flex-direction:column;gap:10px;padding:16px 20px}.input-wrapper{align-items:flex-end;display:flex;gap:10px;width:100%}.input-textarea{border:1px solid #ccc;border-radius:20px;flex-grow:1;font-family:inherit;font-size:.8rem;height:46px;max-height:150px;overflow-y:auto;padding:10px 15px;resize:none;transition:max-height .2s ease-in-out}.input-textarea:focus{max-height:75vh}.submit-button{background-color:#0b57d0;border:none;border-radius:20px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:500;padding:10px 20px}.submit-button:disabled{background-color:#a0c3ff;cursor:not-allowed}.table-container{border-top:1px solid #e0e0e0;margin-top:15px;padding-top:15px}.show-details-btn{background:#007bff;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:.8rem;padding:6px 12px}.export-buttons{align-items:center;display:flex;font-size:.8rem;gap:10px;margin-top:15px}.export-buttons span{font-weight:700}.export-buttons button{border:1px solid #ccc;border-radius:4px;cursor:pointer;padding:4px 8px}.config-section{margin-bottom:24px}.config-label{display:block;font-size:.9rem;font-weight:600;margin-bottom:8px}.config-select{border:1px solid #ccc;border-radius:6px;font-size:.8rem;padding:5px 9px}.help-button{background:#f0f0f0;border:1px solid #ddd;border-radius:6px;color:#333;cursor:pointer;font-size:.8rem;font-weight:500;padding:8px;text-align:center;width:100%}.config-divider{border-top:1px solid #eee;margin:24px 0}.config-input-file{display:block;font-size:.8rem;margin-bottom:12px}.config-upload-buttons{display:flex;gap:10px}.upload-btn{border:none;border-radius:7px;color:#fff;cursor:pointer;font-size:.8rem;font-weight:600;padding:8px 12px}.upload-btn.index{background:#198754}.upload-btn.analyze{background:#0d6efd}.upload-btn:disabled{cursor:not-allowed;opacity:.6}.upload-status{color:#1d87bb;font-size:.8rem;font-weight:500;margin-top:8px;min-height:20px}.upload-file-count{color:#555;font-size:.8rem;margin-top:4px;padding-bottom:8px}.image-preview-container{background:#f0f0f0;border-radius:8px;display:inline-block;margin-right:10px;padding:5px;position:relative}.image-preview{border-radius:4px;display:block;max-height:60px;max-width:80px}.remove-image-btn{background:#333;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:14px;height:20px;line-height:20px;padding:0;position:absolute;right:-5px;text-align:center;top:-5px;width:20px}.config-section label{color:#333;display:block;font-size:.85rem;font-weight:600;margin-bottom:5px;margin-top:15px}.config-section select[multiple]{background-color:#fff;border:1px solid #ced4da;border-radius:6px;font-size:.8rem;min-height:80px;padding:8px;width:100%}.config-section select[multiple]:focus{border-color:#86b7fe;box-shadow:0 0 0 .25rem #0d6efd40;outline:none}.modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background-color:#fff;border-radius:8px;box-shadow:0 4px 6px #0000001a;max-width:400px;padding:24px;width:100%}.modal-content h3{color:#333;font-size:1.2rem;margin-bottom:20px;margin-top:0}.form-group{margin-bottom:16px}.form-group label{color:#555;display:block;font-weight:500;margin-bottom:8px}.modal-input{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-size:.9rem;padding:8px 12px;width:100%}.modal-input:focus{border-color:#0b57d0;box-shadow:0 0 0 2px #0b57d033;outline:none}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.btn-primary{background-color:#0b57d0;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:500;padding:8px 16px}.btn-primary:hover{background-color:#0842a0}.btn-secondary{background-color:#f0f0f0;border:1px solid #ddd;border-radius:4px;color:#333;cursor:pointer;font-weight:500;padding:8px 16px}.btn-secondary:hover{background-color:#e0e0e0}@media (max-width:768px){.page-container{padding:1rem!important}.header-container{align-items:flex-start!important;flex-direction:column;gap:1rem}.header-container h1{border-bottom:1px solid #ccc;font-size:1.5rem;width:100%}.header-actions{display:flex;gap:.5rem;justify-content:space-between;width:100%}.header-actions button{flex:1 1}}.table-responsive{-webkit-overflow-scrolling:touch;border:1px solid #dee2e6;border-radius:4px;margin-bottom:1rem;overflow-x:auto;width:100%}.table-responsive table{margin-bottom:0;white-space:nowrap}@media (max-width:768px){.form-responsive{align-items:stretch!important;flex-direction:column!important}.form-responsive>div{width:100%!important}.form-responsive button{margin-top:.5rem;width:100%}.search-filter-container{flex-direction:column}.search-filter-container input{margin-bottom:.5rem;width:100%!important}.search-filter-container button{width:100%}.dashboard-grid{grid-template-columns:1fr!important}.chart-container{height:250px!important}.modal-content-responsive{max-height:95vh!important;padding:1rem!important;width:95%!important}.modal-grid{grid-template-columns:1fr!important}}

/*
! tailwindcss v3.4.4 | MIT License | https://tailwindcss.com
*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;tab-size:4}body{line-height:inherit}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:initial;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:initial}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]{display:none}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.collapse{visibility:collapse}.fixed{position:fixed}.relative{position:relative}.sticky{position:-webkit-sticky;position:sticky}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.\!table{display:table!important}.table{display:table}.grid{display:grid}.hidden{display:none}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.items-center{align-items:center}.justify-center{justify-content:center}.break-all{word-break:break-all}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.border{border-width:1px}.border-slate-300{--tw-border-opacity:1;border-color:rgb(203 213 225/var(--tw-border-opacity))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-1{padding-bottom:.25rem;padding-top:.25rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.text-base{font-size:1rem;line-height:1.5rem}.text-sm{font-size:.875rem;line-height:1.25rem}.font-medium{font-weight:500}.italic{font-style:italic}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.hover\:bg-slate-100:hover{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity))}
/*# sourceMappingURL=main.a0a1cf21.css.map*/