code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{background:linear-gradient(135deg,#f8fafc,#fff);min-height:100vh}*{box-sizing:border-box;padding:0}*,body{margin:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f8fafc;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.borrower-detail-page{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;margin:0 auto;max-width:1200px;padding:40px}.borrower-detail-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.borrower-detail-header h1{color:#1c1e21;font-size:2.5rem}.document-table{background-color:#fff;border-collapse:collapse;border-radius:8px;box-shadow:0 4px 12px #0000000d;margin-top:20px;overflow:hidden;width:100%}.document-table td,.document-table th{border-bottom:1px solid #e5e7eb;padding:16px 20px;text-align:left}.document-table th{background-color:#f9fafb;color:#6b7280;font-size:14px;letter-spacing:.05em;text-transform:uppercase}.document-table tbody tr:hover{background-color:#f0f2f5}.action-button{font-size:14px;padding:8px 16px}.borrower-list-page{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;margin:0 auto;max-width:1200px;padding:40px}.borrower-list-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.borrower-list-header h1{color:#1c1e21;font-size:2.5rem}.action-button{background-color:#0078d4;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;padding:12px 24px;transition:background-color .2s}.action-button:hover{background-color:#005a9e}.header-actions{align-items:center;gap:20px}.scan-action{align-items:center;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;display:flex;gap:10px;padding:8px 12px}.scan-action label{color:#6b7280;font-size:14px;margin-right:5px}.lookback-input{border:1px solid #ccc;border-radius:4px;padding:8px;text-align:center;width:60px}.scan-message{background-color:#e6f7ff;border:1px solid #91d5ff;border-radius:4px;color:#005a9e;margin-top:20px;padding:10px}.borrower-table{background-color:#fff;border-collapse:collapse;border-radius:8px;box-shadow:0 4px 12px #0000000d;margin-top:20px;overflow:hidden;width:100%}.borrower-table td,.borrower-table th{border-bottom:1px solid #e5e7eb;padding:16px 20px;text-align:left}.borrower-table th{background-color:#f9fafb;color:#6b7280;font-size:14px;letter-spacing:.05em;text-transform:uppercase}.borrower-table tbody tr:hover{background-color:#f0f2f5;cursor:pointer}.dtf-container{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Inter,sans-serif;margin:0 auto;max-width:900px;padding:24px}.dtf-header{align-items:center;display:flex;gap:16px;margin-bottom:32px}.dtf-back-btn{background:#0000;border:1px solid #e5e7eb;border-radius:6px;color:#6b7280;cursor:pointer;font-size:14px;padding:8px 16px;transition:all .2s ease}.dtf-back-btn:hover{background:#f9fafb;color:#4b5563}.dtf-title{color:#1f2937;font-size:24px;font-weight:600;margin:0}.dtf-steps{display:flex;justify-content:space-between;margin-bottom:32px;position:relative}.dtf-steps:before{background:#e5e7eb;content:"";height:2px;left:10%;position:absolute;right:10%;top:20px;z-index:0}.dtf-step{align-items:center;display:flex;flex-direction:column;gap:8px;position:relative;transition:all .2s ease;z-index:1}.dtf-step,.dtf-step.completed{cursor:pointer}.dtf-step.active .dtf-step-circle{background:#4f46e5;color:#fff;transform:scale(1.1)}.dtf-step.completed .dtf-step-circle{background:#10b981;color:#fff}.dtf-step-circle{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:50%;display:flex;font-size:18px;height:40px;justify-content:center;transition:all .3s ease;width:40px}.dtf-step-title{color:#6b7280;font-size:12px;font-weight:500}.dtf-step.active .dtf-step-title{color:#4f46e5;font-weight:600}.dtf-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;min-height:400px;padding:32px}.dtf-step-content{animation:dtf-fade-in .3s ease}.dtf-step-content h2{color:#111827;font-size:20px;font-weight:600;margin:0 0 8px}.dtf-step-description{color:#6b7280;font-size:14px;margin:0 0 24px}.dtf-form-group{margin-bottom:20px}.dtf-label{color:#374151;display:block;font-size:14px;font-weight:500;margin-bottom:6px}.dtf-label .required{color:#ef4444}.dtf-input,.dtf-select,.dtf-textarea{background:#fff;border:1px solid #e5e7eb;border-radius:6px;font-size:14px;padding:10px 12px;transition:all .2s ease;width:100%}.dtf-input:focus,.dtf-select:focus,.dtf-textarea:focus{border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51a;outline:none}.dtf-input.error,.dtf-select.error{border-color:#ef4444}.dtf-textarea{min-height:80px;resize:vertical}.dtf-select-group{display:flex;gap:8px}.dtf-select-group .dtf-select{flex:1 1}.dtf-add-btn{background:#fff;border:1px dashed #d1d5db;border-radius:6px;color:#6b7280;cursor:pointer;font-size:20px;height:40px;transition:all .2s ease;width:40px}.dtf-add-btn:hover{background:#f3f4f6;border-color:#4f46e5;color:#4f46e5}.dtf-error{color:#ef4444;display:block;font-size:12px;margin-top:4px}.dtf-actions{border-top:1px solid #e5e7eb;display:flex;justify-content:space-between;margin-top:32px;padding-top:24px}.dtf-actions-right{display:flex;gap:12px}.dtf-button{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;outline:none;padding:10px 20px;transition:all .2s ease}.dtf-button-primary{background:#4f46e5;color:#fff}.dtf-button-primary:hover:not(:disabled){background:#4338ca;box-shadow:0 4px 12px #4f46e533;transform:translateY(-1px)}.dtf-button-secondary{background:#f3f4f6;color:#4b5563}.dtf-button-secondary:hover{background:#e5e7eb}.dtf-button:disabled{cursor:not-allowed;opacity:.5}.dtf-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:64px}.dtf-spinner{animation:dtf-spin .8s linear infinite;border:3px solid #e5e7eb;border-radius:50%;border-top-color:#4f46e5;height:40px;width:40px}@keyframes dtf-spin{to{transform:rotate(1turn)}}@keyframes dtf-fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.dtf-container{padding:16px}.dtf-card{padding:20px}.dtf-steps{margin-bottom:24px}.dtf-step-title{display:none}.dtf-actions{flex-direction:column-reverse;gap:12px}.dtf-actions-right{flex-direction:column}.dtf-button{width:100%}}.dt-container{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Inter,sans-serif;margin:0 auto;max-width:1200px;padding:24px}.dt-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:32px}.dt-title{color:#1f2937;font-size:28px;font-weight:600;margin:0}.dt-button{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;outline:none;padding:10px 20px;transition:all .2s ease}.dt-button-primary{background:#4f46e5;color:#fff}.dt-button-primary:hover{background:#4338ca;box-shadow:0 4px 12px #4f46e533;transform:translateY(-1px)}.dt-button-secondary{background:#f3f4f6;color:#4b5563}.dt-button-secondary:hover{background:#e5e7eb}.dt-button-danger{background:#ef4444;color:#fff}.dt-button-danger:hover{background:#dc2626}.dt-filters{display:flex;gap:16px;margin-bottom:24px}.dt-search{flex:1 1;position:relative}.dt-search-icon{font-size:16px;left:12px;opacity:.5;position:absolute;top:50%;transform:translateY(-50%)}.dt-search-input{padding-left:40px!important;width:100%}.dt-input,.dt-select{background:#fff;border:1px solid #e5e7eb;border-radius:6px;font-size:14px;padding:10px 12px;transition:all .2s ease}.dt-input:focus,.dt-select:focus{border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51a;outline:none}.dt-select{cursor:pointer;min-width:180px}.dt-card{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.dt-table{border-collapse:collapse;width:100%}.dt-table thead{background:#fafafa;border-bottom:1px solid #e5e7eb}.dt-table th{color:#6b7280;font-size:12px;font-weight:600;letter-spacing:.5px;padding:12px 16px;text-align:left;text-transform:uppercase}.dt-table tbody tr{border-bottom:1px solid #f3f4f6;transition:background .15s ease}.dt-table tbody tr:hover{background:#f9fafb}.dt-table td{color:#1f2937;font-size:14px;padding:16px}.dt-name{color:#111827;font-weight:500}.dt-category-badge{background:#ebf5ff;border-radius:4px;color:#3b82f6;display:inline-block;font-size:12px;font-weight:500;padding:4px 10px}.dt-count{font-weight:500;text-align:center}.dt-actions-header{padding-right:24px!important;text-align:right}.dt-actions{display:flex;gap:8px;justify-content:flex-end;text-align:right}.dt-action-btn{align-items:center;background:#0000;border:none;border-radius:6px;cursor:pointer;display:inline-flex;font-size:16px;height:32px;justify-content:center;transition:all .15s ease;width:32px}.dt-action-btn:hover{background:#f3f4f6;transform:scale(1.1)}.dt-action-delete:hover{background:#fee2e2}.dt-empty{color:#9ca3af;font-style:italic;padding:48px 16px!important;text-align:center}.dt-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:64px}.dt-spinner{animation:dt-spin .8s linear infinite;border:3px solid #e5e7eb;border-radius:50%;border-top-color:#4f46e5;height:40px;width:40px}@keyframes dt-spin{to{transform:rotate(1turn)}}.dt-loading p{color:#6b7280;font-size:14px;margin-top:16px}.dt-error{background:#fee2e2;border-radius:6px;color:#dc2626;font-size:14px;margin-bottom:16px;padding:12px 16px}.dt-modal-overlay{align-items:center;animation:dt-fade-in .2s ease;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.dt-modal{animation:dt-slide-up .3s ease;background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:400px;padding:24px;width:90%}.dt-modal h3{color:#111827;font-size:18px;font-weight:600;margin:0 0 16px}.dt-modal p{color:#4b5563;font-size:14px;margin:0 0 8px}.dt-modal-warning{color:#dc2626;font-size:13px;font-style:italic}.dt-modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.toast-notification{animation:dt-slide-in .3s ease}.toast-fade-out{animation:dt-fade-out .3s ease}@keyframes dt-fade-in{0%{opacity:0}to{opacity:1}}@keyframes dt-fade-out{0%{opacity:1}to{opacity:0}}@keyframes dt-slide-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes dt-slide-in{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@media (max-width:768px){.dt-container{padding:16px}.dt-header{align-items:flex-start;gap:16px}.dt-filters,.dt-header{flex-direction:column}.dt-card{overflow-x:auto}.dt-table{min-width:600px}.dt-button{width:100%}}.dtv-container{margin:0 auto;max-width:1200px;padding:20px}.dtv-header{align-items:center;border-bottom:2px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:20px}.dtv-back-btn{background:#fff;border:1px solid #ddd;border-radius:8px;cursor:pointer;font-size:14px;padding:8px 16px;transition:all .2s}.dtv-back-btn:hover{background:#f5f5f5;transform:translateX(-2px)}.dtv-title{color:#333;flex:1 1;font-size:32px;margin:0;text-align:center}.dtv-edit-btn{background:#4caf50;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:500;padding:10px 24px;transition:all .3s}.dtv-edit-btn:hover{background:#45a049;box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.dtv-content{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.dtv-section{border-bottom:1px solid #f0f0f0;padding:30px}.dtv-section:last-child{border-bottom:none}.dtv-section-title{align-items:center;color:#444;display:flex;font-size:20px;gap:10px;margin:0 0 20px}.dtv-info-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,1fr)}.dtv-info-item{background:#f8f9fa;border-radius:8px;display:flex;flex-direction:column;gap:8px;padding:12px}.dtv-info-item.full-width{grid-column:span 2}.dtv-info-item label{color:#888;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.dtv-info-item p{color:#333;font-size:16px;line-height:1.5;margin:0}.dtv-info-item.full-width p{background:#0000;color:#212121!important;font-weight:400}.dtv-info-item a{color:#2196f3;font-size:16px;text-decoration:none}.dtv-info-item a:hover{text-decoration:underline}.dtv-fields-list{display:flex;flex-direction:column;gap:12px}.dtv-field-item{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;gap:16px;padding:12px;transition:all .2s}.dtv-field-item:hover{background:#e8f4fd;transform:translateX(4px)}.dtv-field-number{align-items:center;background:#2196f3;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:14px;font-weight:600;height:32px;justify-content:center;width:32px}.dtv-field-info{flex:1 1}.dtv-field-name{color:#333;font-size:16px;font-weight:500;margin:0}.dtv-field-technical{color:#666;font-size:13px;font-style:italic;margin:4px 0 0}.dtv-examples-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.dtv-example-card{border:1px solid #e0e0e0;border-radius:8px;overflow:hidden;transition:all .3s}.dtv-example-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.dtv-example-image{background:#f5f5f5;height:150px;object-fit:cover;width:100%}.dtv-example-image:hover{opacity:.8;transform:scale(1.05)}.dtv-pdf-container{align-items:center;background:#f5f5f5;border:1px solid #ddd;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;justify-content:center;min-height:150px;transition:all .3s ease;width:100%}.dtv-pdf-container:hover{background:#e8e8e8;transform:scale(1.02)}.dtv-example-desc{color:#666;font-size:14px;margin:0;padding:12px}.dtv-loading{align-items:center;display:flex;flex-direction:column;gap:20px;justify-content:center;min-height:400px}.dtv-spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#2196f3;height:50px;width:50px}.dtv-error{align-items:center;display:flex;flex-direction:column;gap:20px;justify-content:center;min-height:400px}.dtv-error p{color:#f44336;font-size:18px}.dtv-error button{background:#2196f3;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;padding:10px 20px}.dtv-error button:hover{background:#1976d2}@media (max-width:768px){.dtv-info-grid{grid-template-columns:1fr}.dtv-info-item.full-width{grid-column:span 1}.dtv-examples-grid{grid-template-columns:1fr}}.rx-container{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Inter,sans-serif;margin:0 auto;max-width:1200px;padding:24px}.rx-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:32px}.rx-title{color:#1f2937;font-size:28px;font-weight:600;margin:0}.rx-button{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;outline:none;padding:10px 20px;transition:all .2s ease}.rx-button-primary{background:#4f46e5;color:#fff}.rx-button-primary:hover{background:#4338ca;box-shadow:0 4px 12px #4f46e533;transform:translateY(-1px)}.rx-button-secondary{background:#f3f4f6;color:#4b5563}.rx-button-secondary:hover{background:#e5e7eb}.rx-button-danger{background:#ef4444;color:#fff}.rx-button-danger:hover{background:#dc2626}.rx-filters{display:flex;gap:16px;margin-bottom:24px}.rx-search{flex:1 1;position:relative}.rx-search-icon{font-size:16px;left:12px;opacity:.5;position:absolute;top:50%;transform:translateY(-50%)}.rx-search-input{padding-left:40px!important;width:100%}.rx-input{background:#fff;border:1px solid #e5e7eb;border-radius:6px;font-size:14px;padding:10px 12px;transition:all .2s ease;width:100%}.rx-input:focus{border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51a;outline:none}.rx-card{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.rx-table{border-collapse:collapse;width:100%}.rx-table thead{background:#fafafa;border-bottom:1px solid #e5e7eb}.rx-table th{color:#6b7280;font-size:12px;font-weight:600;letter-spacing:.5px;padding:12px 16px;text-align:left;text-transform:uppercase}.rx-table tbody tr{border-bottom:1px solid #f3f4f6;transition:background .15s ease}.rx-table tbody tr:hover{background:#f9fafb}.rx-table td{color:#1f2937;font-size:14px;padding:16px}.rx-name{color:#111827;font-weight:500}.rx-email,.rx-phone,.rx-rep,.rx-state,.rx-website{color:#4b5563}.rx-link{color:#4f46e5;text-decoration:none;transition:color .15s ease}.rx-link:hover{color:#4338ca;text-decoration:underline}.rx-muted{color:#d1d5db;font-style:italic}.rx-state-badge{background:#ebf5ff;color:#3b82f6}.rx-state-badge,.rx-status-badge{border-radius:4px;display:inline-block;font-size:12px;font-weight:500;padding:4px 10px}.rx-status-badge{white-space:nowrap}.rx-status-approved{background:#dcfce7;border:1px solid #bbf7d0;color:#16a34a}.rx-status-pending{background:#fef3c7;border:1px solid #fde68a;color:#d97706}.rx-status-needs-w9{background:#fee2e2;border:1px solid #fecaca;color:#dc2626}.rx-va-status{text-align:center}.rx-actions-header{padding-right:24px!important;text-align:right}.rx-actions{text-align:right}.rx-action-btn{align-items:center;border-radius:6px;display:inline-flex;font-size:16px;height:32px;justify-content:center;width:32px}.rx-action-btn:hover{background:#f3f4f6}.rx-empty{color:#6b7280;font-style:italic;padding:48px!important;text-align:center}.rx-loading{padding:48px;text-align:center}.rx-spinner{animation:spin 1s linear infinite;border:4px solid #f3f4f6;border-radius:50%;border-top-color:#4f46e5;height:40px;margin:0 auto 16px;width:40px}.rx-error{background:#fef2f2;border:1px solid #fca5a5;border-radius:6px;color:#991b1b;font-size:14px;margin-bottom:24px;padding:12px 16px}.rx-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.rx-modal{background:#fff;border-radius:8px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;display:flex;flex-direction:column;max-height:90vh;max-width:600px;overflow:hidden;width:90%}.rx-modal-small{max-width:400px}.rx-modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:20px 24px}.rx-modal-header h2{color:#111827;font-size:20px;font-weight:600;margin:0}.rx-modal-close{align-items:center;background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;display:flex;font-size:24px;height:32px;justify-content:center;padding:0;transition:background .15s ease;width:32px}.rx-modal-close:hover{background:#f3f4f6}.rx-modal-body{flex:1 1;overflow-y:auto;padding:24px}.rx-modal-footer{border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;padding:16px 24px}.rx-form-group{margin-bottom:20px}.rx-form-row{display:flex;gap:16px}.rx-form-row .rx-form-group{flex:1 1}.rx-label{color:#374151;display:block;font-size:14px;font-weight:500;margin-bottom:6px}.rx-warning-text{color:#dc2626;font-size:13px;margin-top:8px}.toast-notification{animation:rx-slide-in .3s ease;border-radius:6px;box-shadow:0 4px 6px #0000001a;color:#fff;font-size:14px;font-weight:500;padding:12px 20px;position:fixed;right:20px;top:20px;z-index:2000}.toast-success{background:#10b981}.toast-error{background:#ef4444}.toast-info{background:#3b82f6}.toast-fade-out{animation:rx-fade-out .3s ease}@keyframes rx-slide-in{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@keyframes rx-fade-out{0%{opacity:1}to{opacity:0;transform:translateX(100%)}}@media (max-width:768px){.rx-container{padding:16px}.rx-header{align-items:stretch;flex-direction:column;gap:16px}.rx-button-primary{width:100%}.rx-table{font-size:12px}.rx-table td,.rx-table th{padding:12px 8px}.rx-form-row{flex-direction:column}.rx-modal{margin:16px;width:95%}}.rx-checkbox-label{align-items:flex-start;border-radius:6px;cursor:pointer;display:flex;gap:12px;margin-top:8px;padding:12px;transition:background .2s ease}.rx-checkbox-label:hover{background:#f9fafb}.rx-checkbox{accent-color:#4f46e5;cursor:pointer;height:20px;margin-top:2px;width:20px}.rx-checkbox-text{color:#1f2937;display:flex;flex-direction:column;font-size:14px;font-weight:500;gap:4px}.rx-checkbox-hint{color:#6b7280;font-size:13px;font-style:italic;font-weight:400}.rx-modal-large{max-width:700px}.rx-form-section{margin-bottom:24px}.rx-form-section:last-child{margin-bottom:0}.rx-section-title{border-bottom:1px solid #e5e7eb;color:#1f2937;font-size:16px;font-weight:600;margin:0 0 16px;padding-bottom:8px}.rx-section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.rx-section-header .rx-section-title{border:none;margin:0;padding:0}.rx-contacts-section{background:#fafafa;border:1px solid #e5e7eb;border-radius:8px;padding:20px}.rx-contact-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:12px;padding:16px}.rx-contact-card:last-child{margin-bottom:0}.rx-contact-card-header{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;gap:12px;margin-bottom:16px;padding-bottom:12px}.rx-contact-number{color:#374151;font-size:14px;font-weight:600}.rx-contact-source-badge{background:#dbeafe;border-radius:4px;color:#1d4ed8;font-size:11px;font-weight:500;padding:2px 8px}.rx-remove-contact{align-items:center;background:none;border:none;border-radius:4px;color:#9ca3af;cursor:pointer;display:flex;font-size:20px;height:28px;justify-content:center;margin-left:auto;transition:all .15s ease;width:28px}.rx-remove-contact:hover{background:#fee2e2;color:#dc2626}.rx-checkbox-group{display:flex;flex-wrap:wrap;gap:8px}.rx-role-checkbox{align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;color:#4b5563;cursor:pointer;display:flex;font-size:13px;gap:6px;padding:6px 12px;transition:all .15s ease}.rx-role-checkbox:hover{background:#f3f4f6;border-color:#d1d5db}.rx-role-checkbox input[type=checkbox]{accent-color:#4f46e5;cursor:pointer;margin:0}.rx-role-checkbox input[type=checkbox]:checked+span{color:#4f46e5;font-weight:500}.rx-no-contacts{color:#6b7280;font-style:italic;margin:0;padding:24px;text-align:center}.rx-button-small{font-size:13px;padding:6px 12px}.rx-primary-contact{min-width:180px}.rx-contact-cell{display:flex;flex-direction:column;gap:2px}.rx-contact-name{color:#1f2937;font-weight:500}.rx-contact-email{color:#4f46e5;font-size:12px;text-decoration:none}.rx-contact-email:hover{text-decoration:underline}.rx-contact-phone{color:#6b7280;font-size:12px}.rx-contacts-count{white-space:nowrap}.rx-contact-badges{display:flex;flex-direction:column;gap:4px}.rx-contact-count-badge{background:#ebf5ff;border-radius:4px;color:#3b82f6;display:inline-block;font-size:12px;font-weight:500;padding:2px 8px}.rx-more-contacts{color:#6b7280;cursor:help;font-size:11px}.rx-actions{display:flex;gap:8px;justify-content:flex-end}.rx-action-btn{background:#0000;border:none;border-radius:4px;color:#4f46e5;cursor:pointer;font-size:13px;font-weight:500;height:auto;padding:4px 8px;transition:all .15s ease;width:auto}.rx-action-btn:hover{background:#eef2ff}.rx-action-danger{color:#dc2626}.rx-action-danger:hover{background:#fee2e2}.skf-container{width:100%}.skf-input-section{margin-bottom:20px}.skf-label{color:#374151;display:block;font-size:14px;font-weight:500;margin-bottom:8px}.skf-help-text{color:#6b7280;font-size:13px;line-height:1.5;margin-bottom:12px}.skf-textarea{border:1px solid #d1d5db;border-radius:6px;font-family:inherit;font-size:14px;line-height:1.6;min-height:120px;padding:12px;resize:vertical;transition:all .2s ease;width:100%}.skf-textarea:focus{border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51a;outline:none}.skf-textarea.error{border-color:#ef4444}.skf-textarea::placeholder{color:#9ca3af}.skf-error{color:#ef4444;display:block;font-size:12px;margin-top:4px}.skf-example-box{background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;margin-top:16px;padding:16px}.skf-example-title{color:#4b5563;font-size:13px;font-weight:600;margin-bottom:8px}.skf-example-list{color:#6b7280;font-size:13px;line-height:1.8;margin:0;padding-left:20px}.skf-preview-section{border-top:1px solid #e5e7eb;margin-top:20px;padding-top:20px}.skf-preview-title{color:#374151;font-size:14px;font-weight:500;margin-bottom:12px}.skf-fields-list{background:#fff;border:1px solid #e5e7eb;border-radius:6px;padding:12px}.skf-field-item{align-items:center;background:#f9fafb;border-radius:4px;display:flex;margin-bottom:8px;padding:8px 12px}.skf-field-item:last-child{margin-bottom:0}.skf-field-number{align-items:center;background:#4f46e5;border-radius:50%;color:#fff;display:flex;font-size:12px;font-weight:600;height:24px;justify-content:center;margin-right:12px;width:24px}.skf-field-name{color:#1f2937;flex:1 1;font-size:14px}.skf-field-remove{background:#0000;border:none;border-radius:4px;color:#9ca3af;cursor:pointer;font-size:16px;height:24px;transition:all .15s ease;width:24px}.skf-field-remove:hover{background:#fee2e2;color:#dc2626}.skf-empty-state{color:#9ca3af;font-size:13px;font-style:italic;padding:24px;text-align:center}.skf-info-box{background:#eff6ff;border:1px solid #dbeafe;border-radius:6px;margin-top:16px;padding:12px 16px}.skf-info-box p{color:#1e40af;font-size:13px;line-height:1.5;margin:0}.sre-container{width:100%}.sre-section{margin-bottom:24px}.sre-label{color:#374151;display:block;font-size:14px;font-weight:500;margin-bottom:8px}.sre-help-text{color:#6b7280;font-size:12px;margin-bottom:8px}.sre-input-group{align-items:center;display:flex;gap:12px;margin-bottom:12px}.sre-number-input{border:1px solid #d1d5db;border-radius:6px;font-size:14px;padding:8px 12px;transition:all .2s ease;width:100px}.sre-number-input:focus{border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51a;outline:none}.sre-checkbox-group{background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;display:flex;flex-wrap:wrap;gap:16px;padding:12px}.sre-checkbox-item{align-items:center;display:flex;gap:8px}.sre-checkbox{cursor:pointer;height:18px;width:18px}.sre-checkbox-label{color:#4b5563;cursor:pointer;font-size:14px;-webkit-user-select:none;user-select:none}.sre-textarea{border:1px solid #d1d5db;border-radius:6px;font-family:inherit;font-size:14px;min-height:100px;padding:12px;resize:vertical;transition:all .2s ease;width:100%}.sre-textarea:focus{border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51a;outline:none}.sre-textarea::placeholder{color:#9ca3af}.sre-info-box{background:#eff6ff;border:1px solid #dbeafe;border-radius:6px;margin-top:16px;padding:12px}.sre-info-box p{color:#1e40af;font-size:13px;line-height:1.5;margin:0}.sre-advanced-toggle{border-top:1px solid #e5e7eb;margin-top:24px;padding-top:24px}.sre-toggle-button{align-items:center;background:none;border:none;color:#4f46e5;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:0;transition:color .2s ease}.sre-toggle-button:hover{color:#4338ca}.sre-toggle-icon{transition:transform .2s ease}.sre-toggle-button.expanded .sre-toggle-icon{transform:rotate(90deg)}.sre-advanced-content{background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;margin-top:16px;padding:16px}.results-container{background-color:#f9fafb;margin:0 auto;max-width:1400px;min-height:100vh;padding:2rem}.loading-container{align-items:center;color:#4b5563;display:flex;flex-direction:column;gap:1rem;height:100vh;justify-content:center}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #e5e7eb;border-radius:50%;border-top-color:#4f46e5;height:40px;width:40px}.results-header{align-items:center;background:linear-gradient(90deg,#4f46e5,#818cf8);border-radius:12px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;display:flex;justify-content:space-between;margin-bottom:2rem;padding:2rem}.header-content h1{font-size:2.25rem;font-weight:800;margin:0}.header-content p{font-size:1rem;margin:0;opacity:.9}.header-actions{display:flex;gap:1rem}.clear-cache-btn,.download-btn,.new-analysis-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:8px;padding:10px 20px;transition:all .2s ease}.clear-cache-btn{background-color:#f44336;color:#fff}.new-analysis-btn{background-color:#e9ecef;color:#333}.new-analysis-btn:hover{background-color:#ffffff4d}.download-btn{background-color:#fff;color:#4f46e5}.download-btn:hover{background-color:#0056b3}.clear-cache-btn:hover{background-color:#d32f2f}.clear-cache-btn:disabled{background-color:#f44336;cursor:not-allowed;opacity:.5}.tab-navigation{border-bottom:2px solid #e5e7eb;margin-bottom:2rem}.tab-btn{background-color:initial;border:none;color:#6b7280;cursor:pointer;font-size:1rem;font-weight:600;padding:1rem 1.5rem;position:relative;transition:color .2s ease-in-out}.tab-btn.active{color:#4f46e5}.tab-btn.active:after{background-color:#4f46e5;bottom:-2px;content:"";height:2px;left:0;position:absolute;right:0}.tab-content{background-color:#fff;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;padding:2rem}.qualifying-balance-tab,.recurring-tab,.summary-tab,.transactions-tab{animation:fadeIn .5s ease-in-out}.recurring-tab{margin-top:3rem}h2{color:#111827;font-size:1.75rem;font-weight:700;margin-bottom:.5rem}.section-subtitle{font-size:1rem;margin-top:0}.footnote,.section-subtitle{color:#6b7280;margin-bottom:2rem}.footnote{font-size:.875rem;font-style:italic;margin-top:-1.5rem}.qualifying-balance-summary{background-color:#f3f4f6;border-radius:8px;margin-bottom:2rem;padding:1.5rem}.qualifying-balance-summary h3{color:#1f2937;font-size:1.25rem;margin:0 0 .5rem}.qualifying-balance-total{align-items:center;display:flex;justify-content:space-between}.qualifying-balance-total span{color:#4b5563;font-size:1rem}.qualifying-balance-total .total-amount{color:#10b981;font-size:2.25rem;font-weight:800}.qualifying-table{border-collapse:collapse;width:100%}.qualifying-table td,.qualifying-table th{border-bottom:1px solid #e5e7eb;padding:1rem;text-align:left}.qualifying-table th{color:#6b7280;font-size:.875rem;font-weight:600;text-transform:uppercase}.qualifying-table td{color:#1f2937;font-size:1rem}.qualifying-table .qualifying-amount{font-weight:600}.account-badge{background-color:#e0e7ff;border-radius:9999px;color:#4f46e5;display:inline-block;font-size:.875rem;font-weight:500;padding:.25rem .75rem}.monthly-totals-section{margin-bottom:2rem}.exclusion-warning{align-items:flex-start;background-color:#fef3c7;border:1px solid #f59e0b;border-radius:8px;display:flex;gap:.75rem;margin-bottom:1.5rem;padding:1rem;position:relative}.warning-icon{font-size:1.25rem;margin-top:.125rem}.warning-content{flex:1 1}.warning-content strong{color:#92400e;display:block;font-weight:600;margin-bottom:.25rem}.warning-content p{color:#78350f;font-size:.875rem;line-height:1.4;margin:0}.dismiss-warning-btn{align-items:center;background:none;border:none;border-radius:4px;color:#92400e;cursor:pointer;display:flex;font-size:1.25rem;height:24px;justify-content:center;line-height:1;margin-top:.125rem;padding:.25rem;transition:all .2s ease;width:24px}.dismiss-warning-btn:hover{background-color:#92400e1a;color:#78350f}.dismiss-warning-btn:active{transform:scale(.95)}.monthly-totals-cards{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.monthly-total-card{align-items:center;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;display:flex;gap:1rem;padding:1.5rem}.monthly-total-card .card-icon{font-size:2rem}.monthly-total-card .card-content h3{color:#374151;font-size:1rem;font-weight:600;margin:0}.monthly-total-card .amount{font-size:1.75rem;font-weight:700;margin:.25rem 0}.monthly-total-card .card-subtitle{color:#6b7280;font-size:.875rem;margin:0}.positive{color:#10b981}.negative{color:#ef4444}.negative-amount{color:#ef4444!important}.neutral{color:#f59e0b}.recurring-content{display:flex;flex-direction:column;gap:2rem}.recurring-debt-section,.recurring-income-section{background-color:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 4px #0000000d;padding:1.5rem}.recurring-debt-section h3,.recurring-income-section h3{font-size:1.25rem;font-weight:700;margin-top:0}.recurring-table-container{background:#fff;border:1px solid #e5e7eb;border-radius:8px;overflow-x:auto}.recurring-table{border-collapse:collapse;width:100%}.recurring-table td,.recurring-table th{border-bottom:1px solid #e5e7eb;padding:.75rem 1rem;text-align:left}.recurring-table th{background-color:#f8fafc;color:#6b7280;font-size:.875rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.recurring-table .amount-cell{font-weight:600}.recurring-table tbody tr{transition:background-color .2s ease}.recurring-table tbody tr:hover{background-color:#f8fafc}.recurring-row.excluded{background-color:#fef2f2;color:#9ca3af;text-decoration:line-through}.recurring-row.excluded:hover{background-color:#fecaca}.checkbox-cell{width:40px}.exclude-checkbox{cursor:pointer;height:18px;width:18px}.description-cell{cursor:help;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.description-cell:hover{background-color:#f1f5f9}.summary-cards{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem}.summary-card{align-items:center;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;display:flex;gap:1rem;padding:1.5rem}.summary-card .card-icon{font-size:2rem}.summary-card .card-content h3{color:#374151;font-size:1rem;font-weight:600;margin:0}.summary-card .amount{font-size:1.75rem;font-weight:700;margin:.25rem 0}.transactions-table-container{border:1px solid #e5e7eb;border-radius:8px;max-height:600px;overflow-y:auto}.transactions-table td,.transactions-table th{border-bottom:1px solid #e5e7eb;padding:.75rem 1rem;text-align:left}.transactions-table th{background-color:#f9fafb;position:-webkit-sticky;position:sticky;top:0;z-index:1}.transactions-table .type-badge{border-radius:4px;display:inline-block;font-size:.875rem;padding:.25rem .5rem}.transactions-table .type-badge.credit{background-color:#d1fae5;color:#065f46}.transactions-table .type-badge.debit{background-color:#fee2e2;color:#991b1b}.expand-cell{width:40px}.expand-btn{background:none;border:none;color:#6b7280;cursor:pointer;font-size:1.2rem;padding:0}.expand-btn:disabled{color:#d1d5db;cursor:not-allowed}.expanded-details{background-color:#f9fafb}.details-cell{padding:1rem}.transaction-details h4{font-size:1.1rem;font-weight:600;margin-top:0}.details-table-container{max-height:250px;overflow-y:auto}.details-table{border-collapse:collapse;width:100%}.details-table td,.details-table th{border-bottom:1px solid #e5e7eb;padding:.5rem}.details-table .transaction-row.excluded{background-color:#fee2e2;color:#9ca3af}.pattern-summary{background-color:#eef2ff;border-radius:8px;font-size:.9rem;margin-top:1rem;padding:1rem}.pattern-summary p{margin:.25rem 0}.adjustment-note{color:#4f46e5;font-style:italic}.statements-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.statement-card{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:1.5rem}.statement-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.statement-header h4{font-size:1.1rem;margin:0}.statement-details .detail-row{border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:.5rem 0}.statement-details .detail-row:last-child{border-bottom:none}.loan-program-container{align-items:center;background-color:#f3f4f6;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:2rem;padding:1rem 1.5rem}.loan-program-controls{align-items:center;display:flex;gap:2rem}.program-options{align-items:center;display:flex;gap:1rem}.program-options label{cursor:pointer}.loan-size-input,.program-options label{align-items:center;display:flex;gap:.5rem}.loan-size-input label{font-weight:500}.loan-size-input input{border:1px solid #d1d5db;border-radius:6px;padding:.5rem;width:120px}.large-credit-threshold{text-align:right}.control-label{color:#374151;font-weight:600}.large-credit-threshold .threshold-value{color:#111827;display:block;font-size:1.5rem;font-weight:700}.multiplier-input-field{border:1px solid #d1d5db;border-radius:6px;padding:.5rem;text-align:right;width:60px}.factor-input-wrapper{align-items:center;display:flex;gap:.5rem}.stability-detail{color:#6b7280;font-size:.9em;font-style:italic}.amount-stability{font-weight:500;padding:.25rem 0}.amount-stability.stable{color:#059669}.amount-stability.moderate-variance{color:#d97706}.amount-stability.high-variance{color:#dc2626}.amount-stability{background:#00000005;border-radius:4px;margin:.3rem 0;padding:.4rem .6rem}.upload-container{animation:fadeIn .5s ease;margin:0 auto;max-width:900px;padding:40px 20px}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.upload-header{margin-bottom:40px;text-align:center}.upload-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;font-size:2.5rem;margin-bottom:10px}.upload-header p{color:#6b7280;font-size:1.1rem}.connect-outlook-btn{background:#0078d4;border:none;border-radius:8px;box-shadow:0 2px 8px #0078d44d;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;margin-top:20px;padding:12px 24px;transition:all .2s ease}.connect-outlook-btn:hover{background:#005a9e;box-shadow:0 4px 12px #005a9e66;transform:translateY(-1px)}.drop-zone{background:linear-gradient(135deg,#f8fafc,#fff);border:3px dashed #cbd5e1;border-radius:20px;overflow:hidden;padding:60px 40px;position:relative}.drop-zone:hover{background:linear-gradient(135deg,#f0f4ff,#fff);border-color:#667eea;transform:scale(1.01)}.drop-zone.dragging{background:linear-gradient(135deg,#ecfdf5,#fff);border-color:#10b981;transform:scale(1.02)}.drop-zone.has-files{background:#fff;border-color:#667eea;border-style:solid;padding:30px}.drop-zone-empty{animation:pulse 2s infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.upload-icon{animation:float 3s ease-in-out infinite;font-size:80px;margin-bottom:20px}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.drop-zone-empty h3{color:#374151;font-size:1.5rem;margin-bottom:10px}.drop-zone-empty p{color:#6b7280;font-size:1rem;margin-bottom:20px}.file-hint{color:#9ca3af;font-size:.9rem}.files-preview h3{color:#374151;margin-bottom:20px;text-align:left}.file-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));margin-bottom:20px}.file-card{align-items:center;animation:slideIn .3s ease;background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;display:flex;gap:12px;padding:15px 40px 15px 15px;position:relative}@keyframes slideIn{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}.file-details{flex:1 1;text-align:left}.file-name{display:block;font-size:.9rem;font-weight:500;margin-bottom:4px;overflow:visible;text-overflow:clip;white-space:normal;word-break:break-all}.file-size{font-size:.8rem}.remove-btn{align-items:center;background:#ef4444;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:12px;height:24px;justify-content:center;position:absolute;right:8px;top:8px;transition:all .2s ease;width:24px}.remove-btn:hover{background:#dc2626;transform:scale(1.1)}.add-more-btn{background:#0000;border:2px dashed #cbd5e1;border-radius:8px;color:#6b7280;cursor:pointer;font-size:.95rem;padding:10px 20px;transition:all .2s ease}.add-more-btn:hover{border-color:#667eea;color:#667eea}.error-message{animation:shake .5s ease;background:#fee2e2;border:1px solid #fecaca;border-radius:12px;color:#991b1b;margin-top:20px;padding:12px 20px}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}.upload-actions{align-items:center;background:linear-gradient(135deg,#f8fafc,#fff);border:1px solid #e5e7eb;border-radius:16px;display:flex;justify-content:space-between;margin-top:30px;padding:20px}.file-summary{display:flex;gap:30px}.summary-item{flex-direction:column}.summary-label{font-size:.85rem;margin-bottom:4px}.summary-value{font-size:1.2rem}.analyze-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;box-shadow:0 4px 15px #667eea4d;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:14px 32px;transition:all .3s ease}.analyze-btn:hover:not(:disabled){box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.analyze-btn:disabled{cursor:not-allowed;opacity:.5}.processing-view{animation:fadeIn .5s ease}.processing-header{margin-bottom:40px;text-align:center}.processing-header h2{color:#374151;font-size:2rem;margin-bottom:10px}.processing-header p{color:#6b7280;font-size:1rem}.progress-container{margin-bottom:40px}.progress-bar{background:#e5e7eb;height:30px;overflow:hidden}.progress-bar,.progress-fill{border-radius:50px;position:relative}.progress-fill{align-items:center;animation:shimmer 2s infinite;background:linear-gradient(90deg,#667eea,#764ba2);display:flex;height:100%;justify-content:flex-end;padding-right:15px;transition:width .5s ease}@keyframes shimmer{0%{background-position:-200%}to{background-position:200%}}.progress-text{color:#fff;font-size:.9rem;font-weight:600}.processing-info{background:#fff;border-radius:20px;box-shadow:0 10px 30px #0000001a;padding:30px}.current-step{margin-bottom:30px;text-align:center}.step-indicator{align-items:center;color:#667eea;display:inline-flex;font-size:1.1rem;font-weight:500;gap:12px}.spinner{animation:spin 1s linear infinite;border:3px solid #e5e7eb;border-radius:50%;border-top-color:#667eea;height:20px;width:20px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.time-stats{grid-gap:20px;background:#f8fafc;border-radius:12px;display:grid;gap:20px;grid-template-columns:repeat(3,1fr);margin-bottom:30px;padding:20px}.time-item{text-align:center}.time-label{color:#6b7280;display:block;font-size:.85rem;margin-bottom:5px}.time-value{color:#374151;display:block;font-size:1.3rem;font-weight:600}.break-suggestion{margin:30px 0;text-align:center}.break-message{animation:bounce 2s infinite;background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:50px;color:#92400e;display:inline-block;font-size:1rem;padding:12px 24px}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.processing-animation{margin:40px 0}.doc-scanner,.processing-animation{display:flex;justify-content:center}.doc-scanner{align-items:center;background:#f8fafc;border:2px solid #e5e7eb;border-radius:8px;height:150px;overflow:hidden;position:relative;width:120px}.scan-line{animation:scan 2s linear infinite;background:linear-gradient(90deg,#0000,#667eea,#0000);height:4px;left:0;position:absolute;top:0;width:100%}@keyframes scan{0%{top:0}to{top:100%}}.doc-icon{font-size:60px;opacity:.5}.fun-facts{background:linear-gradient(135deg,#eff6ff,#fff);border-radius:16px;margin-top:30px;padding:25px}.fun-facts h4{color:#374151;margin-bottom:10px}.fun-facts p{color:#6b7280;margin-bottom:15px}.fun-facts ul{list-style:none;padding:0}.fun-facts li{animation:fadeInSlide .5s ease forwards;color:#4b5563;opacity:0;padding:8px 0}.fun-facts li:first-child{animation-delay:.1s}.fun-facts li:nth-child(2){animation-delay:.2s}.fun-facts li:nth-child(3){animation-delay:.3s}.fun-facts li:nth-child(4){animation-delay:.4s}.fun-facts li:nth-child(5){animation-delay:.5s}@keyframes fadeInSlide{to{opacity:1;transform:translateX(0)}0%{opacity:0;transform:translateX(-20px)}}@media (max-width:768px){.upload-container{padding:20px 16px}.upload-header h1{font-size:2rem}.file-grid{grid-template-columns:1fr}.upload-actions{flex-direction:column;gap:20px}.file-summary{justify-content:space-around;width:100%}.analyze-btn{width:100%}.time-stats{gap:15px;grid-template-columns:1fr}.drop-zone{padding:40px 20px}}.results-table-container{background-color:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a;overflow:hidden}.results-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:24px;text-align:center}.results-header h3{font-size:24px;font-weight:700;margin:0 0 8px}.results-header p{font-size:16px;margin:0;opacity:.9}.table-wrapper{overflow-x:auto}.results-table{border-collapse:collapse;font-size:14px;width:100%}.results-table thead{background-color:#f8fafc;border-bottom:2px solid #e2e8f0}.results-table th{color:#374151;font-size:14px;font-weight:600;letter-spacing:.05em;padding:16px 20px;text-align:left;text-transform:uppercase}.field-header{min-width:150px;width:30%}.value-header{min-width:200px;width:50%}.status-header{min-width:120px;text-align:center;width:20%}.results-table tbody tr{border-bottom:1px solid #f1f5f9;transition:background-color .2s ease}.results-table tbody tr:hover{background-color:#f8fafc}.results-table tbody tr.has-value{background-color:#f0fdf4}.results-table tbody tr.no-value{background-color:#fef7f7}.results-table td{padding:16px 20px;vertical-align:middle}.field-name{background-color:#f9fafb;border-right:1px solid #e5e7eb;color:#374151;font-weight:600}.field-value{font-family:Monaco,Menlo,Ubuntu Mono,monospace}.value-present{background-color:#ecfdf5;color:#059669;font-weight:500}.value-missing,.value-present{border-radius:6px;display:inline-block;min-width:80px;padding:6px 10px;text-align:center}.value-missing{background-color:#f9fafb;color:#9ca3af;font-style:italic}.field-status{text-align:center}.status-success{background-color:#d1fae5;color:#059669}.status-missing,.status-success{border-radius:20px;display:inline-block;font-size:12px;font-weight:600;padding:4px 12px}.status-missing{background-color:#fee2e2;color:#dc2626}.results-summary{align-items:center;background-color:#f8fafc;border-top:1px solid #e2e8f0;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;padding:24px}.summary-stats{display:flex;flex-wrap:wrap;gap:24px}.stat-item{align-items:flex-start;display:flex;flex-direction:column}.stat-label{color:#6b7280;font-size:12px;font-weight:500;letter-spacing:.05em;margin-bottom:4px;text-transform:uppercase}.stat-value{color:#374151;font-size:16px;font-weight:700}.export-options{gap:24px;margin-top:24px}.export-options,.export-section{display:flex;flex-direction:column}.export-section{gap:12px}.export-section h4{border-bottom:2px solid #e5e7eb;color:#374151;font-size:16px;font-weight:600;margin:0;padding-bottom:8px}.export-buttons-row{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-start}.export-button{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:13px;font-weight:600;gap:6px;justify-content:center;min-width:130px;padding:12px 18px;transition:all .2s ease;white-space:nowrap}.export-button.primary{background:linear-gradient(135deg,#059669,#047857);font-size:14px;min-width:160px;padding:14px 20px}.export-button:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.export-button.primary:hover{box-shadow:0 4px 12px #05966966}.export-button:active{transform:translateY(0)}.export-button:disabled{cursor:not-allowed;opacity:.6;transform:none}@media (max-width:768px){.results-table-container{border-left:none;border-radius:0;border-right:none;margin:0 -16px}.results-header{padding:20px 16px}.results-header h3{font-size:20px}.results-header p{font-size:14px}.results-table td,.results-table th{padding:12px 16px}.results-table th{font-size:12px}.results-table td{font-size:13px}.field-header{min-width:120px;width:35%}.value-header{min-width:150px;width:45%}.status-header{min-width:100px;width:20%}.results-summary{align-items:stretch;flex-direction:column;padding:20px 16px}.summary-stats{justify-content:space-between;margin-bottom:16px}.stat-item{align-items:center;text-align:center}.export-button,.export-options{justify-content:center}.export-button{flex:1 1;min-width:120px}}@media (max-width:480px){.summary-stats{gap:16px}.export-options,.summary-stats{flex-direction:column}.export-button{width:100%}}@media print{.results-table-container{border:1px solid #000;box-shadow:none}.results-header{background:#f0f0f0!important;color:#000!important}.export-options{display:none}.results-table tbody tr.has-value{background-color:#f5f5f5!important}.results-table tbody tr.no-value{background-color:#fafafa!important}}.tab-navigation{background-color:#f8fafc;border-bottom:1px solid #e2e8f0;display:flex;overflow-x:auto}.tab-button{background:none;border:none;border-bottom:3px solid #0000;color:#64748b;cursor:pointer;font-size:14px;font-weight:500;padding:12px 20px;transition:all .2s ease;white-space:nowrap}.tab-button:hover{background-color:#f1f5f9;color:#475569}.tab-button.active{background-color:#fff;border-bottom-color:#3b82f6;color:#3b82f6}.tab-content{min-height:300px}.transactions-section{padding:24px}.section-header{margin-bottom:20px}.section-header h4{color:#374151;font-size:18px;font-weight:600;margin:0}.transactions-table{border-collapse:collapse;font-size:14px;width:100%}.transactions-table thead{background-color:#f8fafc;border-bottom:2px solid #e2e8f0}.transactions-table th{color:#374151;font-size:13px;font-weight:600;letter-spacing:.05em;padding:12px 16px;text-align:left;text-transform:uppercase}.transactions-table tbody tr{border-bottom:1px solid #e5e7eb}.transactions-table tbody tr:hover{background-color:#f9fafb}.transactions-table td{color:#374151;padding:12px 16px}.transaction-date{color:#6b7280;font-family:Monaco,Consolas,monospace;font-size:13px}.transaction-description{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.transaction-amount{font-family:Monaco,Consolas,monospace;font-weight:600;text-align:right}.type-badge{align-items:center;border-radius:4px;display:inline-flex;font-size:12px;font-weight:500;padding:4px 8px}.type-deposit{background-color:#d1fae5;color:#065f46}.type-withdrawal{background-color:#fee2e2;color:#991b1b}.insights-section{padding:24px}.insight-card{background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:20px;padding:20px}.insight-card h5{color:#374151;font-size:16px;font-weight:600;margin:0 0 16px}.summary-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.summary-item{align-items:center;background-color:#fff;border:1px solid #e5e7eb;border-radius:6px;display:flex;justify-content:space-between;padding:12px}.summary-label{color:#6b7280;font-size:14px;font-weight:500}.summary-value{color:#374151;font-size:14px;font-weight:600}.summary-value.positive{color:#059669}.summary-value.negative{color:#dc2626}.biggest-transactions{display:flex;flex-direction:column;gap:16px}.biggest-transaction{grid-gap:12px;align-items:center;background-color:#fff;border:1px solid #e5e7eb;border-radius:6px;display:grid;gap:12px;grid-template-columns:auto 1fr auto auto;padding:12px}.biggest-transaction.deposit{border-left:4px solid #10b981}.biggest-transaction.withdrawal{border-left:4px solid #ef4444}.transaction-label{color:#374151;font-size:14px;font-weight:600;white-space:nowrap}.biggest-transaction .transaction-amount{color:#374151;font-family:Monaco,Consolas,monospace;font-size:16px;font-weight:700}.transaction-desc{color:#6b7280;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.biggest-transaction .transaction-date{color:#9ca3af;font-family:Monaco,Consolas,monospace;font-size:12px}.debt-obligations,.income-sources{display:flex;flex-direction:column;gap:12px}.debt-obligation,.income-source{background-color:#fff;border:1px solid #e5e7eb;border-radius:6px;padding:16px}.debt-header,.source-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.debt-name,.source-name{color:#374151;font-size:16px;font-weight:600}.recurring-badge{align-items:center;background-color:#dbeafe;border-radius:4px;color:#1d4ed8;display:inline-flex;font-size:11px;font-weight:500;padding:2px 6px}.debt-details,.source-details{align-items:center;color:#6b7280;display:flex;font-size:14px;justify-content:space-between}.debt-category,.source-category{color:#9ca3af;font-style:italic}.debt-amount,.source-amount{color:#374151;font-family:Monaco,Consolas,monospace;font-weight:600}.debt-frequency,.source-frequency{color:#6b7280}.no-data-message{color:#6b7280;padding:40px 24px;text-align:center}.no-data-message p{font-size:16px;margin:0}@media (max-width:768px){.tab-navigation{padding:0 8px}.tab-button{font-size:13px;padding:10px 16px}.insights-section,.transactions-section{padding:16px}.section-header h4{font-size:16px}.transactions-table td,.transactions-table th{padding:8px 12px}.transaction-description{max-width:150px}.biggest-transaction,.summary-grid{grid-template-columns:1fr}.biggest-transaction{gap:8px}.debt-details,.source-details{align-items:flex-start;flex-direction:column;gap:4px}.export-options .export-buttons-row{flex-direction:column}.export-button{justify-content:center;width:100%}.export-section h4{font-size:14px}}.document-upload{margin:0 auto;max-width:800px;padding:20px}.upload-section{margin-bottom:30px}.drop-zone{align-items:center;background-color:#f9fafb;border:3px dashed #d1d5db;border-radius:12px;cursor:pointer;display:flex;justify-content:center;min-height:200px;padding:40px 20px;text-align:center;transition:all .3s ease}.drop-zone:hover{background-color:#eff6ff;border-color:#3b82f6}.drop-zone.drag-over{background-color:#ecfdf5;border-color:#10b981;transform:scale(1.02)}.drop-zone.has-file{background-color:#f0fdf4;border-color:#10b981}.drop-zone-content{width:100%}.drop-zone-placeholder .upload-icon{font-size:48px;margin-bottom:16px}.drop-zone-placeholder h3{color:#374151;font-size:20px;font-weight:600;margin:16px 0 8px}.drop-zone-placeholder p{color:#6b7280;font-size:16px;margin:8px 0}.browse-button{background-color:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:500;margin:16px 0;padding:12px 24px;transition:all .2s ease}.browse-button:hover:not(:disabled){background-color:#2563eb;transform:translateY(-1px)}.browse-button:disabled{background-color:#9ca3af;cursor:not-allowed;transform:none}.supported-formats{color:#6b7280;font-size:14px;margin-top:16px}.file-size-limit{color:#9ca3af;font-size:12px;margin-top:4px}.file-selected{align-items:center;background-color:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;display:flex;gap:16px;justify-content:center;padding:20px}.file-icon{font-size:32px}.file-info{flex:1 1;text-align:left}.file-name{color:#374151;font-size:16px;font-weight:600;margin:0 0 4px}.file-size{color:#6b7280;font-size:14px;margin:0}.remove-file{background-color:#ef4444;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:16px;height:32px;transition:all .2s ease;width:32px}.remove-file:hover:not(:disabled){background-color:#dc2626;transform:scale(1.1)}.remove-file:disabled{background-color:#9ca3af;cursor:not-allowed;transform:none}.upload-controls{margin-top:20px;text-align:center}.upload-button{background-color:#10b981;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;min-width:160px;padding:14px 28px;transition:all .2s ease}.upload-button:hover:not(:disabled){background-color:#059669;box-shadow:0 4px 12px #10b9814d;transform:translateY(-1px)}.upload-button:disabled{background-color:#9ca3af;box-shadow:none;cursor:not-allowed;transform:none}.status-message{border-radius:8px;font-weight:500;margin-top:16px;padding:12px 16px;text-align:center}.status-message.success{background-color:#d1fae5;border:1px solid #a7f3d0;color:#065f46}.status-message.error{background-color:#fee2e2;border:1px solid #fecaca;color:#991b1b}.status-message.info{background-color:#dbeafe;border:1px solid #bfdbfe;color:#1e40af}.error-messages{background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin-top:16px;padding:16px}.error-messages h4{color:#991b1b;font-size:14px;font-weight:600;margin:0 0 8px}.error-messages ul{color:#7f1d1d;margin:0;padding-left:20px}.error-messages li{font-size:14px;margin-bottom:4px}.processing-metadata{background-color:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;margin-top:20px;padding:16px}.processing-metadata h4{color:#0c4a6e;font-size:16px;font-weight:600;margin:0 0 12px}.metadata-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.metadata-item{align-items:center;background-color:#fff;border:1px solid #e0f2fe;border-radius:6px;display:flex;justify-content:space-between;padding:8px 12px}.metadata-item .label{color:#374151;font-size:14px;font-weight:500}.metadata-item .value{color:#0c4a6e;font-size:14px;font-weight:600}.results-section{border-top:2px solid #e5e7eb;margin-top:40px;padding-top:30px}@media (max-width:768px){.document-upload{padding:16px}.drop-zone{min-height:160px;padding:30px 16px}.drop-zone-placeholder h3{font-size:18px}.file-selected{flex-direction:column}.file-info,.file-selected{text-align:center}.metadata-grid{grid-template-columns:1fr}.browse-button,.upload-button{max-width:300px;width:100%}}.eu-container{width:100%}.eu-dropzone{background:#f9fafb;border:2px dashed #d1d5db;border-radius:8px;cursor:pointer;padding:32px;position:relative;text-align:center;transition:all .3s ease}.eu-dropzone:hover{background:#eff6ff;border-color:#4f46e5}.eu-dropzone.eu-dragging{background:#dbeafe;border-color:#4f46e5;transform:scale(1.02)}.eu-upload-icon{color:#9ca3af;font-size:48px;margin-bottom:12px}.eu-upload-text{color:#4b5563;font-size:14px;margin:0 0 4px}.eu-upload-subtext{color:#9ca3af;font-size:12px;margin:0}.eu-file-input{cursor:pointer;height:100%;left:0;opacity:0;position:absolute;top:0;width:100%}.eu-file-list{display:flex;flex-direction:column;gap:8px;margin-top:16px}.eu-file-item{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:6px;display:flex;min-height:140px;padding:16px;transition:all .2s ease}.eu-file-item:hover{box-shadow:0 2px 4px #0000000d}.eu-file-icon{align-items:center;display:flex;flex-shrink:0;font-size:20px;justify-content:center;min-width:120px}.eu-file-info{flex:1 1}.eu-file-name{color:#111827;font-size:14px;font-weight:500;margin:0 0 2px}.eu-file-details{color:#6b7280;font-size:12px;margin:0}.eu-file-actions{display:flex;gap:8px}.eu-file-btn{align-items:center;background:#0000;border:none;border-radius:4px;color:#6b7280;cursor:pointer;display:flex;font-size:16px;height:32px;justify-content:center;transition:all .15s ease;width:32px}.eu-file-btn:hover{background:#e5e7eb;color:#4b5563}.eu-file-btn.eu-delete:hover{background:#fee2e2;color:#dc2626}.eu-progress{margin-top:8px}.eu-progress-bar{background:#e5e7eb;border-radius:2px;height:4px;overflow:hidden}.eu-progress-fill{background:#4f46e5;height:100%;transition:width .3s ease}.eu-error{background:#fee2e2;border:1px solid #fecaca;border-radius:6px;color:#dc2626;font-size:13px;gap:8px;margin-top:12px;padding:8px 12px}.eu-error,.eu-preview-modal{align-items:center;display:flex}.eu-preview-modal{animation:eu-fade-in .2s ease;background:#000000bf;bottom:0;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.eu-preview-content{background:#fff;border-radius:8px;max-height:90%;max-width:90%;overflow:auto;padding:20px;position:relative}.eu-preview-close{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:4px;color:#6b7280;cursor:pointer;display:flex;font-size:18px;height:32px;justify-content:center;position:absolute;right:12px;top:12px;transition:all .15s ease;width:32px}.eu-preview-close:hover{background:#f3f4f6;color:#111827}.eu-preview-image{display:block;height:auto;max-width:100%}@keyframes eu-fade-in{0%{opacity:0}to{opacity:1}}@media (max-width:768px){.eu-dropzone{padding:24px}.eu-upload-icon{font-size:36px}}.landing-page{background:#fafbfc;min-height:calc(100vh - 64px);overflow-x:hidden;position:relative}.landing-page:before{background:linear-gradient(180deg,#7c3aed08,#0000);content:"";height:400px;left:0;pointer-events:none;position:absolute;right:0;top:0}.feature-card-modern{background:#fff!important;position:relative}.feature-card-modern:before{background:linear-gradient(90deg,#7c3aed,#a78bfa);border-radius:16px 16px 0 0;content:"";height:4px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.feature-card-modern:hover:before{opacity:1}.icon-box{position:relative}.icon-box:after{background:inherit;border-radius:inherit;bottom:-4px;content:"";left:-4px;opacity:.2;position:absolute;right:-4px;top:-4px;transition:all .3s ease;z-index:-1}.feature-card-modern:hover .icon-box:after{bottom:-8px;left:-8px;opacity:.3;right:-8px;top:-8px}@media (max-width:768px){.landing-page{padding-top:20px}}
/*# sourceMappingURL=main.b05d5493.css.map*/