:root{--font-size: 16px;--background: #f8fafc;--foreground: #1e293b;--card: #fff;--card-foreground: #1e293b;--popover: #fff;--popover-foreground: #1e293b;--primary: #6fac24;--primary-foreground: #fff;--secondary: #e2e8f0;--secondary-foreground: #1e293b;--muted: #f1f5f9;--muted-foreground: #64748b;--accent: #f0f9e8;--accent-foreground: #1e293b;--destructive: #dc2626;--destructive-foreground: #fff;--cabs-primary-blue: #004b8d;--cabs-light-blue: #3fa9f5;--cabs-neutral-grey: #7a7a7a;--cabs-white: #fff;--cabs-primary-hover: #003d73;--border: #e2e8f0;--input: transparent;--input-background: #fff;--switch-background: #cbd5e1;--font-weight-medium: 500;--font-weight-normal: 400;--ring: #6fac24;--chart-1: #6fac24;--chart-2: #2e3f77;--chart-3: #84cc16;--chart-4: #22c55e;--chart-5: #16a34a;--radius: .5rem;--sidebar: #2E3F77;--sidebar-foreground: #fff;--sidebar-primary: #6fac24;--sidebar-primary-foreground: #fff;--sidebar-accent: #ffffff1a;--sidebar-accent-foreground: #fff;--sidebar-border: #ffffff1a;--sidebar-ring: #6fac24;--primary-50: #f0f9e8;--primary-100: #dcfce7;--primary-200: #bbf7d0;--primary-300: #86efac;--primary-400: #4ade80;--primary-500: #6fac24;--primary-600: #6fac24;--primary-700: #558518;--primary-800: #4f7a16;--primary-900: #3d5e11;--yellow-50: #fefce8;--yellow-700: #a16207;--red-50: #fef2f2;--green-50: #f0f9e8;--green-100: #dcfce7;--green-200: #bbf7d0;--green-300: #86efac;--green-400: #4ade80;--green-500: #6fac24;--green-600: #6fac24;--green-700: #558518;--green-800: #4f7a16;--green-900: #3d5e11;--blue-500: #004b8d;--blue-600: #004b8d;--blue-700: #003d73;--gray-50: #f8fafc;--gray-100: #f1f5f9;--gray-200: #e2e8f0;--gray-300: #cbd5e1;--gray-400: #94a3b8;--gray-500: #64748b;--gray-600: #475569;--gray-700: #334155;--gray-800: #1e293b;--gray-900: #0f172a;--error-500: #dc2626;--error-600: #dc2626;--warning-500: #f59e0b;--warning-600: #d97706;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--radius-sm: .25rem;--radius: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--background);color:var(--foreground);line-height:1.6;font-size:var(--font-size)}h1,h2,h3,h4,h5,h6{color:var(--gray-900);font-weight:600;line-height:1.2}h1{font-size:2.5rem;font-weight:700}h2{font-size:2rem;margin-bottom:var(--spacing-lg)}h3{font-size:1.5rem;margin-bottom:var(--spacing-md)}p{color:var(--gray-600);margin-bottom:var(--spacing-md)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:.75rem 1.5rem;border:none;border-radius:var(--radius-md);font-weight:500;font-size:1rem;cursor:pointer;transition:all .2s;text-decoration:none;white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background-color:var(--primary-600);color:#fff}.btn-primary:hover:not(:disabled){background-color:var(--primary-700);transform:translateY(-1px);box-shadow:var(--shadow-lg)}.btn-secondary{background-color:var(--gray-100);color:var(--gray-700);border:1px solid var(--gray-300)}.btn-secondary:hover:not(:disabled){background-color:var(--gray-200);border-color:var(--gray-400)}.btn-success{background-color:var(--green-600);color:#fff}.btn-success:hover:not(:disabled){background-color:var(--green-700)}.btn-lg{padding:1rem 2rem;font-size:1.125rem}.btn-sm{padding:.5rem 1rem;font-size:.875rem}.form-group{margin-bottom:var(--spacing-lg)}.form-label{display:block;font-weight:500;color:var(--gray-700);margin-bottom:var(--spacing-sm)}.form-input,.form-select,.form-textarea{width:100%;padding:.75rem;border:1px solid var(--gray-300);border-radius:var(--radius);font-size:1rem;transition:all .2s;background-color:#fff}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--primary-500);box-shadow:0 0 0 3px #3b82f61a}.form-textarea{resize:vertical;min-height:100px}.form-error{color:var(--error-500);font-size:.875rem;margin-top:var(--spacing-xs)}.card{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow);border:1px solid var(--gray-200);overflow:hidden}.card-header{padding:var(--spacing-xl);border-bottom:1px solid var(--gray-200);background:linear-gradient(135deg,var(--primary-50),var(--green-50))}.card-body{padding:var(--spacing-xl)}.card-footer{padding:var(--spacing-xl);background-color:var(--gray-50);border-top:1px solid var(--gray-200)}.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-lg)}.section{padding:var(--spacing-2xl) 0}.grid{display:grid;gap:var(--spacing-lg)}.grid-cols-1{grid-template-columns:1fr}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}@media(max-width:768px){.grid-cols-2,.grid-cols-3{grid-template-columns:1fr}}.mt-0{margin-top:0}.mt-1{margin-top:var(--spacing-xs)}.mt-2{margin-top:var(--spacing-sm)}.mt-4{margin-top:var(--spacing-md)}.mt-6{margin-top:var(--spacing-lg)}.mt-8{margin-top:var(--spacing-xl)}.mb-0{margin-bottom:0}.mb-1{margin-bottom:var(--spacing-xs)}.mb-2{margin-bottom:var(--spacing-sm)}.mb-4{margin-bottom:var(--spacing-md)}.mb-6{margin-bottom:var(--spacing-lg)}.mb-8{margin-bottom:var(--spacing-xl)}.notification{position:fixed;top:1rem;right:1rem;padding:1rem 1.5rem;border-radius:var(--radius-md);color:#fff;font-weight:500;z-index:1000;max-width:400px;box-shadow:var(--shadow-lg)}.notification.success{background-color:var(--green-600)}.notification.error{background-color:var(--error-600)}.notification.warning{background-color:var(--warning-600)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;color:#2c3e50;background-color:#f8fafc}.App{min-height:100vh;display:flex;flex-direction:column}.container{max-width:1200px;margin:0 auto;padding:0 2rem}.app-header{background:linear-gradient(135deg,#1e40af,#3b82f6);color:#fff;padding:3rem 0;box-shadow:0 4px 6px -1px #0000001a}.app-header h1{font-size:2.5rem;font-weight:700;margin-bottom:.5rem}.app-header p{font-size:1.1rem;opacity:.9;max-width:600px;margin:0 auto}.notification{padding:1rem 2rem;margin:1rem auto;max-width:800px;border-radius:8px;font-weight:500;animation:slideIn .3s ease-out}.notification.success{background-color:#dcfce7;color:#16a34a;border:1px solid #bbf7d0}.notification.error{background-color:#fef2f2;color:#dc2626;border:1px solid #fecaca}@keyframes slideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.main-content{flex:1;padding:3rem 0}.progress-bar{width:100%;height:6px;background-color:#e5e7eb;border-radius:3px;margin-bottom:3rem;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(135deg,#1e40af,#3b82f6);border-radius:3px;transition:width .3s ease}.step-content{max-width:800px;margin:0 auto}.step-header{text-align:center;margin-bottom:3rem}.step-header h2{color:#1e293b;font-size:2rem;font-weight:600;margin-bottom:1rem}.step-header p{color:#64748b;font-size:1.1rem;max-width:600px;margin:0 auto}.loan-request-form,.document-upload,.company-details-form{background:#fff;padding:3rem;border-radius:16px;box-shadow:0 10px 25px -5px #0000001a,0 10px 10px -5px #0000000a;border:1px solid #e2e8f0}.form-header{text-align:center;margin-bottom:3rem}.form-header h2{color:#1e293b;font-size:2rem;font-weight:600;margin-bottom:1rem}.form-header p{color:#64748b;font-size:1.1rem}.currency-input{position:relative}.currency-symbol{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:#6b7280;font-weight:500;font-size:1rem}.currency-input input{padding-left:2.5rem!important}.amount-display{margin-top:.5rem;color:#16a34a;font-weight:600;font-size:1.1rem}.form-field.error input,.form-field.error select,.form-field.error textarea{border-color:#ef4444}.error-text{display:block;color:#ef4444;font-size:.875rem;margin-top:.25rem}.form-actions{display:flex;gap:1rem;margin-top:3rem;justify-content:space-between}.back-button,.next-button,.submit-button{padding:1rem 2rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;border:none;min-width:120px}.back-button{background:#f8fafc;color:#64748b;border:2px solid #e2e8f0}.back-button:hover:not(:disabled){background:#e2e8f0;color:#475569}.next-button,.submit-button{background:linear-gradient(135deg,#1e40af,#3b82f6);color:#fff;box-shadow:0 4px 6px -1px #0000001a}.next-button:hover:not(:disabled),.submit-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 12px -2px #00000026}.file-selected{display:flex;align-items:center;justify-content:space-between;padding:1rem;background:#f0f9ff;border:2px solid #0ea5e9;border-radius:8px}.file-info{display:flex;align-items:center;gap:1rem}.file-icon{font-size:2rem}.file-details .file-name{font-weight:500;color:#0c4a6e;margin-bottom:.25rem}.file-details .file-size{color:#0369a1;font-size:.875rem}.remove-file{background:#ef4444;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;font-size:.875rem;cursor:pointer;transition:background-color .2s}.remove-file:hover{background:#dc2626}.upload-icon{font-size:3rem;margin-bottom:1rem}.choose-file-btn{background:#3b82f6;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s;margin:1rem 0}.choose-file-btn:hover{background:#2563eb}.file-types{font-size:.875rem;color:#6b7280;margin-top:1rem}.company-form .form-section{margin-bottom:3rem}.company-form .form-section h3{color:#374151;font-size:1.3rem;font-weight:600;margin-bottom:1.5rem;padding-bottom:.5rem;border-bottom:2px solid #e5e7eb}.review-step{background:#fff;padding:3rem;border-radius:16px;box-shadow:0 10px 25px -5px #0000001a,0 10px 10px -5px #0000000a;border:1px solid #e2e8f0}.review-section{margin-bottom:2rem;padding:1.5rem;background:#f8fafc;border-radius:12px;border:1px solid #e2e8f0}.review-section h3{color:#374151;font-size:1.2rem;font-weight:600;margin-bottom:1rem}.review-item{display:flex;justify-content:space-between;align-items:flex-start;padding:.75rem 0;border-bottom:1px solid #e5e7eb}.review-item:last-child{border-bottom:none}.review-item span:first-child{color:#6b7280;font-weight:500;min-width:150px}.review-item span:last-child{color:#374151;text-align:right;flex:1}.complete-step{text-align:center;background:#fff;padding:4rem 3rem;border-radius:16px;box-shadow:0 10px 25px -5px #0000001a,0 10px 10px -5px #0000000a;border:1px solid #e2e8f0}.success-message{max-width:500px;margin:0 auto}.success-icon{font-size:4rem;margin-bottom:1.5rem}.success-message h2{color:#16a34a;font-size:2rem;font-weight:600;margin-bottom:1rem}.success-message p{color:#64748b;font-size:1.1rem;margin-bottom:1rem}.application-id{background:#dcfce7;color:#16a34a;padding:1rem 1.5rem;border-radius:8px;font-weight:600;margin:2rem 0;border:1px solid #bbf7d0}.uploaded-documents,.extracted-summary{margin-bottom:2rem;padding:1.5rem;background:#f8fafc;border-radius:12px;border:1px solid #e2e8f0}.uploaded-documents h3,.extracted-summary h3{color:#374151;font-size:1.1rem;font-weight:600;margin-bottom:1rem}.documents-list{display:flex;flex-direction:column;gap:.75rem}.document-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#fff;border-radius:8px;border:1px solid #e5e7eb}.doc-icon{font-size:1.25rem}.doc-info{flex:1;display:flex;flex-direction:column;gap:.25rem}.doc-name{font-weight:500;color:#374151}.doc-status{font-size:.875rem;color:#6b7280;text-transform:capitalize}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.summary-item{display:flex;flex-direction:column;gap:.25rem}.summary-item .label{font-size:.875rem;color:#6b7280;font-weight:500}.summary-item .value{color:#374151;font-weight:500}.upload-section{padding:1.5rem;background:#fff;border-radius:12px;border:2px dashed #e5e7eb;margin-bottom:2rem}.upload-section h3{color:#374151;font-size:1.1rem;font-weight:600;margin-bottom:1rem}.drop-zone.has-file{border-color:#3b82f6;background-color:#eff6ff}.directors-shareholding-form{background:#fff;padding:3rem;border-radius:16px;box-shadow:0 10px 25px -5px #0000001a,0 10px 10px -5px #0000000a;border:1px solid #e2e8f0}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.section-header h3{color:#374151;font-size:1.3rem;font-weight:600}.add-button{background:#3b82f6;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background-color .2s}.add-button:hover{background:#2563eb}.director-card,.shareholder-card{margin-bottom:2rem;padding:2rem;background:#f8fafc;border-radius:12px;border:1px solid #e2e8f0}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.card-header h4{color:#374151;font-size:1.1rem;font-weight:600}.remove-button{background:#ef4444;color:#fff;border:none;padding:.5rem .75rem;border-radius:6px;font-size:.875rem;cursor:pointer;transition:background-color .2s}.remove-button:hover{background:#dc2626}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1rem}.shareholding-summary{display:flex;align-items:center;gap:1rem;padding:1rem;background:#f0f9ff;border-radius:8px;border:1px solid #bfdbfe;margin-bottom:2rem;font-weight:500}@media(max-width:768px){.form-row{grid-template-columns:1fr}.section-header,.card-header{flex-direction:column;align-items:stretch;gap:1rem}.summary-grid{grid-template-columns:1fr}}.document-upload{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;border:1px solid #e2e8f0}.document-upload h3{color:#1e293b;margin-bottom:1.5rem;font-size:1.5rem;font-weight:600}.document-type-selector{margin-bottom:1.5rem}.document-type-selector label{display:block;margin-bottom:.5rem;color:#374151;font-weight:500}.document-type-selector select{width:100%;padding:.75rem;border:2px solid #e5e7eb;border-radius:8px;font-size:1rem;transition:border-color .2s}.document-type-selector select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.drop-zone{border:3px dashed #cbd5e1;border-radius:12px;padding:3rem 2rem;text-align:center;transition:all .3s ease;margin-bottom:1.5rem;min-height:200px;display:flex;align-items:center;justify-content:center}.drop-zone:hover,.drop-zone.active{border-color:#3b82f6;background-color:#eff6ff}.drop-prompt p{color:#6b7280;margin-bottom:1rem;font-size:1.1rem}.drop-prompt button{background:#3b82f6;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s}.drop-prompt button:hover{background:#2563eb}.file-selected{text-align:center}.file-selected p{color:#374151;margin-bottom:1rem;font-weight:500}.file-selected button{background:#ef4444;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;font-size:.9rem;cursor:pointer;transition:background-color .2s}.file-selected button:hover{background:#dc2626}.upload-button{width:100%;background:linear-gradient(135deg,#1e40af,#3b82f6);color:#fff;border:none;padding:1rem;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 4px 6px -1px #0000001a}.upload-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 12px -2px #00000026}.upload-button:disabled{opacity:.6;cursor:not-allowed}.loan-application-form{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;border:1px solid #e2e8f0}.loan-application-form h3{color:#1e293b;margin-bottom:2rem;font-size:1.5rem;font-weight:600}.form-section{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid #e5e7eb}.form-section:last-of-type{border-bottom:none;margin-bottom:0}.form-section h4{color:#374151;margin-bottom:1.5rem;font-size:1.2rem;font-weight:600}.form-field{margin-bottom:1.5rem;position:relative}.form-field.extracted{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);padding:1rem;border-radius:8px;border:1px solid #7dd3fc}.form-field label{display:block;margin-bottom:.5rem;color:#374151;font-weight:500}.form-field input,.form-field select,.form-field textarea{width:100%;padding:.75rem;border:2px solid #e5e7eb;border-radius:8px;font-size:1rem;transition:border-color .2s}.form-field.extracted input,.form-field.extracted select,.form-field.extracted textarea{border-color:#0ea5e9;background-color:#fff}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.extracted-indicator{display:block;font-size:.8rem;color:#0369a1;margin-top:.25rem;font-weight:500}.address-row{display:grid;grid-template-columns:2fr 1fr 1fr;gap:1rem}@media(max-width:768px){.address-row{grid-template-columns:1fr;gap:1rem}}.submit-button{width:100%;background:linear-gradient(135deg,#16a34a,#22c55e);color:#fff;border:none;padding:1.25rem;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 4px 6px -1px #0000001a;margin-top:2rem}.submit-button:hover{transform:translateY(-1px);box-shadow:0 6px 12px -2px #00000026}.app-footer{background:#1e293b;color:#94a3b8;padding:2rem 0;text-align:center;margin-top:auto}@media(max-width:768px){.container{padding:0 1rem}.app-header{padding:2rem 0}.app-header h1{font-size:2rem}.main-content{padding:2rem 0}.document-upload,.loan-application-form{padding:1.5rem}}
