@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Roboto:wght@300;400;500;600;700&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{line-height:1.15;-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{font-family:Inter,Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.6;color:#212121;background-color:#fafafa;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}*{scrollbar-width:thin;scrollbar-color:#bdbdbd #f5f5f5}*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-track{background:#f5f5f5;border-radius:4px}*::-webkit-scrollbar-thumb{background:#bdbdbd;border-radius:4px;transition:background-color .2s ease}*::-webkit-scrollbar-thumb:hover{background:#9e9e9e}*::-webkit-scrollbar-corner{background:#f5f5f5}:root{--color-primary: #000000;--color-primary-light: #424242;--color-primary-dark: #000000;--color-secondary: #e30710;--color-success: #2e7d32;--color-warning: #ed6c02;--color-error: #d32f2f;--color-info: #0288d1;--color-ocr: #ff8f00;--color-ocr-light: #ffb300;--color-ocr-dark: #ff6f00;--text-primary: #212121;--text-secondary: #757575;--text-disabled: #bdbdbd;--bg-default: #fafafa;--bg-paper: #ffffff;--bg-surface: #f5f5f5;--bg-overlay: rgba(255, 255, 255, .95);--highlight-bg: rgba(255, 241, 118, .3);--highlight-color: #fff176;--shadow-sm: 0px 1px 3px rgba(0, 0, 0, .12);--shadow-md: 0px 3px 6px rgba(0, 0, 0, .16);--shadow-lg: 0px 6px 12px rgba(0, 0, 0, .19);--shadow-xl: 0px 12px 24px rgba(0, 0, 0, .25);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .3s cubic-bezier(.4, 0, .2, 1);--transition-slow: .5s cubic-bezier(.4, 0, .2, 1);--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-xxl: 48px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-round: 50%}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.full-height{height:100vh}.full-width{width:100%}.flex{display:flex}.flex-center{display:flex;justify-content:center;align-items:center}.flex-column{flex-direction:column}.flex-wrap{flex-wrap:wrap}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.m-0{margin:0}.m-1{margin:var(--spacing-sm)}.m-2{margin:var(--spacing-md)}.m-3{margin:var(--spacing-lg)}.mt-0{margin-top:0}.mt-1{margin-top:var(--spacing-sm)}.mt-2{margin-top:var(--spacing-md)}.mt-3{margin-top:var(--spacing-lg)}.mb-0{margin-bottom:0}.mb-1{margin-bottom:var(--spacing-sm)}.mb-2{margin-bottom:var(--spacing-md)}.mb-3{margin-bottom:var(--spacing-lg)}.p-0{padding:0}.p-1{padding:var(--spacing-sm)}.p-2{padding:var(--spacing-md)}.p-3{padding:var(--spacing-lg)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:.8;transform:scale(.98)}50%{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}.fade-in{animation:fadeIn var(--transition-normal) ease-out}.slide-up{animation:slideUp var(--transition-normal) ease-out}.slide-down{animation:slideDown var(--transition-normal) ease-out}.scale-in{animation:scaleIn var(--transition-normal) ease-out}.pulse{animation:pulse 1.5s infinite ease-in-out}.upload-area{border:2px dashed #e0e0e0;border-radius:var(--radius-lg);padding:var(--spacing-xl);text-align:center;background-color:var(--bg-paper);transition:all var(--transition-normal);cursor:pointer;position:relative;overflow:hidden}.upload-area:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(25,118,210,.1),transparent);transition:left var(--transition-slow)}.upload-area:hover{border-color:var(--color-primary);background-color:#1976d205;transform:translateY(-2px);box-shadow:var(--shadow-md)}.upload-area:hover:before{left:100%}.upload-area.drag-active{border-color:var(--color-primary);background-color:#1976d214;transform:scale(1.02);box-shadow:var(--shadow-lg)}.file-status-card{border-radius:var(--radius-md);transition:all var(--transition-normal);position:relative;overflow:hidden}.file-status-pending{border-left:4px solid var(--text-disabled);background-color:#9e9e9e0d}.file-status-processing{border-left:4px solid var(--color-primary);background-color:#1976d20d}.file-status-success{border-left:4px solid var(--color-success);background-color:#2e7d320d}.file-status-error{border-left:4px solid var(--color-error);background-color:#d32f2f0d}.file-status-ocr{border-left:4px solid var(--color-ocr);background-color:#ff8f000d}.search-container{position:relative;background:var(--bg-paper);border-radius:var(--radius-xl);padding:var(--spacing-xl);box-shadow:var(--shadow-lg);transition:all var(--transition-normal)}.search-container:hover{box-shadow:var(--shadow-xl);transform:translateY(-2px)}.search-highlight{background-color:var(--highlight-bg);color:var(--text-primary);padding:0 2px;border-radius:var(--radius-sm);font-weight:500}.search-result{background:var(--bg-paper);border-radius:var(--radius-lg);padding:var(--spacing-lg);margin-bottom:var(--spacing-md);border-top:3px solid var(--color-primary);box-shadow:var(--shadow-sm);transition:all var(--transition-normal);animation:slideUp var(--transition-normal) ease-out}.search-result:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.ai-response{background:linear-gradient(135deg,#1976d20d,#1976d205);border-left:4px solid var(--color-primary);border-radius:var(--radius-md);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg);position:relative;overflow:hidden;transition:all var(--transition-normal)}.ai-response:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(25,118,210,.05),transparent);opacity:0;transition:opacity var(--transition-normal);pointer-events:none}.ai-response:hover{background:linear-gradient(135deg,#1976d214,#1976d20a);box-shadow:var(--shadow-md);transform:translateY(-1px)}.ai-response:hover:before{opacity:1}.source-document-link{color:var(--color-primary);text-decoration:none;font-weight:500;position:relative;display:inline-block;transition:all var(--transition-normal);padding:2px 0}.source-document-link:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background:linear-gradient(90deg,var(--color-primary),var(--color-primary-light));transition:width var(--transition-normal)}.source-document-link:hover{color:var(--color-primary-dark);transform:translateY(-1px)}.source-document-link:hover:after{width:100%}.pdf-viewer-container{background:#2a2a2a;min-height:100vh;position:relative;border-radius:var(--radius-lg);overflow:hidden}.react-pdf__Page{margin-bottom:var(--spacing-md);display:flex;justify-content:center}.react-pdf__Page__canvas{border-radius:var(--radius-md);box-shadow:var(--shadow-lg);transition:all var(--transition-normal)}.react-pdf__Page__canvas:hover{box-shadow:var(--shadow-xl);transform:scale(1.02)}.react-pdf__Page__textContent{border:1px solid rgba(0,0,0,.1);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.react-pdf__Page__annotations.annotationLayer{padding:var(--spacing-lg)}.relevance-chip{border-radius:var(--radius-xl);padding:var(--spacing-xs) var(--spacing-md);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;display:inline-flex;align-items:center;gap:var(--spacing-xs);transition:all var(--transition-normal);box-shadow:var(--shadow-sm)}.relevance-chip:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.relevance-chip.high{background:linear-gradient(135deg,#2e7d32,#4caf50);color:#fff}.relevance-chip.medium{background:linear-gradient(135deg,#0288d1,#03a9f4);color:#fff}.relevance-chip.low{background:linear-gradient(135deg,#757575,#9e9e9e);color:#fff}.ocr-chip{background:linear-gradient(135deg,var(--color-ocr-dark),var(--color-ocr));color:#fff;position:relative;overflow:hidden}.ocr-chip:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left var(--transition-slow)}.ocr-chip:hover:before{left:100%}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:9999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn var(--transition-normal) ease-out}.modal-container{background:var(--bg-paper);border-radius:var(--radius-xl);padding:var(--spacing-xl);box-shadow:var(--shadow-xl);max-width:90vw;max-height:90vh;overflow:auto;position:relative;animation:scaleIn var(--transition-normal) ease-out}.loading-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#ffffffe6;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:9998;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.loading-container{background:var(--bg-paper);padding:var(--spacing-xl);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);text-align:center;min-width:250px;animation:scaleIn var(--transition-normal) ease-out}.skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200px 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-sm)}.skeleton-text{height:1rem;margin-bottom:var(--spacing-sm)}.skeleton-title{height:1.5rem;width:60%;margin-bottom:var(--spacing-md)}.skeleton-avatar{width:40px;height:40px;border-radius:var(--radius-round)}.skeleton-card{height:200px;border-radius:var(--radius-md)}.progress-container{background:#1976d20d;border:1px solid rgba(25,118,210,.1);border-radius:var(--radius-md);padding:var(--spacing-md);margin:var(--spacing-md) 0;position:relative;overflow:hidden}.progress-container:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(25,118,210,.1),transparent);animation:shimmer 2s infinite}.progress-bar{height:8px;background:#e0e0e0;border-radius:var(--radius-sm);overflow:hidden;position:relative}.progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--color-primary),var(--color-primary-light));border-radius:var(--radius-sm);transition:width var(--transition-normal);position:relative;overflow:hidden}.progress-bar-fill.ocr{background:linear-gradient(90deg,var(--color-ocr-dark),var(--color-ocr-light))}.progress-bar-fill:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shimmer 1.5s infinite}.document-card{background:var(--bg-paper);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);border:1px solid rgba(0,0,0,.06);transition:all var(--transition-normal);position:relative;overflow:hidden}.document-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--color-primary),var(--color-primary-light));transform:scaleX(0);transition:transform var(--transition-normal)}.document-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:#1976d21a}.document-card:hover:before{transform:scaleX(1)}.error-state{color:var(--color-error);background:#d32f2f0d;border:1px solid rgba(211,47,47,.1);border-radius:var(--radius-md);padding:var(--spacing-md);animation:slideDown var(--transition-normal) ease-out}.success-state{color:var(--color-success);background:#2e7d320d;border:1px solid rgba(46,125,50,.1);border-radius:var(--radius-md);padding:var(--spacing-md);animation:slideDown var(--transition-normal) ease-out}.warning-state{color:var(--color-warning);background:#ed6c020d;border:1px solid rgba(237,108,2,.1);border-radius:var(--radius-md);padding:var(--spacing-md);animation:slideDown var(--transition-normal) ease-out}@media(max-width:600px){:root{--spacing-xs: 2px;--spacing-sm: 4px;--spacing-md: 8px;--spacing-lg: 16px;--spacing-xl: 24px;--spacing-xxl: 32px}.modal-container{padding:var(--spacing-lg);margin:var(--spacing-md);max-width:calc(100vw - 32px);max-height:calc(100vh - 32px)}.upload-area{padding:var(--spacing-lg)}.search-container{padding:var(--spacing-lg);margin:var(--spacing-sm)}}@media(max-width:480px){.relevance-chip{font-size:.6rem;padding:2px var(--spacing-sm)}.document-card,.ai-response{padding:var(--spacing-md)}}@media(prefers-color-scheme:dark){:root{--text-primary: #ffffff;--text-secondary: #b0b0b0;--text-disabled: #6c6c6c;--bg-default: #121212;--bg-paper: #1e1e1e;--bg-surface: #2a2a2a;--bg-overlay: rgba(30, 30, 30, .95)}.skeleton{background:linear-gradient(90deg,#2a2a2a 25%,#3a3a3a,#2a2a2a 75%);background-size:200px 100%;animation:shimmer 1.5s infinite}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}*{user-select:text;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text}button,input[type=button],input[type=submit],input[type=reset],.MuiButton-root,.MuiIconButton-root,.MuiChip-root .MuiChip-deleteIcon,.MuiButtonBase-root:not(.MuiChip-root),.MuiSwitch-root,.MuiCheckbox-root,.MuiRadio-root,.MuiSlider-root,[role=button]:not([role=button] *){user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}h1,h2,h3,h4,h5,h6,p,span,div,article,section,.MuiTypography-root,.MuiCardContent-root,.MuiListItemText-root,mark,em,strong,code,pre,.search-highlight,.document-title,.highlight-text{user-select:text!important;-webkit-user-select:text!important;-moz-user-select:text!important;-ms-user-select:text!important}.MuiChip-root{user-select:text;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text}.MuiChip-label{user-select:text!important;-webkit-user-select:text!important;-moz-user-select:text!important;-ms-user-select:text!important}@media print{*{box-shadow:none!important;transition:none!important;animation:none!important}.modal-overlay,.loading-overlay{display:none!important}.document-card,.search-result{break-inside:avoid;page-break-inside:avoid}}
