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}.mobile-bottom-nav{background:#fff;border-top:1px solid #e0e0e0;bottom:0;box-shadow:0 -2px 10px #0000001a;height:70px;justify-content:space-around;left:0;padding:8px 4px;position:fixed;right:0;z-index:1000}.mobile-bottom-nav,.nav-item{align-items:center;display:flex}.nav-item{background:none;border:none;border-radius:12px;cursor:pointer;flex:1 1;flex-direction:column;justify-content:center;max-width:80px;min-width:60px;padding:8px 12px;transition:all .2s ease}.nav-item:hover{background-color:#f5f5f5;transform:translateY(-1px)}.nav-item.active{background-color:#007bff;color:#fff}.nav-item.active .nav-icon{transform:scale(1.1)}.nav-item.logout-item{color:#dc3545}.nav-item.logout-item:hover{background-color:#f8d7da;color:#721c24}.nav-icon{font-size:20px;margin-bottom:2px;transition:transform .2s ease}.nav-label{font-size:10px;font-weight:500;line-height:1;text-align:center}@media (max-width:480px){.mobile-bottom-nav{height:65px;padding:6px 2px}.nav-item{min-width:50px;padding:6px 8px}.nav-icon{font-size:18px}.nav-label{font-size:9px}}@media (max-width:360px){.nav-label{font-size:8px}.nav-item{min-width:45px;padding:6px}}@media (min-width:768px){.mobile-bottom-nav{display:none}}@media (max-width:767px){body{padding-bottom:80px}}.main-content{margin-bottom:80px}@media (min-width:768px){.main-content{margin-bottom:0}}:root{--backdrop-blur:blur(4px);--backdrop-blur-light:blur(3px);--button-size-large:44px;--button-size-medium:32px;--button-size-small:28px;--button-size-mobile:24px;--button-size-compact:20px;--gradient-primary:linear-gradient(135deg,#e3f2fd,#bbdefb);--gradient-secondary:linear-gradient(135deg,#f3e5f5,#e1bee7);--gradient-success:linear-gradient(135deg,#e8f5e8,#c8e6c9);--gradient-danger:linear-gradient(135deg,#ffebee,#ffcdd2);--gradient-neutral:linear-gradient(135deg,#f8f9fa,#e9ecef);--border-radius-small:4px;--border-radius-medium:6px;--border-radius-large:8px;--border-radius-button:4px;--shadow-light:0 1px 4px #0000001a;--shadow-medium:0 2px 8px #00000026;--shadow-heavy:0 4px 16px #0003;--opacity-backdrop:0.6;--opacity-hover:0.8;--opacity-disabled:0.5;--mobile-touch-target:44px;--mobile-comfortable-target:48px;--mobile-safe-area-bottom:env(safe-area-inset-bottom);--mobile-safe-area-top:env(safe-area-inset-top);--mobile-safe-area-left:env(safe-area-inset-left);--mobile-safe-area-right:env(safe-area-inset-right);--thumb-zone-height:120px;--thumb-zone-comfortable:80px;--mobile-transition:0.2s cubic-bezier(0.4,0,0.2,1);--mobile-spring:0.3s cubic-bezier(0.175,0.885,0.32,1.275);--mobile-bounce:0.4s cubic-bezier(0.68,-0.55,0.265,1.55)}.App{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:.9rem;margin:0 auto;max-width:90%;overflow-x:hidden;padding:15px}.App-header{border-bottom:2px solid #e0e0e0;margin-bottom:20px;padding:15px 0;text-align:center}.App-header h1{color:#333;font-size:2rem;margin:0}.main-content{display:flex;flex-direction:column;gap:15px}@media (max-width:767px){.App{margin-bottom:80px;max-width:100%;padding:10px}.main-content{padding-bottom:20px}.desktop-nav{display:none!important}}@media (min-width:768px){.mobile-bottom-nav{display:none!important}}.upload-section{margin-bottom:10px}.content-section{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr;min-height:500px}.data-panel,.document-panel{background:#f9f9f9;border:1px solid #ddd;border-radius:8px;padding:15px;position:relative}.data-panel h2,.document-panel h2{border-bottom:1px solid #ddd;color:#333;margin-top:0;padding-bottom:10px}.file-upload{background:#fafafa;border:2px dashed #ccc;border-radius:8px;cursor:pointer;padding:20px;text-align:center;transition:all .3s ease}.file-upload:hover{background:#f0f8ff;border-color:#007bff}.file-upload.drag-over{background:#e3f2fd;border-color:#007bff}.upload-icon{font-size:2rem;margin-bottom:5px}.file-types{font-size:.75rem;margin:5px 0 0}.document-viewer{background:#fff;border:1px solid #ddd;border-radius:8px;border-radius:var(--border-radius-large);overflow:hidden;position:relative}.document-viewer.empty{align-items:center;color:#666;display:flex;font-style:italic;height:400px;justify-content:center}.file-info{background:#fff;border:1px solid #ddd;border-radius:4px;margin-bottom:15px;padding:10px}.file-name{margin-right:10px}.file-size{font-size:.9rem}.document-content{text-align:center}.image-container{display:inline-block}.expand-button{background:#000000b3;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.9rem;padding:8px 12px;position:absolute;right:10px;top:10px;transition:background .3s ease}.expand-button:hover,.image-modal{background:#000000e6}.image-modal{align-items:center;cursor:pointer;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:1000}.modal-content{border-radius:8px;box-shadow:0 4px 20px #0000004d;cursor:default;display:flex;flex-direction:column;max-height:95vh;max-width:95vw}.modal-header{background:#f8f9fa;border-bottom:1px solid #ddd;border-radius:8px 8px 0 0;padding:15px 20px}.modal-header h3{color:#333;font-size:1rem}.close-button{align-items:center;border-radius:50%;display:flex;height:30px;justify-content:center;padding:0;transition:background .3s ease;width:30px}.close-button:hover{background:#e9ecef;color:#333}.zoom-controls{background:#f8f9fa;border-bottom:1px solid #ddd;gap:10px;padding:15px 20px}.zoom-controls button{padding:6px 12px;transition:background .3s ease}.zoom-level{min-width:50px}.modal-image-container{background:#f8f9fa;flex:1 1;max-height:70vh;min-height:300px;overflow:auto;padding:20px;position:relative}.image-wrapper{display:inline-block;min-height:100%;min-width:100%}.modal-image-container img{display:block;height:auto;width:100%}.extract-button-container{align-items:center;display:flex;gap:10px;justify-content:center;margin-top:20px;text-align:center}.extract-button{border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:700;height:auto;min-width:120px;padding:8px 16px;transition:background .3s ease}.openai-button{background:#00a67d}.openai-button:hover:not(:disabled){background:#008566}.deepseek-button{background:#007bff}.deepseek-button:hover:not(:disabled){background:#0056b3}.textract-button{background:#007bff}.textract-button:hover:not(:disabled){background:#0056b3}.save-unprocessed-button{background:#28a745}.save-unprocessed-button:hover:not(:disabled){background:#218838}.extract-button:disabled,.save-unprocessed-button:disabled{background:#6c757d;cursor:not-allowed}.extracted-data.empty,.extracted-data.loading{align-items:center;color:#666;display:flex;font-style:italic;height:400px;justify-content:center}.loading-spinner{font-size:1.5rem;margin-bottom:8px}.hint{font-size:.9rem;margin:5px 0 0}.data-grid{grid-gap:15px;display:grid;gap:15px;margin-bottom:25px}.data-field{display:flex;flex-direction:column}.data-field label{color:#333;font-weight:700;margin-bottom:5px}.data-field input,.data-field textarea{background:#fff;border:1px solid #ddd;border-radius:4px;font-family:inherit;font-size:.9rem;padding:8px;resize:vertical}.vendor-address textarea{min-height:60px}.date-time-container{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr}.date-time-container.date-only{grid-template-columns:1fr}.date-field,.time-field{display:flex;flex-direction:column}.date-field label,.time-field label{color:#333;font-weight:700;margin-bottom:5px}.date-field input,.time-field input{margin:0}.category-field{font-weight:700}.category-field,.description-field{background:#f0f8ff!important;color:#1a365d}.description-field{font-style:italic}.line-items{margin-bottom:25px}.line-items-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.line-items h3{color:#333;margin:0}.expand-toggle-button{background:#f8f9fa;border:1px solid #ddd;border-radius:4px;color:#666;cursor:pointer;font-size:.8rem;padding:6px 12px;transition:all .3s ease}.expand-toggle-button:hover{background:#e9ecef;color:#333}.line-item-summary{align-items:center;background:#f8f9fa;border-bottom:1px solid #eee;color:#666;display:flex;font-style:italic;justify-content:space-between;padding:10px 15px}.summary-text{font-size:.9rem}.expand-inline-button{background:#007bff;border:none;border-radius:3px;color:#fff;cursor:pointer;font-size:.8rem;padding:4px 8px;transition:background .3s ease}.expand-inline-button:hover{background:#0056b3}.line-items-list{background:#fff;border:1px solid #ddd;border-radius:4px;overflow:hidden}.line-item{border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:10px 15px}.line-item:last-child{border-bottom:none}.item-description{flex:1 1;text-align:left}.item-amount{color:#007bff;font-weight:700}.actions{flex-wrap:wrap;gap:10px}.verification-status{margin-right:15px}.confidence-summary{align-items:center;display:flex;gap:8px;margin-right:15px}.confidence-title{color:#666;font-size:.9rem;font-weight:500}.confidence-badge{border-radius:15px;font-size:.85rem;font-weight:500;padding:6px 10px}.confidence-high{background-color:#dcfce7;border:1px solid #bbf7d0;color:#15803d}.confidence-medium{background-color:#fef3c7;border:1px solid #fed7aa;color:#d97706}.confidence-low{background-color:#fee2e2;border:1px solid #fecaca;color:#dc2626}.verified-badge{background-color:#d4edda;border:1px solid #c3e6cb;border-radius:20px;color:#155724}.unverified-badge,.verified-badge{font-size:.9rem;font-weight:500;padding:8px 12px}.unverified-badge{background-color:#fff3cd;border:1px solid #ffeaa7;border-radius:20px;color:#856404}.verification-status-bottom{background-color:#f8f9fa;border-top:1px solid #e0e0e0;box-sizing:border-box;margin-top:15px;overflow:hidden;padding:12px;text-align:center;width:100%}.verification-status-bottom .unverified-badge,.verification-status-bottom .verified-badge{word-wrap:break-word;display:inline-block;margin:0;max-width:none;overflow-wrap:break-word;text-align:center;width:calc(100% - 20px)}.actions button{border:none;border-radius:4px;cursor:pointer;font-size:.9rem;padding:8px 16px;transition:background .3s ease}.verify-button{background:#28a745;color:#fff}.verify-button:hover{background:#218838}.edit-button{background:#ffc107;color:#212529}.edit-button:hover{background:#e0a800}.save-button{background:#17a2b8;color:#fff}.save-button:hover{background:#138496}.save-button.saved{background:#28a745;cursor:not-allowed}.save-button.saved:hover{background:#28a745}.raw-response-button{background:#6c757d;color:#fff}.raw-response-button:hover{background:#5a6268}.nav-button{background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:700;padding:8px 16px;transition:background .3s ease}.nav-button:hover:not(:disabled){background:#0056b3}.nav-button:disabled{background:#6c757d;cursor:not-allowed;opacity:.6}.file-counter{color:#666;font-size:.9rem;margin:0 10px}.duplicate-warning-overlay{align-items:center;background:#000000b3;cursor:pointer;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:1000}.duplicate-warning-modal{background:#fff;border-radius:12px;box-shadow:0 8px 32px #0000004d;cursor:default;display:flex;flex-direction:column;max-height:85vh;max-width:700px;overflow:hidden;width:90vw}.duplicate-warning-header{align-items:center;background:#fff3cd;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:20px}.duplicate-warning-header h3{color:#856404;font-size:1rem;margin:0}.close-duplicate-button{align-items:center;background:none;border:none;border-radius:50%;color:#856404;cursor:pointer;display:flex;font-size:1.3rem;height:35px;justify-content:center;padding:5px;transition:background .3s ease;width:35px}.close-duplicate-button:hover{background:#8564041a}.duplicate-warning-content{flex:1 1;overflow-y:auto;padding:20px}.exact-duplicate-section,.suspected-duplicates-section{margin-bottom:20px}.exact-duplicate-section h4{color:#dc3545;font-size:1rem;margin:0 0 10px}.suspected-duplicates-section h4{color:#ffc107;font-size:1rem;margin:0 0 10px}.duplicate-record{background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;margin-bottom:10px;padding:15px}.record-header{color:#495057;font-size:1rem;margin-bottom:8px}.record-info{color:#333;font-size:.9rem;margin-bottom:5px}.duplicate-warning-message{background:#fff3cd;border:1px solid #ffeaa7;border-radius:6px;margin-top:15px;padding:15px}.duplicate-warning-message p{color:#856404;margin:0}.duplicate-warning-actions{background:#f8f9fa;border-top:1px solid #e0e0e0;display:flex;gap:10px;justify-content:flex-end;padding:20px}.cancel-duplicate-btn,.proceed-duplicate-btn{border:none;border-radius:6px;cursor:pointer;font-size:1rem;font-weight:700;padding:10px 20px;transition:background .3s ease}.cancel-duplicate-btn{background:#6c757d;color:#fff}.cancel-duplicate-btn:hover{background:#5a6268}.proceed-duplicate-btn{background:#dc3545;color:#fff}.proceed-duplicate-btn:hover{background:#c82333}.raw-response{background:#f8f9fa;border:1px solid #ddd;border-radius:8px;margin-top:20px}.raw-response h3{background:#e9ecef;border-bottom:1px solid #ddd;border-radius:8px 8px 0 0;color:#333;font-size:1rem;margin:0;padding:15px 20px}.response-info{border-bottom:1px solid #ddd;padding:10px 20px}.provider-badge{background:#007bff;border-radius:4px;display:inline-block}.raw-response-content{background:#fff;border:none;border-radius:0 0 8px 8px;color:#333;font-family:Courier New,monospace;font-size:.8rem;line-height:1.4;margin:0;max-height:400px;overflow-x:auto;overflow-y:auto;padding:20px;white-space:pre-wrap}.clickable-field{cursor:pointer!important;transition:background-color .2s ease}.clickable-field:hover{background-color:#f0f8ff!important;border-color:#007bff!important}.editable-field{cursor:text!important}.editable-field:focus{background-color:#fff!important;outline:2px solid #007bff;outline-offset:1px}.confidence-overlay{pointer-events:none;transition:all .3s ease;-webkit-user-select:none;user-select:none}.confidence-overlay.highlighted{animation:pulse-highlight 1s ease-in-out 2}.confidence-badge{font-family:monospace;text-shadow:1px 1px 1px #00000080}.confidence-legend{background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;margin-top:15px;padding:15px}.confidence-legend h4{color:#495057;font-size:.9rem;margin:0 0 10px}.legend-items{display:flex;flex-wrap:wrap;gap:15px;margin-bottom:10px}.legend-item{align-items:center;display:flex;font-size:.8rem;gap:6px}.legend-color{border:1px solid #0000001a;border-radius:2px;height:12px;width:12px}.legend-note{color:#6c757d;font-size:.75rem;font-style:italic;margin:8px 0 0}.image-controls{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);-webkit-backdrop-filter:var(--backdrop-blur);backdrop-filter:var(--backdrop-blur);background:#fff9;background:rgba(255,255,255,var(--opacity-backdrop));position:absolute;right:10px;top:10px;z-index:20}.image-controls,.image-controls-bottom{border-radius:6px;border-radius:var(--border-radius-medium);box-shadow:0 1px 4px #0000001a;box-shadow:var(--shadow-light);display:flex;gap:8px;padding:8px}.image-controls-bottom{background:#ffffffe6;border:1px solid #e0e0e0;justify-content:center}.zoom-controls{gap:5px}.zoom-controls button{align-items:center;background:#007bff;border:none;border-radius:4px;border-radius:var(--border-radius-button);color:#fff;cursor:pointer;display:flex;font-size:.9rem;font-weight:600;justify-content:center;min-height:44px;min-height:var(--button-size-large);min-width:60px;padding:8px 16px;touch-action:manipulation;transition:all .3s ease}.zoom-controls button:hover:not(:disabled){background:#0056b3}.zoom-controls button:disabled{background:#6c757d;cursor:not-allowed}.zoom-level{align-items:center;color:#333;display:flex;font-size:.9rem;font-weight:700;justify-content:center;min-height:44px;min-height:var(--button-size-large);min-width:80px;padding:8px}.image-container{border:1px solid #ddd;border-radius:4px;overflow:auto}.image-container,.image-wrapper{position:relative}.field-popup-overlay{align-items:center;background:#000000b3;cursor:pointer;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:1000}.field-popup{background:#fff;border-radius:12px;box-shadow:0 8px 32px #0000004d;cursor:default;display:flex;flex-direction:column;max-height:85vh;max-width:700px;overflow:hidden}.field-popup-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:20px}.field-popup-header h3{color:#333;font-size:1rem;margin:0}.close-popup-button{align-items:center;background:none;border:none;border-radius:50%;color:#666;cursor:pointer;display:flex;font-size:1.3rem;height:35px;justify-content:center;padding:5px;transition:background .3s ease;width:35px}.close-popup-button:hover{background:#e9ecef;color:#333}.field-popup-content{flex:1 1;overflow-y:auto;padding:20px}.field-edit,.field-info,.field-value{background:#f8f9fa;border-radius:6px;font-size:.9rem;margin-bottom:15px;padding:10px}.field-info strong,.field-value strong{color:#333;margin-right:8px}.field-edit label{color:#333;display:block;font-weight:700;margin-bottom:8px}.popup-edit-input{background:#fff;border:2px solid #ddd;border-radius:4px;font-family:inherit;font-size:.9rem;padding:8px 12px;transition:border-color .3s ease;width:100%}.popup-edit-input:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff1a;outline:none}.cropped-image-container{background:#fafafa;border:1px solid #ddd;border-radius:8px;margin:20px 0;padding:15px;text-align:center}.cropped-image-wrapper{display:inline-block;position:relative}.cropped-image{border-radius:4px;box-shadow:0 2px 8px #0000001a;display:block;max-height:500px;max-width:100%;object-fit:contain}.field-highlight-overlay{box-sizing:border-box;z-index:10}@keyframes pulse-highlight{0%,to{box-shadow:0 0 0 0 #007bffb3;opacity:.5;transform:scale(1)}50%{box-shadow:0 0 0 4px #007bff4d;opacity:.8;transform:scale(1.01)}}.popup-actions{display:flex;justify-content:center;margin-top:20px}.verify-field-button{background:#28a745;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;padding:12px 24px;transition:background .3s ease}.verify-field-button:hover:not(:disabled){background:#218838}.verify-field-button:disabled{background:#6c757d;cursor:not-allowed;opacity:.6}.navigation{background:#fff;border-bottom:2px solid #e0e0e0;box-shadow:0 2px 4px #0000001a}.nav-container{align-items:center;display:flex;height:50px;justify-content:space-between;margin:0 auto;max-width:100%;overflow-x:hidden;padding:0 15px}.nav-brand h1{color:#333;font-size:1.1rem;margin:0}.nav-links{display:flex;margin-left:auto;width:auto}.nav-link{border-radius:6px;color:#999;font-size:14px;font-weight:500;padding:6px 12px;text-decoration:none;transition:all .3s ease;white-space:nowrap}.nav-link.active,.nav-link:hover{background:#f0f8ff;color:#007bff}.nav-link.active{font-weight:700}.logout-btn{background:none;border:none;border-radius:6px;color:#666;cursor:pointer;font-family:inherit;font-size:inherit;font-weight:500;padding:8px 16px;text-decoration:none;transition:all .3s ease}.logout-btn:hover{background:#ffe6e6;color:#dc3545}.dashboard{margin:0 auto;max-width:90%;overflow-x:hidden;padding:20px}.dashboard-header{margin-bottom:30px}.dashboard-header h1{color:#333;font-size:2rem;margin:0}.header-content{align-items:center;margin-bottom:20px}.header-actions{align-items:center;display:flex;gap:10px}.primary-btn,.save-record-btn{background:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:700;padding:8px 16px;transition:background .3s ease}.primary-btn:hover,.save-record-btn:hover{background:#0056b3}.back-btn{background:#6c757d;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;padding:10px 20px;transition:background .3s ease}.back-btn:hover{background:#5a6268}.scorecard{margin-bottom:24px}.scorecard-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(6,1fr)}.score-item{align-items:center;background:#fafbfc;border:1px solid #e1e8ed;border-radius:8px;display:flex;flex-direction:column;overflow:hidden;padding:16px 18px;position:relative;text-align:center;transition:all .2s ease}.score-item:before{background:linear-gradient(90deg,#667eea,#764ba2);content:"";height:3px;left:0;opacity:.8;position:absolute;right:0;top:0}.score-item:hover{background:#f8f9fa;border-color:#d0d7de;transform:translateY(-1px)}.score-item.success:before{background:linear-gradient(90deg,#56ab2f,#a8e6cf)}.score-item.warning:before{background:linear-gradient(90deg,#f093fb,#f5576c)}.score-item.amount:before{background:linear-gradient(90deg,#4facfe,#00f2fe)}.score-item.verified-amount:before{background:linear-gradient(90deg,#43e97b,#38f9d7)}.score-item.monthly:before{background:linear-gradient(90deg,#fa709a,#fee140)}.score-item.average:before{background:linear-gradient(90deg,#a8edea,#fed6e3)}.score-icon{font-size:1.3rem;margin-bottom:8px;opacity:.7}.score-content{width:100%}.score-value{color:#1a1a1a;font-size:1.3rem;font-weight:600;line-height:1.2;margin-bottom:4px}.score-label{color:#6e7681;font-size:.75rem;font-weight:500;letter-spacing:.5px;margin-bottom:2px;text-transform:uppercase}.score-percentage{color:#22863a;font-size:.7rem;font-weight:500}.score-sublabel{color:#6e7681;font-size:.7rem;font-weight:400}.dashboard-content{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:30px}.content-header{align-items:flex-start;justify-content:space-between;margin-bottom:20px}.content-header,.filters{display:flex;flex-wrap:wrap}.filters{align-items:flex-end;gap:15px}.filter-group{display:flex;flex-direction:column;gap:5px}.filter-group label{color:#666;font-size:.8rem;font-weight:700}.filter-group input,.filter-group select{border:1px solid #ddd;border-radius:4px;font-size:.9rem;min-width:120px;padding:6px 10px}.clear-filters-btn{background:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.8rem;height:-webkit-fit-content;height:fit-content;margin:0;padding:4px 8px}.clear-filters-btn:hover{background:#c82333}.receipt-table{margin-top:20px}.receipt-table.empty{align-items:center;display:flex;height:300px;justify-content:center}.empty-state{color:#666}.empty-icon{font-size:4rem;margin-bottom:20px;opacity:.5}.table-header{background:#e9ecef!important;border:1px solid #dee2e6;border-radius:6px;margin-bottom:6px;padding:6px 12px}.table-actions{align-items:center;flex-wrap:wrap;gap:8px;justify-content:space-between;margin:0;min-height:32px;padding:0}.filter-actions{flex:0 0 auto;gap:6px;margin:0;padding:0}.bulk-action-buttons{align-items:center;display:flex;flex:1 1 auto;flex-wrap:nowrap;gap:6px;justify-content:flex-end;margin:0;min-width:0;padding:0}@media (max-width:768px){.table-header{margin-bottom:4px;padding:4px 8px}.table-actions{align-items:stretch;flex-direction:column;gap:6px;min-height:auto}.filter-actions{justify-content:center;order:1}.bulk-action-buttons{flex-wrap:wrap;gap:4px;justify-content:center;order:2}.bulk-action-buttons button{white-space:nowrap}.bulk-action-buttons button,.clear-filters-btn{font-size:.75rem;padding:3px 6px}}@media (max-width:480px){.bulk-action-buttons{flex-direction:column;gap:3px}.bulk-action-buttons button{font-size:.7rem;padding:6px 8px;text-align:center;width:100%}}.source-cell{padding:8px 12px;text-align:center}.source-badge{color:#666}.add-new-record-btn,.source-badge{font-size:.8rem;font-weight:500;white-space:nowrap}.add-new-record-btn{background:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;margin:0;padding:4px 8px;transition:all .2s ease}.add-new-record-btn:hover{background:#218838;transform:translateY(-1px)}.bulk-actions{align-items:center;background:#fff;border:1px solid #dee2e6;border-radius:6px;padding:8px 12px}.selection-count{color:#666;font-size:.9rem;font-weight:700}.bulk-delete-btn{background:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.9rem;padding:6px 12px}.bulk-delete-btn:hover{background:#c82333}.table-container{-webkit-overflow-scrolling:touch;border:1px solid #ddd;border-radius:8px;max-width:100%;overflow-x:auto}.data-table{background:#fff;border-collapse:collapse;width:100%}.data-table td,.data-table th{border-bottom:1px solid #eee;line-height:1.2;padding:6px 8px;text-align:left}.data-table th{background:#f8f9fa;color:#333;font-weight:700;position:-webkit-sticky;position:sticky;top:0;z-index:10}.data-table th.sortable{cursor:pointer;transition:background .3s ease;-webkit-user-select:none;user-select:none}.data-table th.sortable:hover{background:#e9ecef}.data-table tr.verified{background:#f8fff8}.data-table tr.unverified{background:#fffdf8}.data-table tr.unprocessed{background:#f8f9fa}.data-table tr.sum-row{background:#f1f3f4!important;border-top:2px solid #007bff;font-weight:700}.data-table tr.sum-row td{border-bottom:2px solid #007bff;padding:15px 12px}.data-table tr.sum-row .sum-label{color:#495057;font-size:.9rem;text-align:right}.data-table tr.sum-row .sum-amount{background:#e3f2fd;border-radius:4px;color:#007bff;font-size:1rem;text-align:center}.unprocessed-table.empty{align-items:center;display:flex;height:300px;justify-content:center}.process-btn{background:#17a2b8!important}.process-btn:hover{background:#138496!important}.checkbox-column{padding:4px 6px!important;width:30px}.status-cell{padding:4px 6px!important;width:50px}.status-badge{font-size:1rem}.file-name-cell{max-width:200px}.file-info{display:flex;flex-direction:column;gap:2px}.file-name{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-size{color:#666;font-size:.8rem}.vendor-name{max-width:150px}.amount-cell{text-align:right}.data-table .description-cell{min-width:200px;width:66.67%}.data-table .category-cell{min-width:120px;width:12%}.data-table .amount-cell,.data-table .date-cell{min-width:80px;width:8%}.data-table .owner-cell{min-width:60px;padding:4px 6px!important;width:6%}.data-table .financial-year-cell{min-width:80px;width:8%}.data-table .checkbox-column{min-width:30px;width:2%}.category-badge{font-size:.75rem!important;padding:2px 6px!important}.description-cell .description{font-size:.9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.amount{color:#28a745;font-weight:400}.financial-year,.month{color:#666;font-size:.9rem}.provider-badge{border-radius:12px;color:#fff;font-size:.8rem;font-weight:700;padding:4px 8px}.verification-date{color:#28a745;font-size:.9rem}.no-verification{color:#666;font-style:italic}.action-buttons{gap:4px}.action-btn{background:none;color:#666;font-size:.9rem;height:28px;min-width:28px;opacity:.7;padding:4px 6px;transition:all .3s ease}.action-btn:hover{opacity:1}.action-btn.delete-btn:hover,.action-btn.view-btn:hover{opacity:1;transform:scale(1.1)}.bulk-file-upload{margin-bottom:15px}.file-upload-area{align-items:center;background:#fafafa;border:2px dashed #ccc;border-radius:8px;cursor:pointer;display:flex;justify-content:center;min-height:120px;padding:24px;text-align:center;transition:all .3s ease}.file-upload-area:hover{background:#f0f8ff;border-color:#007bff}.file-upload-area.drag-over{background:#e3f2fd;border-color:#007bff;transform:scale(1.02)}.upload-content{pointer-events:none}.upload-content .upload-icon{font-size:2.5rem;margin-bottom:10px;opacity:.7}.upload-text p{color:#333;font-size:.95rem;font-weight:700;margin:3px 0}.upload-description{color:#666!important;font-size:.8rem!important;font-weight:400!important}.upload-buttons{display:flex;gap:6px;justify-content:center;margin:12px 0}.upload-btn{background:#007bff;border:none;border-radius:6px;box-sizing:border-box;color:#fff;cursor:pointer;font-size:.9rem;font-weight:700;height:38px;padding:8px 16px;pointer-events:all;transition:background .3s ease;width:200px}.upload-btn:hover{background:#0056b3}.file-types{color:#666;font-size:.7rem;margin-top:8px}.camera-btn{background:#28a745!important}.camera-btn:hover{background:#218838!important}.camera-interface{background:#000000f2;bottom:0;box-sizing:border-box;display:flex;flex-direction:column;left:0;padding:20px;position:fixed;right:0;top:0;z-index:9999}.camera-header{align-items:center;color:#fff;display:flex;justify-content:space-between;margin-bottom:20px}.camera-header h3{font-size:1rem;margin:0}.camera-close-btn{background:#dc3545;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;padding:8px 12px}.camera-close-btn:hover{background:#c82333}.camera-preview{align-items:center;background:#000;display:flex;flex:1 1;justify-content:center;margin-bottom:20px;overflow:hidden}.camera-preview,.camera-video{border-radius:12px;position:relative}.camera-video{-webkit-playsinline:true;playsinline:true;background-color:#000;display:block;height:100%;max-height:70vh;min-height:300px;object-fit:cover;opacity:1;visibility:visible;width:100%;z-index:1}.camera-error,.camera-loading{align-items:center;color:#fff;display:flex;flex-direction:column;justify-content:center;min-height:300px;text-align:center}.camera-error .error-icon,.camera-loading .loading-spinner{animation:pulse 2s infinite;font-size:3rem;margin-bottom:15px}.camera-error p,.camera-loading p{font-size:1.1rem;margin:0 0 15px}.camera-retry-btn{background:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;padding:10px 20px;transition:background .3s ease}.camera-retry-btn:hover{background:#0056b3}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.document-viewer.loading-state{align-items:center;background:#f8f9fa;border:2px dashed #dee2e6;border-radius:8px;display:flex;justify-content:center;min-height:400px}.loading-container{margin:0 auto;max-width:300px;padding:20px;text-align:center}.loading-container .loading-spinner{margin-bottom:20px}.loading-container h3{color:#495057;font-size:1.2rem;margin:0 0 10px}.loading-container p{color:#6c757d;font-size:.9rem;margin:0 0 20px}.loading-steps{align-items:center;display:flex;flex-direction:column;gap:8px}.loading-step{animation:pulse 2s infinite;background:#e9ecef;border-radius:12px;color:#6c757d;font-size:.85rem;padding:4px 12px}.email-upload-option{background:#f8f9fa;border:1px dashed #dee2e6;border-radius:8px;margin-top:20px;padding:20px;text-align:center}.email-upload-divider{margin:15px 0;position:relative;text-align:center}.email-upload-divider:before{background:#dee2e6;content:"";height:1px;left:0;position:absolute;right:0;top:50%;z-index:1}.email-upload-divider span{background:#f8f9fa;color:#6c757d;font-size:.9rem;font-weight:500;padding:0 15px;position:relative;z-index:2}.email-btn{background:#17a2b8!important}.email-btn:hover{background:#138496!important}@media (max-width:767px){.upload-btn{display:block;height:38px;margin:0 auto;width:200px}.upload-buttons{align-items:center;display:flex;flex-direction:column;gap:6px;width:100%}.email-upload-option,.upload-section{box-sizing:border-box;margin:0 auto;max-width:800px;width:100%}}.email-upload-description{color:#6c757d;font-size:.9rem;margin:0}.email-instructions-modal{align-items:center;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.email-instructions-overlay{background:#00000080;bottom:0;left:0;position:absolute;right:0;top:0}.email-instructions-content{background:#fff;border-radius:12px;box-shadow:0 10px 30px #0003;max-height:90vh;max-width:600px;overflow-y:auto;position:relative;width:100%}.email-instructions-header{align-items:center;border-bottom:1px solid #dee2e6;display:flex;justify-content:space-between;padding:20px 25px 15px}.email-instructions-header h2{color:#333;font-size:1.4rem;margin:0}.email-instructions-close{background:none;border:none;border-radius:4px;color:#6c757d;cursor:pointer;font-size:1.5rem;padding:5px;transition:background .3s ease}.email-instructions-close:hover{background:#f8f9fa;color:#333}.email-instructions-body{padding:25px}.email-address-section{margin-bottom:25px}.email-address-section h3{color:#333;font-size:1.1rem;margin:0 0 12px}.email-address-display{align-items:stretch;display:flex;gap:8px}.email-address-input{background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;color:#333;flex:1 1;font-family:monospace;font-size:.9rem;padding:10px 12px}.copy-email-btn{background:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;padding:10px 12px;transition:background .3s ease}.copy-email-btn:hover:not(:disabled){background:#0056b3}.copy-email-btn:disabled{background:#6c757d;cursor:not-allowed}.email-instructions-steps{margin-bottom:25px}.email-instructions-steps h3,.email-processing-info h3,.email-tips h3{color:#333;font-size:1.1rem;margin:0 0 15px}.instructions-list{margin:0}.instructions-list li{margin-bottom:8px}.email-processing-info{margin-bottom:25px}.processing-details{display:flex;flex-direction:column;gap:12px}.processing-item{align-items:flex-start;background:#f8f9fa;border-radius:6px;display:flex;gap:12px;padding:12px}.processing-icon{font-size:1.2rem;min-width:24px}.email-tips{margin-bottom:25px}.tips-list{margin:0;padding-left:20px}.tips-list li{line-height:1.4;margin-bottom:6px}.email-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.email-settings-btn{background:#6c757d;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.95rem;min-width:140px;padding:12px 20px;transition:background .3s ease}.email-settings-btn:hover{background:#545b62}@media (max-width:768px){.email-instructions-modal{align-items:flex-start;padding:60px 10px 100px}.email-instructions-content{margin-top:20px;max-height:75vh}.email-instructions-body,.email-instructions-header{padding:15px 20px}.email-actions{flex-direction:column}.email-settings-btn{width:100%}}.camera-controls{display:flex;gap:20px;justify-content:center;margin-bottom:20px}.camera-capture-btn{background:#007bff;border:none;border-radius:50px;box-shadow:0 4px 8px #007bff4d;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;padding:16px 32px;transition:all .3s ease}.camera-capture-btn:hover{background:#0056b3;transform:scale(1.05)}.camera-cancel-btn{background:#6c757d;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;padding:16px 24px}.camera-cancel-btn:hover{background:#5a6268}.camera-tips{background:#ffffff1a;border-radius:8px;color:#fff;font-size:.9rem;padding:15px}.camera-tips p{font-weight:700;margin:0 0 10px}.camera-tips ul{margin:0;padding-left:20px}.camera-tips li{margin-bottom:5px;opacity:.9}@media (max-width:768px){.camera-interface{padding:10px}.camera-header h3{font-size:1rem}.camera-close-btn{font-size:.9rem;padding:6px 10px}.camera-video{-webkit-appearance:none;appearance:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;max-height:60vh;min-height:250px}.camera-controls{gap:15px}.camera-capture-btn{font-size:1rem;padding:14px 28px}.camera-cancel-btn{font-size:.9rem;padding:14px 20px}.camera-tips{font-size:.8rem}}.bulk-navigation{background:#f8f9fa;border:1px solid #ddd;border-radius:6px;display:flex;flex-direction:column;gap:8px;margin-top:8px;padding:8px}.navigation-header{align-items:center;display:flex;justify-content:space-between}.file-counter{align-items:center;color:#333;display:flex;font-weight:700;gap:12px}.save-all-button{background:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.8rem;font-weight:500;padding:6px 12px;transition:background .2s ease}.save-all-button:hover:not(:disabled){background:#218838}.save-all-button:disabled{background:#6c757d;cursor:not-allowed}.extract-all-button{background:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.8rem;font-weight:500;padding:6px 12px;transition:background .2s ease}.extract-all-button:hover:not(:disabled){background:#218838}.extract-all-button:disabled{background:#6c757d;cursor:not-allowed}.file-thumbnails{border-top:1px solid #ddd;display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:0;max-height:100px;overflow-x:auto;padding-top:8px}.file-thumbnail{background:#f8f9fa;border:2px solid #ddd;border-radius:4px;cursor:pointer;flex-shrink:0;height:70px;overflow:hidden;position:relative;transition:all .2s ease;width:70px}.file-thumbnail:hover{border-color:#007bff;box-shadow:0 2px 8px #007bff33;transform:scale(1.05)}.file-thumbnail.active{border-color:#28a745;box-shadow:0 0 0 2px #28a74533}.thumbnail-image{display:block;height:50px;object-fit:cover;width:100%}.thumbnail-info{background:#000c;bottom:0;color:#fff;font-size:.7rem;justify-content:space-between;left:0;padding:2px 4px;position:absolute;right:0}.file-number,.thumbnail-info{align-items:center;display:flex}.file-number{background:#007bff;border-radius:50%;font-size:.6rem;font-weight:700;height:16px;justify-content:center;width:16px}.file-thumbnail.active .file-number{background:#28a745}.file-name-short{flex:1 1;margin-left:4px;overflow:hidden;text-align:right;text-overflow:ellipsis;white-space:nowrap}.navigation-controls{gap:15px}.nav-btn,.navigation-controls{align-items:center;display:flex}.nav-btn{background:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;height:44px;justify-content:center;min-width:44px;padding:12px 16px;transition:background .3s ease}.nav-btn:hover:not(:disabled){background:#0056b3}.nav-btn:disabled{background:#6c757d;cursor:not-allowed}.current-file-name{color:#333;font-weight:700;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:1400px){.App,.dashboard{padding:15px}.nav-container{padding:0 15px}}@media (max-width:1200px){.scorecard-grid{gap:10px;grid-template-columns:repeat(4,1fr)}.score-item{padding:12px 14px}.score-icon,.score-value{font-size:1.3rem}}@media (max-width:1024px){.scorecard-grid{gap:8px;grid-template-columns:repeat(3,1fr)}.score-item{padding:10px 12px}.score-icon,.score-value{font-size:1rem}.dashboard-content{padding:20px}.data-table td,.data-table th{font-size:.85rem;padding:6px 8px}}@media (max-width:768px){.App,.dashboard{padding:10px}.desktop-only,.save-record-btn{display:none!important}.nav-container{flex-wrap:wrap;gap:10px;height:auto;min-height:60px;padding:0 10px}.nav-brand h1{font-size:1.3rem}.nav-links{flex-wrap:wrap;gap:10px}.nav-link{font-size:.9rem;padding:6px 12px}.content-section{gap:15px;grid-template-columns:1fr}.data-panel,.document-panel{box-sizing:border-box;margin:0;overflow-x:hidden;padding:12px;width:100%}.data-panel h2,.document-panel h2{font-size:1.1rem;margin-bottom:12px}.App-header h1{font-size:2rem}.field-popup{margin:20px;max-width:90vw}.scorecard-grid{gap:6px;grid-template-columns:repeat(2,1fr)}.score-item{padding:8px 10px}.score-value{font-size:1rem}.score-label{font-size:.7rem}.score-icon{font-size:1rem}.filters{align-items:stretch;flex-direction:column;gap:10px}.filter-group{width:100%}.filter-group input,.filter-group select{min-width:100%}.header-content{align-items:stretch;flex-direction:column;gap:15px}.header-actions{flex-wrap:wrap;justify-content:center}.content-header{flex-direction:column;gap:15px}.bulk-navigation{gap:10px}.bulk-navigation,.upload-buttons{flex-direction:column}.dashboard-content{padding:15px}.data-table{font-size:.8rem}.data-table td,.data-table th{padding:4px 6px}.data-table .description-cell{max-width:200px;min-width:150px}.action-buttons{flex-direction:row;flex-wrap:nowrap;gap:4px}.action-btn{font-size:.8rem;min-width:32px;padding:6px 8px;text-align:center}.extract-button-container{align-items:stretch;box-sizing:border-box;flex-direction:column;gap:12px;padding:0 5px;width:100%}.extract-button{font-size:.9rem;height:44px;min-width:0;min-width:auto;padding:8px 16px;width:100%}.navigation-controls{flex-direction:row;gap:15px;justify-content:center;margin-top:10px}.nav-btn{border-radius:50%!important;font-size:1.2rem!important;height:50px!important;width:50px!important}.file-info-section{box-sizing:border-box;margin-top:15px;overflow-x:hidden;width:100%}.file-details{word-wrap:break-word;margin-bottom:15px;overflow-wrap:break-word;text-align:center}.image-container{border-radius:8px;box-sizing:border-box;margin:0 auto;max-height:500px!important;min-height:300px!important;overflow:auto;width:100%!important}.document-content{box-sizing:border-box;padding:0;width:100%}.image-wrapper{max-width:100%;overflow:hidden;width:100%}.image-wrapper img{display:block;height:auto;max-width:100%}.zoom-controls{flex-wrap:nowrap;gap:2px;padding:1px}.zoom-controls,.zoom-controls button{align-items:center;justify-content:center}.zoom-controls button{border-radius:12px;border-radius:calc(var(--button-size-mobile)/2);display:flex;font-size:.65rem;height:24px;height:var(--button-size-mobile);min-width:50px;padding:2px 8px;touch-action:manipulation}.zoom-level{font-size:.65rem;min-width:60px;padding:1px 3px}.image-controls{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);-webkit-backdrop-filter:var(--backdrop-blur);backdrop-filter:var(--backdrop-blur);background:#fff9;background:rgba(255,255,255,var(--opacity-backdrop));border:1px solid #dddddd80;bottom:8px;left:50%;min-width:auto;position:absolute;transform:translateX(-50%);z-index:20}.image-controls,.image-controls-bottom{border-radius:18px;box-shadow:0 1px 4px #0000001a;box-shadow:var(--shadow-light);padding:4px 8px}.image-controls-bottom{background:#fffffff2;border:1px solid #dddddd80}.confidence-legend{font-size:.8rem;padding:10px}.legend-items{flex-wrap:wrap;gap:8px}.legend-item{font-size:.75rem;padding:4px 8px}.verify-field-button{min-height:44px!important;min-width:44px!important;padding:8px!important;touch-action:manipulation}.field-row{margin-bottom:12px}.field-label{font-size:.9rem;margin-bottom:8px}.field-input{font-size:16px;min-height:44px;padding:10px 12px;touch-action:manipulation}.confidence-badge{font-size:.8rem;min-height:32px;min-width:44px;padding:6px 10px;touch-action:manipulation}.extracted-data.empty,.extracted-data.loading{height:400px}.loading-container{max-width:280px;padding:15px}}@media (max-width:480px){.App,.dashboard{padding:5px}.nav-container{align-items:center;flex-direction:column;gap:10px;padding:10px 5px}.nav-brand h1{font-size:1rem}.scorecard-grid{gap:8px;grid-template-columns:repeat(2,1fr)}.score-item{align-items:center;flex-direction:row;justify-content:space-between;padding:12px}.score-content{text-align:left}.score-value{font-size:1.3rem}.score-label{font-size:.8rem}.dashboard-content{padding:10px}.table-container{margin:0 -5px}.data-table td,.data-table th{font-size:.75rem;padding:2px 4px}.data-table .description-cell{max-width:150px;min-width:120px}.extract-button-container{align-items:stretch;box-sizing:border-box;flex-direction:column;gap:8px;padding:0 3px;width:100%}.extract-button{font-size:.85rem;height:42px;min-width:0;min-width:auto;padding:8px 14px;width:100%}.navigation-controls{flex-direction:row;gap:10px;justify-content:center;margin-top:8px}.nav-btn{border-radius:50%!important;font-size:1.1rem!important;height:45px!important;width:45px!important}.data-panel,.document-panel{box-sizing:border-box;overflow-x:hidden;padding:8px;width:100%}.data-panel h2,.document-panel h2{font-size:1rem;margin-bottom:10px}.content-section{gap:10px}.image-container{box-sizing:border-box;margin:0 auto;max-height:450px!important;min-height:280px!important;width:100%!important}.document-content{overflow-x:hidden;padding:0;width:100%}.image-wrapper{max-width:100%;width:100%}.image-wrapper img{height:auto;max-width:100%}.image-controls{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#fff9;border:1px solid #dddddd80;bottom:5px;left:50%;min-width:auto;position:absolute;transform:translateX(-50%);z-index:20}.image-controls,.image-controls-bottom{border-radius:15px;box-shadow:0 1px 4px #0000001a;padding:2px 4px}.image-controls-bottom{background:#fffffff2;border:1px solid #dddddd80}.zoom-controls{flex-wrap:nowrap;gap:2px;padding:1px}.zoom-controls,.zoom-controls button{align-items:center;justify-content:center}.zoom-controls button{border-radius:10px;display:flex;font-size:.6rem;height:20px;min-width:40px;padding:1px 4px;touch-action:manipulation}.zoom-level{font-size:.6rem;min-width:25px;padding:1px 2px}.confidence-legend{font-size:.7rem;padding:8px}.legend-item{font-size:.65rem;padding:3px 6px}.file-details{font-size:.8rem}.verify-field-button{min-height:40px!important;min-width:40px!important;padding:6px!important}.field-input{font-size:16px;min-height:40px;padding:8px 10px}.confidence-badge{font-size:.7rem;min-height:28px;min-width:40px;padding:4px 8px}.field-label{font-size:.8rem;margin-bottom:6px}.extracted-data.empty,.extracted-data.loading{height:400px}.loading-container{max-width:250px;padding:10px}.loading-spinner{font-size:1.5rem;margin-bottom:8px}.data-table .amount-cell,.data-table .category-cell,.data-table .date-cell{min-width:60px}.primary-btn,.secondary-btn{font-size:.9rem;padding:10px 16px}.filter-group input,.filter-group select{font-size:.9rem;padding:8px}}.header-title-tabs{display:flex;flex-direction:column;gap:10px}.filter-actions{align-items:center;display:flex;justify-content:space-between;margin-top:10px}.filter-actions-left,.filter-actions-right,.unprocessed-actions{align-items:center;display:flex;gap:10px}.unprocessed-actions{margin-bottom:15px;padding:10px 0}.bulk-verify-btn{background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.8rem;font-weight:500;padding:6px 12px;transition:all .2s ease;white-space:nowrap}.bulk-verify-btn:hover:not(:disabled){background:#0056b3}.bulk-verify-btn:disabled{background:#6c757d;cursor:not-allowed;opacity:.6}.download-files-btn{background:#28a745;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:8px 16px;transition:all .2s ease;white-space:nowrap}.download-files-btn:hover:not(:disabled){background:#218838;transform:translateY(-1px)}.download-files-btn:disabled{background:#6c757d;cursor:not-allowed;opacity:.6}.secondary-btn{background:#6c757d;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;margin-right:10px;padding:12px 24px;transition:all .3s ease}.secondary-btn:hover{background:#5a6268;transform:translateY(-1px)}.email-config-manager{bottom:0;left:0;position:fixed;right:0;top:0;z-index:1000}.email-config-manager .modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:absolute;right:0;top:0}.email-config-manager .modal-content{background:#fff;border-radius:12px;box-shadow:0 10px 30px #0000004d;max-height:90vh;max-width:1200px;overflow-y:auto;width:100%}.email-config-manager .modal-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:20px 30px}.email-config-manager .modal-header h2{color:#333;margin:0}.email-config-manager .close-btn{background:none;border:none;border-radius:4px;color:#666;cursor:pointer;font-size:24px;padding:5px;transition:background .3s ease}.email-config-manager .close-btn:hover{background:#f5f5f5}.email-config-manager .modal-body{padding:30px}.email-config-manager .config-intro{background:#f8f9fa;border-left:4px solid #007bff;border-radius:8px;margin-bottom:30px;padding:20px}.email-config-manager .config-intro p{margin:0 0 10px}.email-config-manager .config-intro p:last-child{margin-bottom:0}.email-config-manager .config-actions{margin-bottom:30px}.email-config-manager .add-config-btn{background:#28a745;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:500;padding:12px 24px;transition:background .3s ease}.email-config-manager .add-config-btn:hover:not(:disabled){background:#218838}.email-config-manager .add-config-btn:disabled{background:#6c757d;cursor:not-allowed}.email-config-manager .new-config-form{background:#f8f9fa;border:2px solid #007bff;border-radius:8px;margin-bottom:30px;padding:25px}.email-config-manager .new-config-form h3{color:#007bff;margin:0 0 20px}.email-config-manager .form-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:20px}.email-config-manager .form-field{display:flex;flex-direction:column}.email-config-manager .form-field label{color:#333;font-weight:500;margin-bottom:5px}.email-config-manager .form-field input{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:10px}.email-config-manager .form-field input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.email-config-manager .form-field small{color:#666;font-size:12px;margin-top:5px}.email-config-manager .checkbox-field{align-items:center;flex-direction:row}.email-config-manager .checkbox-field label{cursor:pointer;margin-bottom:0;margin-left:8px}.email-config-manager .checkbox-field input[type=checkbox]{margin:0;width:auto}.email-config-manager .form-actions{display:flex;gap:10px}.email-config-manager .save-btn{background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:500;padding:10px 20px}.email-config-manager .save-btn:hover{background:#0056b3}.email-config-manager .cancel-btn{background:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:10px 20px}.email-config-manager .cancel-btn:hover{background:#5a6268}.email-config-manager .configs-list h3{color:#333;margin:0 0 20px}.email-config-manager .empty-state{color:#666;padding:40px;text-align:center}.email-config-manager .configs-table{overflow-x:auto}.email-config-manager .configs-table table{background:#fff;border-collapse:collapse;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden;width:100%}.email-config-manager .configs-table th{background:#f8f9fa;border-bottom:2px solid #dee2e6;color:#333;font-weight:600;padding:15px 12px;text-align:left}.email-config-manager .configs-table td{border-bottom:1px solid #eee;padding:15px 12px}.email-config-manager .configs-table tr:hover{background:#f8f9fa}.email-config-manager .configs-table tr.inactive{opacity:.6}.email-config-manager .user-info strong{color:#333;display:block}.email-config-manager .user-info small{color:#666;font-size:12px}.email-config-manager .configs-table code{background:#f1f3f4;border-radius:4px;font-family:Courier New,monospace;font-size:13px;padding:4px 8px}.email-config-manager .status-badge{border-radius:4px;font-size:12px;font-weight:500;padding:4px 8px}.email-config-manager .status-badge.active{background:#d4edda;color:#155724}.email-config-manager .status-badge.inactive{background:#f8d7da;color:#721c24}.email-config-manager .auto-process-badge{border-radius:4px;font-size:12px;font-weight:500;padding:4px 8px}.email-config-manager .auto-process-badge.enabled{background:#d1ecf1;color:#0c5460}.email-config-manager .auto-process-badge.disabled{background:#fff3cd;color:#856404}.email-config-manager .last-email{color:#333;font-size:12px}.email-config-manager .no-email{color:#999;font-size:12px;font-style:italic}.email-config-manager .action-buttons{display:flex;gap:5px}.email-config-manager .toggle-btn{background:none;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px;padding:6px 8px;transition:all .3s ease}.email-config-manager .toggle-btn:hover{background:#f8f9fa;border-color:#007bff}.email-config-manager .delete-btn{background:none;border:1px solid #dc3545;border-radius:4px;color:#dc3545;cursor:pointer;font-size:14px;padding:6px 8px;transition:all .3s ease}.email-config-manager .delete-btn:hover{background:#dc3545;color:#fff}.source-badge{border-radius:3px;display:inline-block;font-size:12px;margin-left:5px;padding:2px 4px;vertical-align:middle}.source-badge.email{background:#e3f2fd;border:1px solid #1976d2;color:#1976d2}.status-cell{align-items:center;display:flex;gap:5px}.export-dropdown{display:inline-block;margin-left:10px;position:relative}.export-btn{background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.8rem;font-weight:500;margin:0;padding:4px 8px;transition:all .2s ease;white-space:nowrap}.export-btn:hover:not(:disabled){background:#0056b3}.export-btn:disabled{background:#6c757d;cursor:not-allowed;opacity:.6}.export-menu{background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 12px #00000026;margin-top:5px;min-width:220px;position:absolute;right:0;top:100%;z-index:1000}.export-menu-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #eee;border-radius:8px 8px 0 0;color:#333;display:flex;font-weight:600;justify-content:space-between;padding:12px 16px}.close-menu-btn{align-items:center;background:none;border:none;border-radius:50%;color:#666;cursor:pointer;display:flex;font-size:18px;height:20px;justify-content:center;padding:0;transition:background .3s ease;width:20px}.close-menu-btn:hover{background:#e9ecef}.export-option{align-items:flex-start;background:none;border:none;cursor:pointer;display:flex;flex-direction:column;padding:12px 16px;text-align:left;transition:background .3s ease;width:100%}.export-option:hover{background:#f8f9fa}.export-option:last-child{border-radius:0 0 8px 8px}.export-option small{color:#666;font-size:12px;margin-top:2px}.bulk-process-btn{background:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:8px 16px;transition:background .2s ease;white-space:nowrap}.bulk-process-btn:hover:not(:disabled){background:#0056b3}.bulk-process-btn:disabled{background:#6c757d;cursor:not-allowed;opacity:.6}.tabs{border-bottom:2px solid #e0e0e0;display:flex;margin-bottom:20px;width:100%}.tab{border-bottom:3px solid #0000;font-size:1rem}.tab:hover{color:#6c757d}.tab.active{border-bottom-color:#007bff}.unprocessed-table .data-table tbody tr.unprocessed{background:#fff9f0;border-left:4px solid #ff9500}.unprocessed-table .file-info{display:flex;flex-direction:column;gap:2px}.unprocessed-table .file-name{color:#333;font-weight:500}.unprocessed-table .file-size{color:#666;font-size:.8rem}.unprocessed-table .process-btn{background:#28a745;border:1px solid #28a745;color:#fff}.unprocessed-table .process-btn:hover{background:#218838;border-color:#218838}.pdf-page-navigation{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;display:flex;flex-direction:column;gap:12px;margin:16px 0;padding:16px}.pdf-page-navigation .page-counter{align-items:center;color:#333;display:flex;font-weight:600;gap:8px}.pdf-page-navigation .pdf-icon{font-size:1rem}.pdf-page-navigation .page-controls{align-items:center;display:flex;flex-wrap:wrap;gap:16px}.pdf-page-navigation .page-btn{background:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;padding:8px 16px;transition:background .3s ease}.pdf-page-navigation .page-btn:hover:not(:disabled){background:#0056b3}.pdf-page-navigation .page-btn:disabled{background:#ccc;cursor:not-allowed}.pdf-page-navigation .page-thumbnails{display:flex;flex-wrap:wrap;gap:8px;max-width:100%;overflow-x:auto;padding:4px}.pdf-page-navigation .page-thumbnail{align-items:center;background:#fff;border:2px solid #ddd;border-radius:6px;cursor:pointer;display:flex;flex-direction:column;gap:4px;min-width:50px;padding:4px;transition:all .3s ease}.pdf-page-navigation .page-thumbnail:hover{border-color:#007bff;box-shadow:0 2px 8px #007bff33}.pdf-page-navigation .page-thumbnail.active{background:#e7f1ff;border-color:#007bff;box-shadow:0 2px 8px #007bff4d}.pdf-page-navigation .page-thumbnail img{border-radius:3px;display:block}.pdf-page-navigation .page-number{color:#666;font-size:.75rem;font-weight:600}.pdf-page-navigation .page-thumbnail.active .page-number{color:#007bff}.pdf-indicator{background:#e7f1ff;border:1px solid #b3d7ff;border-radius:12px;color:#007bff;font-size:.8rem;font-weight:500;margin-left:12px;padding:4px 8px}@media (max-width:768px){.pdf-page-navigation .page-controls{flex-direction:column;gap:12px}.pdf-page-navigation .page-thumbnails{justify-content:center}}.duplicate-warning-banner{align-items:center;background:#fffacd;border:1px solid #ffc107;border-left:4px solid #ff9500;border-radius:6px;box-shadow:0 2px 4px #ffc1071a;display:flex;gap:12px;margin:16px 0;padding:12px 16px}.duplicate-warning-banner .warning-icon{flex-shrink:0;font-size:1rem}.duplicate-warning-banner .warning-content{display:flex;flex-direction:column;gap:4px}.duplicate-warning-banner .warning-content strong{color:#b8860b;font-size:1rem;font-weight:600}.duplicate-warning-banner .warning-details{color:#8b7500;font-size:.9rem;line-height:1.3}.receipt-table .data-table tbody tr.has-duplicates{border-left:3px solid #ffc107}.receipt-table .data-table tbody tr.has-duplicates:hover{background:#fff8dc!important;cursor:pointer}.receipt-table .data-table tbody tr.duplicate-highlighted{background:#fffacd!important;border-left:3px solid #ff9500;box-shadow:0 2px 4px #ff950033;transition:background-color .2s ease,box-shadow .2s ease}.unprocessed-table .data-table tbody tr.has-duplicates{border-left:3px solid #ffc107}.unprocessed-table .data-table tbody tr.has-duplicates:hover{background:#fff8dc!important;cursor:pointer}.unprocessed-table .data-table tbody tr.duplicate-highlighted{background:#fffacd!important;border-left:3px solid #ff9500;box-shadow:0 2px 4px #ff950033;transition:background-color .2s ease,box-shadow .2s ease}.popup-overlay{align-items:center;background-color:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:10000}.popup-content{background:#fff;border-radius:12px;box-shadow:0 10px 30px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:900px;overflow:hidden;width:100%}.popup-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:20px 24px}.popup-header h2{color:#333;font-size:1.3rem;margin:0}.close-button{background:none;border:none;border-radius:4px;color:#666;cursor:pointer;font-size:1.3rem;padding:4px 8px;transition:background-color .2s}.close-button:hover{background-color:#e0e0e0}.popup-body{flex:1 1;overflow-y:auto;padding:24px}.preview-section{margin-bottom:24px}.preview-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.preview-section h3{border-bottom:2px solid #e0e0e0;color:#333;font-size:1rem;margin:0;padding-bottom:4px}.zoom-controls{background:#f1f3f4;border-radius:20px;gap:8px;padding:6px 12px}.zoom-btn,.zoom-controls{align-items:center;border:1px solid #dadce0;display:flex}.zoom-btn{background:#fff;border-radius:4px;cursor:pointer;font-size:.85rem;height:30px;justify-content:center;min-width:30px;padding:4px 8px;transition:all .2s ease}.zoom-btn:hover:not(:disabled){background:#f8f9fa;border-color:#5f6368;transform:translateY(-1px)}.zoom-btn:disabled{background:#f8f9fa;cursor:not-allowed;opacity:.5}.zoom-level{color:#5f6368;font-size:.8rem;font-weight:500;min-width:45px;text-align:center}.file-preview{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;justify-content:center;max-height:500px;min-height:200px;overflow:auto;padding:16px}.preview-container{display:inline-block;position:relative;transition:all .2s ease-in-out;width:100%}.preview-container.zoomed{overflow:visible;width:auto}.pdf-preview-wrapper{overflow:hidden;width:100%}.status-indicator{position:absolute;right:12px;top:12px;z-index:10}.status-icon{align-items:center;border-radius:50%;box-shadow:0 2px 4px #0003;cursor:help;display:flex;font-size:16px;height:32px;justify-content:center;width:32px}.status-icon.verified{background-color:#28a745;color:#fff}.status-icon.extracted{background-color:#ffc107;color:#333}.preview-loading,.preview-unavailable{align-items:center;color:#666;display:flex;flex-direction:column;gap:12px}.preview-unavailable div{font-size:3rem;opacity:.5}.details-section,.line-items-section,.metadata-section{margin-bottom:24px}.details-section h3,.line-items-section h3,.metadata-section h3{border-bottom:2px solid #e0e0e0;color:#333;font-size:1rem;margin:0 0 12px;padding-bottom:4px}.details-grid{grid-gap:8px 16px;align-items:center;display:grid;gap:8px 16px;grid-template-columns:auto 1fr}.detail-row{display:contents}.detail-row label{color:#555;font-weight:600;white-space:nowrap}.detail-row span{color:#333;word-break:break-word}.detail-row span.amount{color:#2e7d32;font-weight:600}.line-items-table table{border:1px solid #e0e0e0;border-collapse:collapse;width:100%}.line-items-table td,.line-items-table th{border-bottom:1px solid #e0e0e0;padding:8px 12px;text-align:left}.line-items-table th{background-color:#f5f5f5;color:#333;font-weight:600}.line-items-table tr:hover{background-color:#f8f9fa}.category-badge{display:inline-block}@keyframes receiptBorderPulse{0%,to{box-shadow:0 0 10px #007bff80;opacity:.8}50%{box-shadow:0 0 15px #007bffcc;opacity:1}}.receipt-mode-border{animation:receiptBorderPulse 2s ease-in-out infinite}@media (max-width:767px){.desktop-only-chat{display:none!important}}@media (max-width:768px){input[type=date],input[type=email],input[type=number],input[type=tel],input[type=text],select,textarea{border-radius:8px;border-radius:var(--border-radius-large);font-size:16px;min-height:44px;min-height:var(--mobile-touch-target);padding:12px 16px;transition:all .2s cubic-bezier(.4,0,.2,1);transition:all var(--mobile-transition)}input:focus,select:focus,textarea:focus{box-shadow:0 2px 8px #00000026;box-shadow:var(--shadow-medium);transform:scale(1.01)}}.mobile-button-group{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-radius:20px 20px 0 0;bottom:0;box-shadow:0 -4px 20px #0000001a;display:flex;gap:12px;left:0;padding:16px;position:fixed;right:0;z-index:999}.mobile-button-group button{border-radius:8px;border-radius:var(--border-radius-large);flex:1 1;font-weight:600;min-height:44px;min-height:var(--button-size-large);touch-action:manipulation;transition:all .3s cubic-bezier(.175,.885,.32,1.275);transition:all var(--mobile-spring)}.mobile-button-group button:active{transform:scale(.95)}.mobile-loading-overlay{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff2;bottom:0;display:flex;flex-direction:column;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1001}.mobile-loading-spinner{animation:spin 1s linear infinite;border:4px solid #e5e7eb;border-radius:50%;border-top-color:#3b82f6;height:60px;width:60px}.mobile-loading-text{color:#6b7280;font-size:1.1rem;font-weight:500;margin-top:20px;text-align:center}.mobile-toast{animation:toastSlide .4s cubic-bezier(.175,.885,.32,1.275) .3s;animation:toastSlide .4s var(--mobile-spring);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#000000e6;border-radius:8px;border-radius:var(--border-radius-large);bottom:140px;bottom:calc(var(--thumb-zone-height) + 20px);color:#fff;font-size:1rem;font-weight:500;left:20px;padding:16px 20px;position:fixed;right:20px;text-align:center;z-index:1002}@keyframes toastSlide{0%{opacity:0;transform:translateY(100px)}to{opacity:1;transform:translateY(0)}}.mobile-toast.success{background:#22c55ef2}.mobile-toast.error{background:#ef4444f2}.mobile-toast.warning{background:#f59e0bf2;color:#000}.swipe-container{-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y}.swipe-item{transform:translateX(0);transition:transform .2s cubic-bezier(.4,0,.2,1);transition:transform var(--mobile-transition)}.swipe-item.swiping{transition:none}@media (max-width:768px){.field-highlight{animation:mobileFieldPulse 2s ease-in-out infinite;border-radius:6px;border-radius:var(--border-radius-medium);border-width:3px;min-height:44px;min-height:var(--mobile-touch-target);min-width:44px;min-width:var(--mobile-touch-target)}@keyframes mobileFieldPulse{0%,to{opacity:.8;transform:scale(1)}50%{opacity:.5;transform:scale(1.02)}}}@media (max-width:768px){.scrollable-content{-webkit-overflow-scrolling:touch;max-height:calc(100vh - 180px);max-height:calc(100vh - var(--thumb-zone-height) - 60px);overflow-y:auto;padding-bottom:20px}.main-content{padding-bottom:140px;padding-bottom:calc(var(--thumb-zone-height) + 20px)}}.loading-container{gap:12px}.loading-circle{border-radius:50%;display:inline-block;position:relative}.loading-small .loading-circle{height:24px;width:24px}.loading-medium .loading-circle{height:40px;width:40px}.loading-large .loading-circle{height:60px;width:60px}.loading-dot{animation:loading-spin 1.2s linear infinite;background-color:#3498db;border-radius:50%;height:3px;position:absolute;width:3px}.loading-small .loading-dot{height:2px;width:2px}.loading-medium .loading-dot{height:3px;width:3px}.loading-large .loading-dot{height:4px;width:4px}.loading-dot:first-child{animation-delay:0s;left:50%;top:0;transform:translate(-50%,-50%)}.loading-dot:nth-child(2){animation-delay:.15s;right:14.6%;top:14.6%;transform:translate(50%,-50%)}.loading-dot:nth-child(3){animation-delay:.3s;right:0;top:50%;transform:translate(50%,-50%)}.loading-dot:nth-child(4){animation-delay:.45s;bottom:14.6%;right:14.6%;transform:translate(50%,50%)}.loading-dot:nth-child(5){animation-delay:.6s;bottom:0;left:50%;transform:translate(-50%,50%)}.loading-dot:nth-child(6){animation-delay:.75s;bottom:14.6%;left:14.6%;transform:translate(-50%,50%)}.loading-dot:nth-child(7){animation-delay:.9s;left:0;top:50%;transform:translate(-50%,-50%)}.loading-dot:nth-child(8){animation-delay:1.05s;left:14.6%;top:14.6%;transform:translate(-50%,-50%)}@keyframes loading-spin{0%{opacity:1}50%{opacity:.3}to{opacity:1}}.loading-text{color:#666;font-size:14px;font-weight:500;text-align:center}.loading-small .loading-text{font-size:12px}.loading-medium .loading-text{font-size:14px}.loading-large .loading-text{font-size:16px}@media (prefers-color-scheme:dark){.loading-dot{background-color:#5dade2}.loading-text{color:#aaa}}.auth-container{align-items:center;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);display:flex;justify-content:center;min-height:100vh;padding:20px}.auth-card{background:#fff;border:1px solid #e0e0e0;border-radius:12px;box-shadow:0 8px 32px #0000001a;margin:0 auto;max-width:420px;padding:40px;width:100%}.auth-header{margin-bottom:30px;text-align:center}.auth-header h1{color:#2c3e50;font-size:28px;font-weight:600;letter-spacing:-.5px;margin-bottom:10px}.auth-header p{color:#7f8c8d;font-size:15px;line-height:1.5;margin:0}.auth-form{display:flex;flex-direction:column;gap:20px}.error-message{align-items:center;background:#ffe6e6;border:1px solid #ffbaba;border-radius:8px;color:#d63031;display:flex;font-size:14px;gap:8px;padding:12px}.error-icon{flex-shrink:0;font-size:16px}.form-group{gap:6px}.form-row{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr 1fr}.form-group label{color:#2c3e50;font-weight:500}.form-group input,.form-group textarea{background:#fff;border:1px solid #ddd;border-radius:8px;color:#2c3e50;font-size:15px;padding:14px 16px;transition:all .3s ease}.form-group input::placeholder,.form-group textarea::placeholder{color:#95a5a6}.form-group input:focus,.form-group textarea:focus{background:#fff;border-color:#3498db;box-shadow:0 0 0 2px #3498db33;outline:none}.form-group textarea{font-family:inherit;min-height:80px;resize:vertical}.password-input-container{align-items:center;display:flex;position:relative}.password-input-container input{padding-right:45px;width:100%}.password-toggle{background:none;border:none;color:#7f8c8d;cursor:pointer;font-size:18px;padding:4px;position:absolute;right:16px;transition:all .2s}.password-toggle:hover{color:#3498db;transform:scale(1.1)}.password-hint{color:#7f8c8d;font-size:12px;margin-top:6px}.auth-submit-btn{background:linear-gradient(135deg,#3498db,#2980b9);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-top:10px;padding:16px 24px;transition:all .3s ease}.auth-submit-btn:hover:not(:disabled){box-shadow:0 8px 25px #3498db4d;transform:translateY(-2px)}.auth-submit-btn:active{transform:translateY(0)}.auth-submit-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.5;transform:none}.loading-spinner{align-items:center;display:flex;gap:8px;justify-content:center}.auth-footer{border-top:1px solid #e0e0e0;margin-top:30px;padding-top:20px;text-align:center}.auth-footer p{color:#7f8c8d;font-size:14px;margin:0}.auth-toggle-btn{background:none;border:none;color:#3498db;cursor:pointer;font-size:14px;font-weight:500;padding:0;text-decoration:none;transition:all .2s}.auth-toggle-btn:hover{color:#2980b9;text-decoration:underline}@media (max-width:640px){.auth-container{padding:10px}.auth-card{padding:30px 20px}.auth-header h1{font-size:24px}.form-row{gap:20px;grid-template-columns:1fr}.form-group input,.form-group textarea{font-size:16px}}.auth-submit-btn:focus-visible,.auth-toggle-btn:focus-visible,.password-toggle:focus-visible{outline:2px solid #3498db;outline-offset:2px}.loading-spinner:before{animation:spin 1s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;content:"";height:18px;margin-right:8px;width:18px}.records-container{background:#f8f9fa;border-radius:8px;overflow:hidden;width:100%}.bulk-actions-header{align-items:center;background:#fff;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:0;padding:15px 20px}.select-all-section{align-items:center;color:#666;display:flex;font-size:14px;gap:10px}.select-all-section input[type=checkbox]{cursor:pointer;height:18px;width:18px}.bulk-actions{display:flex;gap:10px}.bulk-action-btn{background:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px;transition:background-color .2s ease}.bulk-action-btn:hover{background:#0056b3}.desktop-table-view{background:#fff;display:block}.records-table{border-collapse:collapse;font-size:14px;width:100%}.records-table th{background:#f8f9fa;border-bottom:2px solid #dee2e6;color:#495057;font-weight:600;padding:12px 16px;text-align:left;white-space:nowrap}.records-table td{border-bottom:1px solid #e9ecef;padding:12px 16px;vertical-align:middle}.records-table tr{transition:background-color .15s ease}.records-table tr:hover{background:#f8f9fa}.records-table tr.selected{background:#e3f2fd}.records-table tr.verified{border-left:4px solid #28a745}.records-table tr.unverified{border-left:4px solid #ffc107}.records-table tr.has-duplicates{background:#fff8e1!important;border-left:4px solid #ff9800}.records-table tr.duplicate-highlighted{background:#ffecb3!important;border-left:4px solid #f57c00;box-shadow:0 2px 8px #ff98004d}.records-table tr.duplicate{background:#fff5f5;border-left:4px solid #dc3545}.table-checkbox{cursor:pointer;height:18px;width:18px}.table-source-icon{font-size:18px;min-width:24px}.table-status-badge{font-size:16px}.table-date{color:#6c757d;font-size:13px}.table-vendor{color:#495057;font-weight:600;max-width:400px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-amount{color:#2c5aa0;font-weight:700;text-align:right}.table-gst{color:#6c757d;font-size:12px;text-align:right}.table-category{font-size:12px;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-actions{gap:4px}.table-action-btn,.table-actions{display:flex;justify-content:center}.table-action-btn{align-items:center;background:#0000;border:none;border-radius:4px;cursor:pointer;font-size:14px;height:28px;opacity:.7;transition:all .2s ease;width:28px}.table-action-btn:hover{opacity:1;transform:scale(1.1)}.mobile-card-view{display:none}@media (min-width:769px){.desktop-table-view{display:block}.mobile-card-view{display:none}}.records-grid{grid-gap:16px;background:#f8f9fa;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));padding:20px}.record-card,.records-grid{box-sizing:border-box;width:100%}.record-card{background:#fff;border:1px solid #e0e0e0;border-radius:0;box-shadow:0 1px 3px #0000001a;cursor:pointer;max-width:100%;overflow:hidden;padding:16px;position:relative;transition:all .2s ease}.record-card:hover{border-color:#007bff;box-shadow:0 4px 12px #007bff26;transform:translateY(-1px)}.record-card.selected{background:#f8f9ff;border-color:#007bff}.record-card.verified{border-left:4px solid #28a745}.record-card.unverified{border-left:4px solid #ffc107}.record-card.duplicate{background:#fff5f5;border-left:4px solid #dc3545}.record-card.has-duplicates{background:#fff8e1;border-left:4px solid #ff9800}.record-card.duplicate-highlighted{background:#ffecb3;border-left:4px solid #f57c00;box-shadow:0 4px 16px #ff98004d;transform:translateY(-2px)}.record-content{display:flex;flex-direction:column;gap:10px;margin-left:30px;margin-right:60px}.record-row{align-items:center;display:flex;gap:12px}.record-row.row-1{align-items:center;gap:8px;justify-content:flex-start;max-width:calc(100% - 80px);overflow:hidden}.source-icon{font-size:20px;min-width:24px}.source-with-badge{align-items:center;display:inline-flex;gap:3px;position:relative}.inline-status-badge{border-radius:6px;font-size:8px;font-weight:700;line-height:1;padding:1px 3px}.inline-status-badge.verified{background-color:#28a745;color:#fff}.inline-status-badge.unverified{background-color:#ffc107;color:#333}.status-indicator{align-items:center;display:flex}.status-badge{border-radius:12px;font-size:10px;padding:3px 8px;white-space:nowrap}.status-badge.verified{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.status-badge.unverified{background-color:#fff3cd;border:1px solid #ffeaa7;color:#856404}.record-date{color:#666;flex-shrink:0;font-size:11px;font-weight:500;white-space:nowrap}.record-row.row-2{min-height:24px}.vendor-name{color:#333;flex:1 1;font-size:16px;font-weight:600;line-height:1.3;max-width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.record-row.row-3{align-items:flex-end;justify-content:space-between}.amount-section{display:flex;flex-direction:column;gap:2px}.total-amount{color:#2c5aa0;font-size:18px;font-weight:700}.gst-amount{color:#666;font-size:11px;font-weight:500}.category-badge{flex-shrink:1;font-size:.7rem;font-weight:500;max-width:160px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.record-select{left:12px;position:absolute;top:12px;z-index:10}.record-select input[type=checkbox]{cursor:pointer;height:16px;width:16px}.record-actions{display:flex;flex-direction:column;gap:6px;position:absolute;right:12px;top:12px}.action-btn{background:var(--gradient-neutral);border:1px solid #dee2e6;border-radius:var(--border-radius-button);font-size:1rem;height:var(--button-size-large);min-width:var(--button-size-large);touch-action:manipulation;width:var(--button-size-large)}.action-btn:hover{box-shadow:var(--shadow-light);transform:translateY(-1px)}.edit-btn{background:var(--gradient-primary);border-color:#2196f3;color:#1976d2}.edit-btn:hover{background:linear-gradient(135deg,#bbdefb,#90caf9);border-color:#1976d2}.view-btn{background:var(--gradient-secondary);border-color:#9c27b0;color:#7b1fa2}.view-btn:hover{background:linear-gradient(135deg,#e1bee7,#ce93d8);border-color:#7b1fa2}.download-btn{background:var(--gradient-success);border-color:#4caf50;color:#388e3c}.download-btn:hover{background:linear-gradient(135deg,#c8e6c9,#a5d6a7);border-color:#388e3c}.delete-btn{background:var(--gradient-danger);border-color:#f44336;color:#c62828}.delete-btn:hover{background:linear-gradient(135deg,#ffcdd2,#ef9a9a);border-color:#c62828}.records-summary{background:#fff;border-top:1px solid #e0e0e0;justify-content:space-around;margin-top:0;padding:15px 20px}.records-summary,.summary-item{align-items:center;display:flex}.summary-item{flex-direction:column;gap:4px}.summary-label{color:#666;font-size:12px;font-weight:500}.summary-value{color:#333;font-size:16px;font-weight:700}@media (max-width:768px){.desktop-table-view{display:none}.mobile-card-view{display:block}.records-grid{gap:12px;grid-template-columns:1fr;max-width:100vw;overflow-x:hidden;padding:15px}.record-card{padding:14px}.record-content{box-sizing:border-box;margin-left:30px;margin-right:50px;max-width:calc(100% - 80px)}.bulk-actions-header{align-items:flex-start;flex-direction:column;gap:10px;padding:12px 15px}.records-summary{padding:12px 15px}.summary-item{gap:2px}.summary-label{font-size:11px}.summary-value{font-size:14px}.record-actions{right:10px;top:10px}.action-btn{font-size:12px;height:var(--button-size-medium);min-width:var(--button-size-medium);width:var(--button-size-medium)}}@media (max-width:480px){.records-grid{gap:10px;max-width:100vw;overflow-x:hidden;padding:10px}.record-card{padding:12px}.record-content{box-sizing:border-box;margin-left:25px;margin-right:45px;max-width:calc(100% - 70px)}.category-badge{max-width:100px;min-width:0}.vendor-name{font-size:15px}.record-date{font-size:9px}.total-amount{font-size:16px}.gst-amount{font-size:10px}.record-date{font-size:11px}.source-icon{font-size:18px}.status-badge{font-size:9px;padding:2px 6px}.record-date{font-size:10px}.bulk-actions-header{padding:10px}.records-summary{grid-gap:10px;display:grid;flex-direction:column;gap:12px;gap:10px;grid-template-columns:repeat(3,1fr);padding:15px}}.records-container.empty,.records-container.loading{align-items:center;background:#fff;display:flex;height:300px;justify-content:center}.records-container.empty{color:#666;flex-direction:column}.records-container.empty h3{color:#999;margin-bottom:10px}.record-card:hover .vendor-name{color:#007bff}.record-card:hover .total-amount{color:#0056b3}.record-card:focus{outline:2px solid #007bff;outline-offset:2px}.action-btn:focus{outline:2px solid #007bff;outline-offset:1px}.chat-widget{background:#fff;border:1px solid #e0e0e0;border-radius:12px;box-shadow:0 4px 12px #0000001a;display:flex;flex-direction:column;margin-top:20px;max-height:95vh;min-height:80vh;transition:all .3s ease}.chat-widget.collapsed{max-height:60px}.chat-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px 12px 0 0;cursor:pointer;display:flex;justify-content:space-between;padding:16px 20px;-webkit-user-select:none;user-select:none}.chat-widget.collapsed .chat-header{border-radius:12px}.chat-header-content{align-items:center;display:flex;justify-content:space-between;width:100%}.chat-title{align-items:center;font-size:1rem;font-weight:600;gap:8px}.chat-icon,.chat-toggle{font-size:1.2rem}.chat-toggle{font-weight:700}.chat-stats{margin-top:4px}.chat-body{height:600px;max-height:calc(85vh - 60px);min-height:calc(70vh - 60px)}.chat-body,.chat-messages{display:flex;flex-direction:column}.chat-messages{background:#fafafa;gap:12px;padding:16px}.chat-welcome{color:#666;padding:20px}.chat-welcome p{font-size:1rem;margin:0 0 20px}.example-questions{display:flex;flex-direction:column;gap:8px;margin:0 auto;max-width:400px}.example-questions p{color:#333;font-weight:600;margin-bottom:12px}.example-question{border-radius:8px;padding:10px 12px}.example-question:hover{background:#f0f0f0;border-color:#667eea}.message{flex-direction:column;max-width:80%}.message.user{align-items:flex-end;align-self:flex-end}.message.assistant{align-items:flex-start;align-self:flex-start}.message-content{line-height:1.4;padding:12px 16px}.message.user .message-content{background:linear-gradient(135deg,#667eea,#764ba2)}.message-meta{color:#666;margin-top:4px}.token-info{color:#888}.typing-indicator span{background:#667eea}.chat-input-area{border-radius:0 0 12px 12px;padding:16px}.chat-error{border-radius:6px;margin-bottom:8px;padding:8px 12px}.chat-input-container{gap:8px}.chat-input{border-radius:20px;font-size:.9rem;max-height:100px;padding:10px 12px}.chat-input:focus{border-color:#667eea}.chat-controls{gap:4px}.clear-button,.send-button{background:linear-gradient(135deg,#667eea,#764ba2);font-size:1rem;height:36px;width:36px}.clear-button:hover,.send-button:hover{box-shadow:0 2px 8px #0003;transform:scale(1.05)}.send-button:disabled{box-shadow:none}@media (max-width:767px){.chat-widget{border-radius:0;box-shadow:0 -2px 8px #0000001a;margin:15px -15px 0}.chat-header{padding:12px 15px}.chat-header,.chat-widget.collapsed .chat-header{border-radius:0}.chat-body{height:500px}.chat-messages{padding:12px}.message{max-width:90%}.example-questions{max-width:none}.chat-input-area{padding:12px}.chat-input{border-radius:16px}.clear-button,.send-button{font-size:.9rem;height:32px;width:32px}}.markdown-content code{background:#0000001a;border-radius:3px;font-family:Courier New,monospace;padding:.1em .3em}.markdown-content pre{background:#0000000d;border:1px solid #0000001a;border-radius:6px;padding:.8em}@media (min-width:768px) and (max-width:1024px){.chat-body{height:550px}}.email-management-page{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0 auto;max-width:1200px;padding:20px}.email-management-header{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:10px;box-shadow:0 4px 6px #0000001a;color:#fff;margin-bottom:30px;padding:20px;text-align:center}.email-management-header h1{font-size:2.5rem;font-weight:700;margin:0 0 10px}.email-management-header p{font-size:1.1rem;margin:0;opacity:.9}.email-management-tabs{background:#f8f9fa;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;margin-bottom:30px;padding:4px}.tab{border-radius:6px;font-weight:500;padding:12px 20px;transition:all .2s ease}.email-management-content{background:#fff;border-radius:10px;box-shadow:0 4px 6px #0000001a;margin-bottom:30px;min-height:500px;padding:30px}.loading{color:#667eea;font-size:1.2rem;padding:60px}.error{background:#fee;border:1px solid #fcc;color:#c66;padding:15px}.status-overview{background:#f8f9fa;border-radius:8px;margin-bottom:30px;padding:20px;text-align:center}.status-overview h2{font-size:1.5rem;margin:0 0 10px}.status-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.status-card{background:#f8f9fa;border-left:4px solid #667eea;border-radius:8px;padding:20px}.status-card h3{color:#333;font-size:1.1rem;margin:0 0 15px}.status-item{align-items:center;border-bottom:1px solid #e9ecef;display:flex;font-size:.95rem;justify-content:space-between;padding:8px 0}.status-item:last-child{border-bottom:none}.restart-all-btn,.restart-btn{background:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.8rem;padding:4px 8px}.restart-all-btn{margin-top:10px;padding:8px;width:100%}.restart-all-btn:hover,.restart-btn:hover{background:#c82333}.attachments-header,.logs-header,.queue-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.attachments-header h2,.logs-header h2,.queue-header h2{color:#333;margin:0}.refresh-btn{background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;padding:8px 16px}.refresh-btn:hover{background:#5a6fd8}.logs-container{background:#f8f9fa;border:1px solid #e9ecef}.log-entry{align-items:center;border-bottom:1px solid #e9ecef;font-size:.85rem}.log-entry.error{background:#fee}.log-entry.warning{background:#fff3cd}.log-timestamp{color:#666}.queue-empty{color:#28a745;font-size:1.2rem;padding:60px;text-align:center}.queue-container{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;max-height:500px;overflow-y:auto}.queue-item{border-bottom:1px solid #e9ecef;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.9rem;padding:10px 15px}.queue-item:last-child{border-bottom:none}.queue-item.header{background:#667eea;color:#fff;font-weight:700}.attachments-table{border:1px solid #e9ecef;border-radius:8px;overflow:hidden}.table-header{background:#667eea;color:#fff;font-weight:600}.table-header,.table-row{grid-gap:15px;display:grid;font-size:.9rem;gap:15px;grid-template-columns:2fr 1fr 1.5fr 1.5fr 1fr;padding:15px}.table-row{align-items:center;border-bottom:1px solid #e9ecef}.table-row:last-child{border-bottom:none}.table-row:nth-child(2n){background:#f8f9fa}.filename{color:#333}.status{font-size:.8rem;padding:4px 8px}.status.pending{background:#fff3cd;color:#856404}.status.processed{background:#d4edda;color:#155724}.status.error{background:#f8d7da;color:#721c24}.email-addresses-info{background:#fff;border-left:4px solid #28a745;border-radius:10px;box-shadow:0 4px 6px #0000001a;padding:25px}.email-addresses-info h3{color:#333;font-size:1.2rem;margin:0 0 15px}.email-addresses{display:flex;flex-wrap:wrap;gap:10px}.email-addresses span{background:#e7f3ff;border:1px solid #b3d7ff;border-radius:20px;color:#0056b3;font-size:.9rem;font-weight:500;padding:6px 12px}@media (max-width:768px){.email-management-page{padding:15px}.email-management-header h1{font-size:2rem}.email-management-tabs{flex-direction:column}.tab{margin-bottom:2px}.status-grid,.table-header,.table-row{grid-template-columns:1fr}.table-header,.table-row{gap:5px}.table-header>div,.table-row>div{padding:5px 0}.email-addresses{flex-direction:column}.email-addresses span{text-align:center}}.actions{gap:8px}.action-btn,.actions{align-items:center;display:flex;justify-content:center}.action-btn{background:#0000;border:none;border-radius:4px;cursor:pointer;font-size:14px;height:32px;min-width:32px;padding:6px 8px;transition:all .2s ease}.action-btn:hover{box-shadow:0 2px 4px #0003;transform:scale(1.1)}.action-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.action-btn:disabled:hover{box-shadow:none;transform:none}.process-btn{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff}.process-btn:hover:not(:disabled){background:linear-gradient(135deg,#45a049,#3d8b40)}.view-btn{background:linear-gradient(135deg,#2196f3,#1976d2);color:#fff}.view-btn:hover{background:linear-gradient(135deg,#1976d2,#1565c0)}.delete-btn{background:linear-gradient(135deg,#f44336,#d32f2f);color:#fff}.delete-btn:hover{background:linear-gradient(135deg,#d32f2f,#c62828)}.attachments-table .table-header,.attachments-table .table-row{grid-template-columns:2fr 1fr 2fr 1.5fr 1fr 1.5fr}@media (max-width:768px){.actions{flex-direction:column;gap:4px}.action-btn{font-size:12px;height:28px;min-width:28px}.attachments-table .table-header,.attachments-table .table-row{grid-template-columns:1fr}}.admin-email-page{background:#f5f7fa;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0 auto;max-width:1400px;min-height:100vh;padding:20px}.admin-email-header{background:linear-gradient(135deg,#2d3748,#4a5568);border-radius:12px;box-shadow:0 6px 20px #00000026;color:#fff;margin-bottom:30px;padding:25px;text-align:center}.admin-email-header h1{font-size:2.8rem;font-weight:700;margin:0 0 10px}.admin-email-header p{font-size:1.2rem;margin:0;opacity:.9}.access-denied{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;padding:100px 20px;text-align:center}.access-denied h1{color:#e53e3e;font-size:2.5rem;margin-bottom:20px}.admin-email-tabs{background:#fff;border-radius:10px;box-shadow:0 4px 6px #0000001a;display:flex;margin-bottom:30px;overflow-x:auto;padding:6px}.tab{background:none;border:none;border-radius:8px;color:#999;cursor:pointer;flex:1 1;font-size:.95rem;font-weight:600;min-width:160px;padding:14px 20px;text-align:center;transition:all .3s ease;white-space:nowrap}.tab:hover{background:#f8f9fa;color:#6b7280}.tab.active{background:#e3f2fd;box-shadow:0 2px 4px #007bff33;color:#007bff;font-weight:600}.admin-email-content{background:#fff;border-radius:12px;box-shadow:0 6px 20px #0000001a;margin-bottom:30px;min-height:600px;padding:30px}.loading{color:#2d3748;font-size:1.3rem;padding:80px;text-align:center}.error{background:#fed7d7;border:1px solid #fc8181;border-radius:8px;color:#c53030;font-weight:500;margin-bottom:20px;padding:20px}.users-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.users-header h2{color:#2d3748;font-size:1.8rem;margin:0}.create-user-btn{background:#38a169;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;padding:12px 20px;transition:all .2s ease}.create-user-btn:hover{background:#2f855a;box-shadow:0 4px 8px #38a1694d;transform:translateY(-1px)}.users-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));margin-bottom:30px}.user-card{background:#f8f9fa;border:1px solid #e2e8f0;border-radius:12px;padding:20px;transition:all .3s ease}.user-card:hover{border-color:#cbd5e0;box-shadow:0 8px 25px #0000001a;transform:translateY(-2px)}.user-info h3{color:#2d3748;font-size:1.2rem;margin:0 0 8px}.user-email{color:#4a5568;font-size:.9rem;margin:4px 0}.user-company{color:#718096;font-size:.85rem;margin:4px 0 12px}.user-role{border-radius:4px;display:inline-block;font-size:.75rem;font-weight:600;margin-right:8px;padding:4px 8px;text-transform:uppercase}.user-role.admin{background:#fed7d7;color:#c53030}.user-role.user{background:#c6f6d5;color:#2f855a}.user-status{border-radius:4px;display:inline-block;font-size:.75rem;font-weight:600;padding:4px 8px;text-transform:uppercase}.user-status.active{background:#c6f6d5;color:#2f855a}.user-status.inactive{background:#e2e8f0;color:#718096}.user-stats{border-top:1px solid #e2e8f0;display:flex;justify-content:space-between;margin:15px 0;padding:15px 0}.stat{flex:1 1;text-align:center}.stat-value{color:#2d3748;display:block;font-size:1.4rem}.stat-label{color:#718096;display:block;font-size:.75rem;margin-top:2px}.user-actions{border-top:1px solid #e2e8f0;padding-top:15px;text-align:center}.view-details-btn{background:#3182ce;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:500;padding:8px 16px;transition:all .2s ease}.view-details-btn:hover{background:#2c5282;transform:translateY(-1px)}.user-modal{align-items:center;background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-height:80vh;max-width:800px;overflow:hidden;width:90%}.modal-header{align-items:center;background:#2d3748;color:#fff;display:flex;justify-content:space-between;padding:20px 30px}.modal-header h3{font-size:1.3rem;margin:0}.close-btn{background:none;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1.5rem;padding:5px;transition:background .2s ease}.close-btn:hover{background:#ffffff1a}.modal-body{max-height:60vh;overflow-y:auto;padding:30px}.user-detail-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr 1fr;margin-bottom:30px}.detail-section h4{border-bottom:2px solid #e2e8f0;color:#2d3748;font-size:1.1rem;margin:0 0 15px;padding-bottom:8px}.detail-section p{color:#4a5568;margin:8px 0}.recent-emails h4{border-bottom:2px solid #e2e8f0;color:#2d3748;font-size:1.1rem;margin:0 0 15px;padding-bottom:8px}.emails-list{max-height:200px;overflow-y:auto}.email-item{grid-gap:15px;align-items:center;border-bottom:1px solid #e2e8f0;display:grid;font-size:.9rem;gap:15px;grid-template-columns:2fr 1fr 1fr 1fr;padding:10px 0}.email-item:last-child{border-bottom:none}.filename{color:#2d3748;font-weight:500}.status{border-radius:4px;font-size:.75rem;font-weight:500;padding:2px 6px;text-align:center}.status.pending{background:#faf089;color:#744210}.status.processed{background:#9ae6b4;color:#22543d}.status.error{background:#fed7d7;color:#c53030}.system-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:30px}.system-card{background:#f8f9fa;border-left:4px solid #3182ce;border-radius:10px;padding:20px}.system-card h3{color:#2d3748;font-size:1.1rem;margin:0 0 15px}.service-detail h4{color:#4a5568;font-size:1rem;margin:15px 0 8px}.service-details{margin-left:20px}.service-detail-line{color:#718096;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.85rem;margin:4px 0}.metric{border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:8px 0}.metric:last-child{border-bottom:none}.metric-label{color:#4a5568;font-weight:500}.metric-value{color:#2d3748;font-weight:600}.configuration-section{margin-top:30px}.configuration-section h3{color:#2d3748;font-size:1.3rem;margin:0 0 20px}.config-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.config-card{background:#f8f9fa;border:1px solid #e2e8f0;border-radius:10px;padding:20px}.config-card h4{color:#2d3748;margin:0 0 15px}.config-content{background:#2d3748;border-radius:6px;max-height:300px;overflow-y:auto;padding:15px}.config-line{color:#a0aec0;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.8rem;margin:2px 0}.analytics-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.analytics-card{background:#f8f9fa;border-left:4px solid #38a169;border-radius:10px;padding:20px}.analytics-card h3{color:#2d3748;font-size:1.1rem;margin:0 0 15px}.volume-chart{max-height:300px;overflow-y:auto}.volume-day{border-bottom:1px solid #e2e8f0;padding:10px 0}.volume-day:last-child{border-bottom:none}.day-date{color:#2d3748;font-weight:600;margin-bottom:5px}.day-stats{display:flex;font-size:.85rem;gap:15px}.day-stats span{border-radius:4px;font-weight:500;padding:2px 6px}.day-stats .total{background:#bee3f8;color:#2c5282}.day-stats .processed{background:#c6f6d5;color:#22543d}.day-stats .pending{background:#faf089;color:#744210}.day-stats .errors{background:#fed7d7;color:#c53030}.processing-stats{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}.user-activity{max-height:300px;overflow-y:auto}.activity-item{border-bottom:1px solid #e2e8f0;padding:10px 0}.activity-item:last-child{border-bottom:none}.activity-user{color:#2d3748;font-weight:600;margin-bottom:5px}.activity-stats{color:#4a5568;display:flex;font-size:.85rem;gap:15px}.error-analysis{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.logs-info{background:#f8f9fa;border-radius:8px;color:#4a5568;margin-bottom:20px;padding:15px}.logs-container{background:#2d3748;border:1px solid #e2e8f0;border-radius:8px;max-height:500px;overflow-y:auto}.log-entry{align-items:flex-start;border-bottom:1px solid #4a5568;color:#a0aec0;display:flex;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.8rem;padding:8px 12px}.log-entry:last-child{border-bottom:none}.log-entry.error{background:#f565651a}.log-entry.warning{background:#ecc94b1a}.log-icon{font-size:.9rem;margin-right:8px}.log-service{color:#63b3ed;font-weight:600}.log-service,.log-timestamp{margin-right:12px;min-width:120px}.log-timestamp{color:#81c784;font-weight:500}.log-message{flex:1 1;word-break:break-word}.maintenance-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.maintenance-card{background:#f8f9fa;border-left:4px solid #d69e2e;border-radius:10px;padding:20px}.maintenance-card h3{color:#2d3748;font-size:1.1rem;margin:0 0 15px}.maintenance-btn{background:#d69e2e;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;margin:8px 0;padding:12px 16px;transition:all .2s ease;width:100%}.maintenance-btn:hover{background:#b7791f;box-shadow:0 4px 8px #d69e2e4d;transform:translateY(-1px)}@media (max-width:768px){.admin-email-page{padding:15px}.admin-email-header h1{font-size:2rem}.admin-email-tabs{flex-direction:column}.tab{margin-bottom:2px;min-width:auto}.config-grid,.user-detail-grid,.users-grid{grid-template-columns:1fr}.processing-stats{grid-template-columns:repeat(2,1fr)}.analytics-grid,.error-analysis,.maintenance-grid,.system-grid{grid-template-columns:1fr}.modal-content{margin:20px;width:95%}.modal-body{padding:20px}.email-item{gap:5px;grid-template-columns:1fr}}.email-setup-container{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0 auto;max-width:1200px;min-height:100vh;padding:20px}.email-setup-header{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;margin-bottom:30px;padding:20px;text-align:center}.email-setup-header h1{color:#2c3e50;font-size:2.5rem;font-weight:700;margin:0 0 10px}.email-setup-header p{color:#7f8c8d;font-size:1.1rem;margin:0}.email-setup-grid,.email-setup-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));margin-bottom:30px}.email-card{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.email-card:hover{box-shadow:0 8px 25px #00000026;transform:translateY(-2px)}.card-header{background:#f8f9fa;border-bottom:1px solid #ecf0f1;padding:20px 20px 10px}.card-header h2{color:#2c3e50;font-size:1.3rem;font-weight:600;margin:0}.card-content{padding:20px}.email-display{display:flex;gap:10px;margin-bottom:15px}.email-input{background:#fff5f5;border:2px solid #e74c3c;border-radius:8px;color:#2c3e50;flex:1 1;font-family:Courier New,monospace;font-weight:600;outline:none}.copy-button,.email-input{font-size:1rem;padding:12px 15px}.copy-button{background:#3498db;border:none;border-radius:8px;color:#fff;cursor:pointer;transition:background .2s ease}.copy-button:hover{background:#2980b9}.email-instructions{color:#7f8c8d;font-size:.95rem;line-height:1.5;margin:0}.email-instructions strong{color:#e74c3c}.toggle-group{display:flex;flex-direction:column;gap:20px}.toggle-item,.toggle-label{align-items:center;display:flex}.toggle-label{cursor:pointer;justify-content:space-between;width:100%}.toggle-text{display:flex;flex-direction:column;gap:5px}.toggle-text strong{color:#2c3e50;font-size:1rem}.toggle-text small{color:#7f8c8d;font-size:.85rem}.toggle-switch{height:30px;position:relative;width:60px}.toggle-switch input{height:0;opacity:0;width:0}.toggle-slider{background-color:#bdc3c7;border-radius:30px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.3s}.toggle-slider:before{background-color:#fff;border-radius:50%;bottom:4px;box-shadow:0 2px 4px #0003;content:"";height:22px;left:4px;position:absolute;transition:.3s;width:22px}.toggle-switch.enabled .toggle-slider{background-color:#27ae60}.toggle-switch.enabled .toggle-slider:before{transform:translateX(30px)}.toggle-switch input:disabled+.toggle-slider{cursor:not-allowed;opacity:.5}.updating-indicator{background:#f8f9fa;color:#7f8c8d;font-size:.9rem;gap:10px}.stats-grid{grid-gap:20px;gap:20px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.stat-item{background:#f8f9fa;border:2px solid #ecf0f1;border-radius:8px;padding:15px;text-align:center;transition:all .2s ease}.stat-item:hover{background:#e8f4f8;border-color:#3498db}.stat-number{color:#2c3e50;font-size:2rem;font-weight:700;margin-bottom:5px}.stat-label{color:#7f8c8d;font-size:.85rem}.test-button{align-items:center;background:#9b59b6;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:10px;justify-content:center;padding:15px;transition:background .2s ease;width:100%}.test-button:hover:not(:disabled){background:#8e44ad}.test-button:disabled{cursor:not-allowed;opacity:.7}.connection-status{border:2px solid;border-radius:8px;margin-top:15px;padding:15px}.connection-status.connected{background:#d5e8d4;border-color:#27ae60;color:#1e7e34}.connection-status.disconnected{background:#fff3cd;border-color:#f39c12;color:#856404}.connection-status.error{background:#f8d7da;border-color:#e74c3c;color:#721c24}.status-header{align-items:center;display:flex;gap:10px;margin-bottom:10px}.status-icon{font-size:1.2rem}.connection-details{font-size:.85rem;margin-top:10px;opacity:.8}.instructions-card{grid-column:1/-1}.instructions-list{color:#2c3e50;margin:0 0 20px;padding-left:20px}.instructions-list li{line-height:1.5;margin-bottom:10px}.instructions-list strong{color:#e74c3c}.supported-formats{background:#f8f9fa;border-left:4px solid #3498db;border-radius:8px;padding:15px}.supported-formats h4{color:#2c3e50;margin:0 0 10px}.supported-formats ul{color:#7f8c8d;margin:0;padding-left:20px}.supported-formats li{margin-bottom:5px}.email-setup-footer{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;padding:20px;text-align:center}.refresh-button{background:#007bff;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 30px;transition:background .2s ease}.refresh-button:hover{background:#0056b3}.alert{align-items:center;border-radius:8px;display:flex;font-weight:500;gap:10px;margin-bottom:20px;padding:15px 20px}.alert-error{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.alert-success{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.alert-icon{font-size:1.2rem}.error-state,.loading-container{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;flex-direction:column;min-height:400px;padding:40px;text-align:center}.error-state,.loading-container,.updating-indicator{align-items:center;display:flex;justify-content:center}.updating-indicator{background:#e3f2fd;border:1px solid #bbdefb;border-radius:6px;color:#1976d2;font-size:14px;margin-top:15px;padding:10px}.error-state h2{color:#e74c3c;margin-bottom:15px}.error-state p{color:#7f8c8d;margin-bottom:20px}.retry-button{background:#e74c3c;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;padding:12px 24px;transition:background .2s ease}.retry-button:hover{background:#c0392b}@media (max-width:768px){.email-setup-container{padding:15px}.email-setup-grid{gap:15px;grid-template-columns:1fr}.email-setup-header h1{font-size:2rem}.toggle-label{align-items:flex-start;flex-direction:column;gap:15px}.stats-grid{grid-template-columns:repeat(2,1fr)}}.email-history-card{grid-column:1/-1}.email-history-header{width:100%}.card-header,.email-history-header{align-items:center;display:flex;justify-content:space-between}.refresh-history-button{align-items:center;background:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:.9rem;gap:5px;padding:8px 16px;transition:background .2s ease}.refresh-history-button:hover:not(:disabled){background:#0056b3}.refresh-history-button:disabled{cursor:not-allowed;opacity:.7}.email-history-table-container{border:1px solid #ecf0f1;border-radius:8px;overflow-x:auto}.email-history-table{background:#fff;border-collapse:collapse;font-size:.9rem;width:100%}.email-history-table th{background:#f8f9fa;border-bottom:2px solid #ecf0f1;color:#2c3e50;font-size:.85rem;font-weight:600;letter-spacing:.5px;padding:12px 15px;text-align:left;text-transform:uppercase}.email-history-table td{border-bottom:1px solid #ecf0f1;padding:12px 15px;vertical-align:middle}.email-history-table tr:hover{background:#f8f9fa}.email-history-table tr:last-child td{border-bottom:none}.from-cell{color:#2c3e50;font-weight:500;max-width:200px}.from-cell,.subject-cell{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.subject-cell{color:#34495e;max-width:250px}.time-cell{color:#7f8c8d;min-width:140px}.attachment-cell,.time-cell{font-size:.85rem;white-space:nowrap}.attachment-cell{color:#3498db;font-family:Courier New,monospace;max-width:180px;overflow:hidden;text-overflow:ellipsis}.status-cell{min-width:120px;text-align:center}.status-badge{border-radius:20px;display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.status-badge.status-pending{background:#fff3cd;border:1px solid #ffeaa7;color:#856404}.status-badge.status-extracted{background:#cce5ff;border:1px solid #74b9ff;color:#06c}.status-badge.status-processed{background:#d4edda;border:1px solid #00b894;color:#155724}.empty-state{color:#7f8c8d;padding:40px 20px;text-align:center}.empty-state p{color:#95a5a6;font-size:1.1rem;margin:0 0 10px}.empty-state small{color:#bdc3c7;font-size:.9rem}@media (max-width:768px){.email-history-table-container{font-size:.8rem}.email-history-table td,.email-history-table th{padding:8px 10px}.from-cell{max-width:120px}.subject-cell{max-width:150px}.attachment-cell{max-width:100px}.time-cell{font-size:.75rem;min-width:100px}.status-cell{min-width:80px}.status-badge{font-size:.7rem;padding:3px 8px}.actions-cell{min-width:80px}.action-buttons{flex-direction:column;gap:5px}.action-button{font-size:.8rem;min-width:auto;padding:4px 8px}}.actions-cell{padding:12px 15px;text-align:center;white-space:nowrap}.action-buttons{gap:8px}.action-button,.action-buttons{align-items:center;display:flex;justify-content:center}.action-button{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid #dee2e6;border-radius:4px;cursor:pointer;font-size:1rem;height:32px;min-width:32px;padding:6px 10px;transition:all .2s ease}.action-button:hover{box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.process-button{background:linear-gradient(135deg,#e3f2fd,#bbdefb);border-color:#2196f3;color:#1976d2}.process-button:hover{background:linear-gradient(135deg,#bbdefb,#90caf9);border-color:#1976d2}.view-button{background:linear-gradient(135deg,#f3e5f5,#e1bee7);border-color:#9c27b0;color:#7b1fa2}.view-button:hover{background:linear-gradient(135deg,#e1bee7,#ce93d8);border-color:#7b1fa2}.delete-button{background:linear-gradient(135deg,#ffebee,#ffcdd2);border-color:#f44336;color:#c62828}.delete-button:hover{background:linear-gradient(135deg,#ffcdd2,#ef9a9a);border-color:#c62828}.account-page{background:#f8f9fa;margin:0 auto;max-width:800px;min-height:calc(100vh - 80px);padding:20px}.account-header{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;justify-content:space-between;margin-bottom:30px;padding:20px}.account-header h1{color:#333;font-size:24px;margin:0}.edit-btn{border:none;border-radius:8px;cursor:pointer;font-weight:500;padding:10px 20px;transition:all .2s ease}.edit-btn.edit{background:#007bff;color:#fff}.edit-btn.edit:hover{background:#0056b3}.edit-btn.cancel{background:#dc3545;color:#fff}.edit-btn.cancel:hover{background:#c82333}.account-content{display:flex;flex-direction:column;gap:20px}.account-stats,.email-section,.profile-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:25px}.account-stats h2,.email-section h2,.profile-section h2{border-bottom:2px solid #f0f0f0;color:#333;font-size:18px;margin:0 0 20px;padding-bottom:10px}.form-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.profile-picture-section{display:flex;justify-content:center;margin-bottom:30px}.profile-picture-container{align-items:center;display:flex;flex-direction:column;gap:15px}.profile-picture{background:#f8f9fa;border:4px solid #e0e0e0;border-radius:50%;height:120px;overflow:hidden;position:relative;width:120px}.profile-image{height:100%;object-fit:cover;width:100%}.profile-placeholder{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;height:100%;justify-content:center;width:100%}.placeholder-icon{font-size:48px}.upload-overlay{align-items:center;background:#000000b3;border-radius:50%;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0}.profile-picture-controls{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.profile-picture-controls .upload-btn{background:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;font-weight:500;padding:8px 16px;transition:background-color .2s ease}.profile-picture-controls .upload-btn:hover{background:#0056b3}.remove-btn{background:#dc3545;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;font-weight:500;padding:8px 16px;transition:background-color .2s ease}.remove-btn:hover{background:#c82333}.form-group{display:flex;flex-direction:column}.form-group.full-width{grid-column:1/-1}.form-group label{color:#555;font-size:14px;font-weight:600;margin-bottom:8px}.form-group input,.form-group select,.form-group textarea{background:#fff;border:2px solid #e0e0e0;border-radius:8px;font-size:14px;padding:12px;transition:border-color .2s ease}.form-group select{cursor:pointer}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#007bff;outline:none}.field-value{background:#f8f9fa;border-radius:8px;color:#333;min-height:16px;padding:12px}.field-value.readonly{background:#e9ecef;color:#6c757d}.field-value.address{white-space:pre-line}.field-value.email-address{color:#007bff;font-family:monospace;font-weight:600}.email-info{gap:25px}.assigned-email,.email-info{display:flex;flex-direction:column}.assigned-email{gap:8px}.assigned-email label{color:#555;font-size:14px;font-weight:600}.email-help{color:#6c757d;font-size:12px;font-style:italic;margin:0}.email-settings{display:flex;flex-direction:column;gap:15px}.checkbox-label,.setting-item{align-items:center;display:flex}.checkbox-label{color:#333;cursor:pointer;font-size:14px;gap:10px}.checkbox-label input[type=checkbox]{accent-color:#007bff;height:18px;width:18px}.stats-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));margin-bottom:30px}.stat-item{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid #dee2e6;border-radius:12px;display:flex;gap:12px;padding:20px;transition:transform .2s ease,box-shadow .2s ease}.stat-item:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.stat-icon{align-items:center;background:#fff;border-radius:50%;box-shadow:0 2px 4px #0000001a;display:flex;font-size:24px;height:40px;justify-content:center;width:40px}.stat-content{flex:1 1}.stat-value{color:#333;font-size:22px;font-weight:700;line-height:1;margin-bottom:4px}.stat-label{color:#6c757d;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.account-info-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.info-item{display:flex;flex-direction:column;gap:8px}.info-item label{color:#555;font-size:14px;font-weight:600}.role-badge{align-items:center;display:flex;font-weight:600;gap:8px}.role-indicator{font-size:18px}.role-indicator.admin{color:#dc3545}.role-indicator.accountant{color:#28a745}.role-indicator.user{color:#007bff}.user-id{color:#6c757d;font-family:monospace;font-size:12px;font-weight:600}.save-section{display:flex;justify-content:center;margin-top:20px}.save-btn{background:#28a745;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:15px 30px;transition:background-color .2s ease}.save-btn:hover:not(:disabled){background:#218838}.save-btn:disabled{background:#6c757d;cursor:not-allowed}.loading-container{align-items:center;display:flex;flex-direction:column;gap:20px;height:50vh;justify-content:center}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#007bff;height:40px;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:768px){.account-page{margin-bottom:80px;padding:15px}.account-header{flex-direction:column;gap:15px;padding:15px;text-align:center}.account-header h1{font-size:20px}.form-grid{gap:15px;grid-template-columns:1fr}.stats-grid{gap:12px;grid-template-columns:repeat(2,1fr)}.stat-item{flex-direction:column;gap:8px;padding:16px;text-align:center}.stat-content{align-items:center;display:flex;flex-direction:column}.stat-value{font-size:20px}.account-info-grid{gap:15px;grid-template-columns:1fr}.profile-picture{height:100px;width:100px}.placeholder-icon{font-size:40px}.profile-picture-controls{align-items:center;flex-direction:column;gap:8px}.profile-picture-controls .remove-btn,.profile-picture-controls .upload-btn{text-align:center;width:120px}.account-stats,.email-section,.profile-section{padding:20px}.email-info{gap:20px}}@media (max-width:480px){.account-page{padding:10px}.account-header{padding:12px}.account-stats,.email-section,.profile-section{padding:15px}.form-group input,.form-group select,.form-group textarea{font-size:16px;padding:10px}.save-btn{padding:12px;width:100%}.stats-grid{gap:10px;grid-template-columns:1fr}.stat-item{padding:12px}.stat-icon,.stat-value{font-size:18px}.stat-icon{height:32px;width:32px}.profile-picture{height:80px;width:80px}.placeholder-icon{font-size:32px}.profile-picture-controls .remove-btn,.profile-picture-controls .upload-btn{font-size:11px;padding:6px 12px;width:100px}.account-info-grid{gap:12px}}.chat-page{background:#f1f5f9;display:flex;flex-direction:column;height:100vh;overflow:hidden}.desktop-nav{display:block}@media (max-width:767px){.desktop-nav{display:none}.chat-page{border-radius:0;height:100vh;height:100svh;margin:0;padding-bottom:0}}.chat-header{background:linear-gradient(135deg,#2563eb,#0891b2);box-shadow:0 2px 10px #0000001a;color:#fff;padding:20px;z-index:100}@media (max-width:767px){.chat-header{border-radius:0;margin:0;min-height:auto;padding:8px 15px}}.header-content{justify-content:space-between;margin:0 auto;max-width:1200px}.chat-title,.header-content{align-items:flex-start;display:flex;gap:15px}.chat-title .chat-icon{flex-shrink:0;font-size:2rem;margin-top:5px}@media (max-width:767px){.chat-title .chat-icon{font-size:1.2rem;margin-top:0}}.chat-title h1{font-size:1.8rem;font-weight:600;line-height:1.2;margin:0}.chat-title p{font-size:.95rem;line-height:1.3;margin:5px 0 0;opacity:.9}@media (max-width:767px){.chat-title h1{font-size:1.1rem;margin:0}.chat-title p{font-size:.75rem;margin:2px 0 0}}.header-actions{flex-shrink:0}.new-chat-btn{align-items:center;background:#fff3;border:1px solid #ffffff4d;border-radius:20px;color:#fff;cursor:pointer;display:flex;font-size:.9rem;gap:8px;padding:8px 16px;transition:all .2s ease}.new-chat-btn:hover{background:#ffffff4d;transform:translateY(-1px)}@media (max-width:767px){.new-chat-btn{border-radius:12px;font-size:.7rem;padding:4px 8px}.header-content{align-items:center;flex-direction:row;gap:10px}.header-actions{align-self:auto}}.chat-stats{font-size:.85rem;margin-top:15px;opacity:.9;text-align:center}@media (max-width:767px){.chat-stats{font-size:.7rem;margin-top:4px;padding:0}}.chat-messages{box-sizing:border-box;flex:1 1;margin:0 auto;max-width:1200px;overflow-y:auto;padding:20px;width:100%}@media (max-width:767px){.chat-messages{padding:10px 15px}}.chat-welcome{align-items:flex-start;display:flex;height:100%;justify-content:center;padding-top:40px;text-align:center}.welcome-content{max-width:600px;padding:20px;width:100%}@media (max-width:767px){.chat-welcome{align-items:stretch;height:auto;padding-top:10px}.welcome-content{align-items:center;display:flex;flex-direction:column;max-width:100%;padding:10px 15px}.example-questions{margin-top:15px;width:100%}}.welcome-emoji{display:block;font-size:4rem;margin-bottom:20px}@media (max-width:767px){.welcome-emoji{font-size:2.5rem;margin-bottom:10px}}.welcome-content h2{color:#333;font-size:1.8rem;font-weight:600;margin:0 0 15px}.welcome-content p{color:#666;font-size:1rem;line-height:1.5;margin-bottom:30px}@media (max-width:767px){.welcome-content h2{font-size:1.3rem;margin-bottom:8px}.welcome-content p{font-size:.85rem;margin-bottom:15px}}.example-questions h3{color:#333;font-size:1.1rem;font-weight:600;margin:0 0 20px}@media (max-width:767px){.example-questions h3{font-size:1rem;margin-bottom:15px}}.questions-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr;margin:0 auto;max-width:600px}@media (max-width:767px){.questions-grid{gap:8px;grid-template-columns:1fr;margin:0;max-width:100%}}.example-question{background:#fff;border:1px solid #ddd;border-radius:12px;box-shadow:0 2px 4px #0000000d;cursor:pointer;font-size:.9rem;padding:15px;text-align:left;transition:all .2s ease}.example-question:hover{background:#f8f9fa;border-color:#2563eb;box-shadow:0 4px 12px #2563eb26;transform:translateY(-1px)}.example-question:disabled{cursor:not-allowed;opacity:.6;transform:none}@media (max-width:767px){.example-question{box-sizing:border-box;font-size:.85rem;padding:12px;width:100%}}.message{display:flex;gap:12px;margin-bottom:20px;max-width:100%}.message.user{flex-direction:row-reverse}@media (max-width:767px){.message{gap:10px;margin-bottom:15px}}.message-avatar{align-items:center;background:#f0f0f0;border:2px solid #ddd;border-radius:50%;display:flex;flex-shrink:0;font-size:1.2rem;height:40px;justify-content:center;width:40px}.message.user .message-avatar{background:linear-gradient(135deg,#2563eb,#0891b2);border-color:#0000;color:#fff}.message.assistant .message-avatar{background:#e3f2fd;border-color:#2196f3}@media (max-width:767px){.message-avatar{font-size:1rem;height:35px;width:35px}}.message-bubble{max-width:70%;min-width:100px}@media (max-width:767px){.message-bubble{max-width:85%}}.message-content{word-wrap:break-word;border-radius:18px;font-size:.95rem;line-height:1.5;padding:15px 18px;white-space:pre-wrap}.message.user .message-content{background:linear-gradient(135deg,#2563eb,#0891b2);border-bottom-right-radius:6px;color:#fff}.message.assistant .message-content{background:#fff;border:1px solid #e0e0e0;border-bottom-left-radius:6px;color:#333}.message.loading .message-content{background:#f8f9fa;border:1px solid #dee2e6}@media (max-width:767px){.message-content{font-size:.9rem;padding:12px 15px}}.message-meta{color:#888;font-size:.75rem;margin-top:5px;padding:0 4px}.message.user .message-meta{text-align:right}.token-info{color:#aaa}.typing-indicator{align-items:center;display:inline-flex;gap:4px;margin-right:8px}.typing-indicator span{animation:typing 1.4s ease-in-out infinite;background:#2563eb;border-radius:50%;height:6px;width:6px}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{opacity:.5;transform:scale(.8)}30%{opacity:1;transform:scale(1)}}.chat-input-area{background:#fff;border-top:1px solid #e0e0e0;box-shadow:0 -2px 10px #0000000d;box-sizing:border-box;margin:0 auto;max-width:1200px;padding:20px;width:100%}@media (max-width:767px){.chat-input-area{border-radius:0;margin-bottom:70px;margin-left:0;margin-right:0;padding:12px 15px;position:relative;z-index:10}}.chat-error{background:#fee;border:1px solid #fcc;border-radius:8px;font-size:.85rem;justify-content:space-between;margin-bottom:15px;padding:10px 15px}.chat-error,.error-dismiss{align-items:center;color:#c33;display:flex}.error-dismiss{background:none;border:none;cursor:pointer;font-size:1.2rem;height:20px;justify-content:center;padding:0;width:20px}.chat-input-container{align-items:flex-end;display:flex;gap:10px}.chat-input{border:1px solid #ddd;border-radius:25px;flex:1 1;font-family:inherit;font-size:.95rem;line-height:1.4;max-height:120px;min-height:20px;padding:15px 18px;resize:none;transition:border-color .2s ease}.chat-input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a;outline:none}.chat-input:disabled{background:#f5f5f5;opacity:.7}@media (max-width:767px){.chat-input{font-size:.9rem;padding:12px 15px}}.chat-controls{align-items:flex-end;display:flex;gap:8px}.clear-button,.send-button{align-items:center;background:linear-gradient(135deg,#2563eb,#0891b2);border:none;border-radius:50%;box-shadow:0 2px 8px #2563eb4d;color:#fff;cursor:pointer;display:flex;font-size:1.1rem;height:44px;justify-content:center;transition:all .2s ease;width:44px}.clear-button{background:#dc3545;box-shadow:0 2px 8px #dc35454d}.clear-button:hover,.send-button:hover{box-shadow:0 4px 16px #2563eb66;transform:translateY(-2px)}.clear-button:hover{box-shadow:0 4px 16px #dc354566}.send-button:disabled{background:#ccc;box-shadow:0 2px 4px #0000001a;cursor:not-allowed;transform:none}@media (max-width:767px){.clear-button,.send-button{font-size:1rem;height:40px;width:40px}}.chat-messages::-webkit-scrollbar{width:8px}.chat-messages::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.chat-messages::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}.chat-messages::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.clear-button:focus,.example-question:focus,.new-chat-btn:focus,.send-button:focus{outline:2px solid #2563eb;outline-offset:2px}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message{animation:fadeIn .3s ease-out}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:2dppx){.message-avatar{border-width:1px}}.markdown-content h1,.markdown-content h2,.markdown-content h3{color:inherit;font-weight:600;margin:.5em 0}.markdown-content h1{font-size:1.2em}.markdown-content h2{font-size:1.1em}.markdown-content h3{font-size:1.05em}.markdown-content p{margin:.5em 0}.markdown-content ol,.markdown-content ul{margin:.5em 0;padding-left:1.5em}.markdown-content li{list-style-position:outside;margin:.2em 0}.markdown-content ul li{list-style-type:disc}.markdown-content ol li{list-style-type:decimal}.markdown-content code{background:#667eea1a;border-radius:4px;color:#333;font-family:Courier New,Monaco,monospace;font-size:.9em;padding:.1em .4em}.markdown-content pre{background:#667eea0d;border:1px solid #667eea1a;border-radius:8px;margin:.5em 0;overflow-x:auto;padding:1em}.markdown-content pre code{background:none;color:#333;font-size:.85em;padding:0}.markdown-content strong{color:inherit;font-weight:600}.markdown-content em{color:inherit;font-style:italic}.message.user .markdown-content code{background:#fff3;color:#ffffffe6}.message.user .markdown-content pre{background:#ffffff1a;border-color:#fff3}.message.user .markdown-content pre code{color:#ffffffe6}@media (prefers-color-scheme:dark){.chat-page{color:#fff}.chat-messages,.chat-page{background:#1a1a1a}.message.assistant .message-content{color:#fff}.chat-input-area,.message.assistant .message-content{background:#2d2d2d;border-color:#444}.chat-input{background:#1a1a1a;border-color:#444;color:#fff}.example-question{background:#2d2d2d;border-color:#444;color:#fff}}
/*# sourceMappingURL=main.8c9d3b3a.css.map*/