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}.customer-upload{align-items:center;background:linear-gradient(135deg,#f8fafc,#f1f5f9);display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Inter,Roboto,sans-serif;justify-content:center;min-height:100vh;padding:15px}.upload-container{animation:slideInUp .6s ease-out;background:#fff;border-radius:16px;box-shadow:0 10px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:900px;overflow:hidden;position:relative;width:100%}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.brand-header{animation:fadeInUp .6s ease-out .1s both;margin-bottom:20px}.brand-logo{align-items:center;cursor:pointer;display:flex;justify-content:center;margin-bottom:8px;transition:all .3s ease}.brand-logo:hover{transform:scale(1.05)}.brand-name{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#1e293b,#475569);-webkit-background-clip:text;background-clip:text;color:#1e293b;font-size:3rem;font-weight:800;letter-spacing:-1px;margin:0;position:relative;transition:all .3s ease}.brand-name:after{background:linear-gradient(135deg,#f97316,#ea580c);bottom:-2px;content:"";height:3px;left:0;position:absolute;transition:width .3s ease;width:0}.brand-logo:hover .brand-name:after{width:100%}.brand-logo:hover .brand-name{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#f97316,#ea580c);-webkit-background-clip:text;background-clip:text;transform:translateY(-2px)}.brand-tagline{animation:fadeInUp .6s ease-out .3s both;color:#64748b;font-size:1.1rem;font-weight:500;margin:0;transition:all .3s ease}.brand-logo:hover+.brand-tagline{color:#f97316;transform:translateY(-1px)}.step-header{background:#fff;border-bottom:1px solid #e2e8f0;overflow:hidden;padding:20px 48px 16px}.step-header,.step-header h2{position:relative;text-align:center}.step-header h2{-webkit-text-fill-color:#0000;animation:fadeInUp .8s ease-out .4s both;background:linear-gradient(135deg,#1e293b,#475569);-webkit-background-clip:text;background-clip:text;color:#1e293b;cursor:pointer;font-size:2.5rem;font-weight:700;letter-spacing:-1px;margin:0;transition:all .3s ease}.step-header h2:after{bottom:-4px;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);transition:all .3s ease;width:0}.step-header h2:after,.step-header h2:hover{background:linear-gradient(135deg,#f97316,#ea580c)}.step-header h2:hover{-webkit-text-fill-color:#0000;-webkit-background-clip:text;background-clip:text;transform:translateY(-2px)}.step-header h2:hover:after{width:100%}.header-actions{position:absolute;right:20px;top:20px;z-index:10}.new-analysis-btn{align-items:center;background:#f97316;border:none;border-radius:50%;box-shadow:0 4px 12px #f9731633;color:#fff;cursor:pointer;display:flex;height:44px;justify-content:center;overflow:hidden;padding:12px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);width:44px}.new-analysis-btn:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.new-analysis-btn:hover:before{left:100%}.new-analysis-btn:focus{box-shadow:0 0 0 3px #ff6b354d}.new-analysis-btn:hover{background:#e55a2b;box-shadow:0 8px 25px #ff6b3566;transform:translateY(-2px) scale(1.05)}.new-analysis-btn:hover svg{transform:rotate(90deg);transition:transform .3s cubic-bezier(.4,0,.2,1)}.new-analysis-btn:focus{box-shadow:0 0 0 3px #64748b4d;outline:none}.new-analysis-btn:active{transform:translateY(0)}.upload-section{animation:fadeIn .6s ease-out .4s both;border-bottom:1px solid #e2e8f0;margin-bottom:24px;padding:0 48px 24px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.upload-section h3{color:#1e293b;font-size:1.25rem;font-weight:600;margin:0 0 16px;position:relative}.upload-section h3:after{animation:expandWidth .6s ease-out .6s both;background:#64748b;bottom:-5px;content:"";height:2px;left:0;position:absolute;width:30px}@keyframes expandWidth{0%{width:0}to{width:30px}}.upload-area{animation:fadeInUp .8s ease-out .6s both;margin:32px 0}.upload-buttons{align-items:center;display:flex;flex-direction:column;gap:24px;padding:40px}.dropzone{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:2px dashed #e2e8f0;border-radius:20px;box-shadow:0 4px 6px #0000000d;cursor:pointer;overflow:hidden;padding:80px 40px;position:relative;text-align:center;transition:all .4s cubic-bezier(.4,0,.2,1)}.dropzone:before{background:linear-gradient(90deg,#0000,#64748b0d,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.dropzone:hover:before{left:100%}.dropzone.active,.dropzone:hover{background:#fff7ed;border-color:#f97316;box-shadow:0 4px 12px #f9731626;transform:translateY(-2px)}.upload-icon{animation:bounce 2s ease-in-out infinite;color:#f97316;font-size:3.5rem;margin-bottom:0;transition:all .4s ease}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}.dropzone:hover .upload-icon{color:#f97316;transform:scale(1.1)}.dropzone h3{color:#1e293b;font-size:1.3rem;font-weight:600;margin:0 0 12px;transition:color .3s ease}.dropzone:hover h3{color:#475569}.file-input{display:none}.file-input-label{align-items:center;background:#fff;border:2px dashed #f97316;border-radius:20px;box-shadow:0 2px 8px #f973161a;cursor:pointer;display:flex;flex-direction:column;gap:12px;min-width:200px;padding:32px 24px;text-align:center;transition:all .3s ease}.file-input-label:hover{background:#fff7ed;border-color:#ea580c;box-shadow:0 8px 25px #f9731633;transform:translateY(-3px)}.file-input-label span{color:#1e293b;font-size:1.1rem;font-weight:600}.file-input-label:hover .upload-icon{color:#ea580c;transform:scale(1.1)}.process-section{animation:fadeInUp .6s ease-out;display:flex;justify-content:center;margin:24px 0}.process-btn{align-items:center;background:linear-gradient(135deg,#f97316,#ea580c);border:none;border-radius:12px;box-shadow:0 4px 15px #f973164d;color:#fff;cursor:pointer;display:flex;font-size:1.1rem;font-weight:600;gap:12px;min-width:200px;padding:16px 32px;transition:all .3s ease}.process-btn:hover:not(:disabled){background:linear-gradient(135deg,#ea580c,#dc2626);box-shadow:0 8px 25px #f9731666;transform:translateY(-2px)}.process-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.file-types{border-radius:20px;color:#64748b;display:inline-block;font-size:.9rem;padding:8px 16px;transition:all .3s ease}.dropzone:hover .file-types{background:#f8fafc;color:#475569}.uploaded-files{animation:slideInRight .5s ease-out;margin:15px 0}.uploaded-files h4{color:#1e293b;font-size:1.3rem;font-weight:600;margin:0 0 12px}.file-list{display:flex;flex-direction:column;gap:10px}.file-item{align-items:center;animation:slideInUp .4s ease-out;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;display:flex;justify-content:space-between;padding:14px;transition:all .3s ease}.file-item:hover{background:#f1f5f9;border-color:#64748b;box-shadow:0 4px 12px #0000000d;transform:translateX(5px)}.file-info{align-items:center;display:flex;flex:1 1;gap:12px}.file-info svg{color:#64748b;font-size:1.5rem;transition:transform .3s ease}.file-item:hover .file-info svg{transform:scale(1.1)}.file-name{color:#1e293b;font-weight:500;transition:color .3s ease}.file-item:hover .file-name{color:#475569}.file-size{color:#64748b;font-size:.9rem}.file-status{align-items:center;display:flex;gap:12px}.progress-bar{background:#e2e8f0;border-radius:3px;height:6px;overflow:hidden;position:relative;width:100px}.progress-fill{background:#64748b;height:100%;position:relative;transition:width .3s ease}.progress-fill:after{animation:shimmer 1.5s ease-in-out infinite;background:linear-gradient(90deg,#0000,#fff6,#0000);bottom:0;content:"";left:0;position:absolute;right:0;top:0}@keyframes shimmer{0%,to{transform:translateX(-100%)}50%{transform:translateX(100%)}}.status-icon{font-size:1.2rem;transition:all .3s ease}.status-icon.success{animation:successPulse .6s ease-out;color:#10b981}.status-icon.error{animation:errorShake .6s ease-out;color:#ef4444}@keyframes errorShake{0%,to{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}.remove-file-btn{align-items:center;background:#fee2e2;border:none;border-radius:50%;color:#dc2626;cursor:pointer;display:flex;font-size:14px;font-weight:700;height:28px;justify-content:center;transition:all .3s ease;width:28px}.remove-file-btn:hover{background:#fecaca;color:#b91c1c;transform:scale(1.1)}.remove-file-btn svg{transition:all .3s ease}.remove-file-btn:hover svg{transform:rotate(90deg)}.broker-info-section{animation:fadeIn .6s ease-out .8s both;border-bottom:1px solid #e2e8f0;margin-bottom:24px;padding:0 48px 24px}.broker-info-section h3{color:#1e293b;font-size:1.25rem;font-weight:600;margin:0 0 16px;position:relative}.broker-info-section h3:after{animation:expandWidth .6s ease-out 1s both;background:#64748b;bottom:-5px;content:"";height:2px;left:0;position:absolute;width:30px}.info-header{align-items:center;display:flex;gap:12px;margin-bottom:20px}.info-icon{animation:iconWiggle 2s ease-in-out infinite;color:#f97316}@keyframes iconWiggle{0%,to{transform:rotate(0deg)}25%{transform:rotate(-5deg)}75%{transform:rotate(5deg)}}.info-header h3{color:#1e293b;font-size:1.125rem;font-weight:600;margin:0}.form-group{display:flex;flex-direction:column}.form-group label{color:#374151;font-weight:600;margin-bottom:4px}.broker-textarea{border:1px solid #e2e8f0;border-radius:8px;font-family:inherit;font-size:.875rem;min-height:80px;padding:12px;position:relative;resize:vertical;transition:all .3s cubic-bezier(.4,0,.2,1)}.broker-textarea:focus{border-color:#f97316;box-shadow:0 0 0 3px #f973161a;outline:none;transform:translateY(-1px)}.broker-textarea::placeholder{color:#9ca3af;transition:color .3s ease}.broker-textarea:focus::placeholder{color:#d1d5db}.suggested-prompts{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.prompt-tag{animation:promptTagFloat .6s ease-out;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:20px;color:#64748b;cursor:pointer;font-size:.875rem;padding:6px 12px;transition:all .2s ease;white-space:nowrap}@keyframes promptTagFloat{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.prompt-tag:hover{background:#f97316;border-color:#f97316;box-shadow:0 4px 12px #f973164d;color:#fff;transform:translateY(-2px) scale(1.05)}.processing-section{animation:fadeInScale .5s ease-out;background:#f8fafc;border-radius:12px;margin:0 40px 15px;padding:30px;text-align:center}@keyframes fadeInScale{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.processing-content{margin:0 auto;max-width:400px;text-align:center}.spinner{align-items:center;color:#f97316;display:flex;font-size:2.5rem;justify-content:center;margin-bottom:30px}.spinner-dot{animation:spin 2s linear infinite;background:#f97316;border-radius:50%;height:24px;width:24px}.processing-content h3{color:#1e293b;font-size:1.8rem;font-weight:600;margin:0}.processing-steps{display:flex;flex-direction:column;gap:12px;text-align:left}.step{background:#f8fafc;border-radius:8px;color:#64748b;font-weight:500;overflow:hidden;padding:10px 16px;position:relative;transition:all .3s ease}.step:before{background:linear-gradient(90deg,#0000,#64748b0d,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.step.active{align-items:center;animation:activeStep 2s ease-in-out infinite;background:#fff7ed;border-left:4px solid #f97316;color:#1e293b;display:flex;gap:8px}.step.active:before{left:100%}@keyframes activeStep{0%,to{transform:translateX(0)}50%{transform:translateX(5px)}}.pulse-dot{animation:pulse 1.5s ease-in-out infinite;background:#f97316;border-radius:50%;height:8px;width:8px}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.2)}}.processing-overlay{align-items:center;animation:fadeIn .3s ease-out;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000d9;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.processing-overlay .processing-content{animation:fadeInScale .4s ease-out;background:#fff;border-radius:20px;box-shadow:0 25px 50px #0000004d;max-width:400px;padding:48px;text-align:center;width:90%}.processing-overlay .processing-content h3{color:#1e293b;font-size:1.5rem;font-weight:600;margin:0 0 12px}.processing-overlay .processing-content p{color:#64748b;font-size:1rem;margin:0}.modern-spinner{height:80px;margin:0 auto 24px;position:relative;width:80px}.spinner-ring{animation:spin 1.2s linear infinite;border:3px solid #0000;border-radius:50%;border-top-color:#f97316;height:100%;position:absolute;width:100%}.spinner-ring:nth-child(2){animation-delay:-.4s;border-top-color:#ea580c;height:70%;left:15%;top:15%;width:70%}.spinner-ring:nth-child(3){animation-delay:-.8s;border-top-color:#dc2626;height:40%;left:30%;top:30%;width:40%}.results-step{animation:slideInUp .6s ease-out;padding:0 40px 30px}.analysis-results{margin:0 auto;max-width:1200px;width:100%}.findings-section,.missing-section,.next-steps-section,.status-section{animation:fadeInUp .5s ease-out;margin-bottom:25px}.findings-section h3,.missing-section h3,.next-steps-section h3,.status-section h3{color:#1e293b;font-size:1.3rem;font-weight:600;margin:0 0 12px;position:relative}.findings-section h3:after,.missing-section h3:after,.next-steps-section h3:after,.status-section h3:after{animation:expandWidth .6s ease-out both;background:#64748b;bottom:-5px;content:"";height:2px;left:0;position:absolute;width:20px}.status-badge{animation:badgePulse .6s ease-out;font-size:.8rem;padding:6px 16px;transition:all .3s ease}@keyframes badgePulse{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.status-badge.incomplete{background:#fef3c7;color:#d97706}.status-badge.complete{background:#d1fae5;color:#059669}.status-badge.approved{background:#dbeafe;color:#2563eb}.findings-section ul,.missing-section ul,.next-steps-section ul{list-style:none;margin:0;padding:0}.findings-section li,.missing-section li,.next-steps-section li{animation:slideInLeft .4s ease-out;background:#f8fafc;border-left:4px solid #64748b;border-radius:8px;color:#374151;font-weight:500;margin-bottom:6px;padding:10px 14px;transition:all .3s ease}.findings-section li:hover,.missing-section li:hover,.next-steps-section li:hover{box-shadow:0 4px 12px #0000000d;transform:translateX(5px)}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}.missing-section li{background:#fffbeb;border-left-color:#f59e0b}.next-steps-section li{background:#f0fdf4;border-left-color:#10b981}.extracted-data-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;margin-top:24px;padding:20px}.extracted-data-section h3{color:#1e293b;font-size:18px;font-weight:600;margin:0 0 16px}.raw-data-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;margin-top:24px;padding:20px}.raw-data-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.raw-data-header h3{color:#1e293b;font-size:18px;font-weight:600;margin:0}.toggle-raw-btn{align-items:center;background:#e2e8f0;border:none;border-radius:6px;color:#64748b;cursor:pointer;display:flex;font-size:14px;font-weight:700;height:32px;justify-content:center;transition:all .3s ease;width:32px}.toggle-raw-btn:hover{background:#cbd5e1;color:#475569;transform:scale(1.05)}.toggle-raw-btn:active{transform:scale(.95)}.raw-output{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:inset 0 2px 4px #0000000f;max-height:600px;overflow-y:auto;padding:20px}.raw-output pre{word-wrap:break-word;background:#0000;color:#334155;font-family:Monaco,Menlo,Ubuntu Mono,Consolas,monospace;font-size:13px;line-height:1.5;margin:0;white-space:pre-wrap}.summary-section{background:linear-gradient(135deg,#fff,#f8fafc);border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 6px #0000000d;margin-top:24px;padding:32px}.summary-section h3{color:#1e293b;font-size:20px;font-weight:700;letter-spacing:-.5px;margin:0 0 24px}.summary-section p{color:#64748b;font-size:15px;line-height:1.6;margin:0}.summary-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:20px}.summary-item{background:#fff;border:1px solid #f1f5f9;border-radius:12px;box-shadow:0 2px 4px #0000000a;padding:20px;transition:all .3s ease}.summary-item:hover{border-color:#e2e8f0;box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.summary-item strong{color:#1e293b;display:block;font-size:14px;font-weight:600;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.summary-text{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-left:4px solid #0ea5e9;border-radius:10px;color:#0c4a6e;font-weight:500;padding:16px 20px}.statements-section{background:linear-gradient(135deg,#fff,#f8fafc);border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 6px #0000000d;margin-top:24px;padding:32px}.statements-section h3{color:#1e293b;font-size:20px;font-weight:700;letter-spacing:-.5px;margin:0 0 24px}.error-section{background:#fef2f2;border-left:4px solid #dc2626;border-radius:8px;margin-top:20px;padding:16px 20px}.error-section h3{color:#991b1b;font-size:16px;font-weight:600;margin:0 0 8px}.error-details .error-message{background:#fecaca;border:1px solid #fca5a5;border-radius:4px;color:#991b1b;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:13px;margin:4px 0;padding:8px 12px}.status-badge{animation:badgePulse 2s ease-in-out infinite;border-radius:20px;display:inline-block;font-size:14px;font-weight:600;letter-spacing:.5px;padding:8px 16px;text-transform:uppercase}.status-badge.complete{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 4px 12px #10b9814d;color:#fff}.status-badge.error{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 4px 12px #ef44444d;color:#fff}.status-badge.incomplete{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 4px 12px #f59e0b4d;color:#fff}.step-actions{animation:fadeInUp .6s ease-out 1.2s both;display:flex;gap:16px;justify-content:center;margin-bottom:32px;margin-top:24px;padding-bottom:16px;padding-top:24px}.btn-primary,.btn-secondary{align-items:center;border:none;border-radius:10px;cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:600;gap:8px;justify-content:center;min-width:120px;overflow:hidden;padding:12px 24px;position:relative;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-primary:before,.btn-secondary:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.btn-primary:hover:before,.btn-secondary:hover:before{left:100%}.btn-primary{background:#f97316;box-shadow:0 4px 12px #f9731633;color:#fff}.btn-primary:hover{background:#ea580c;box-shadow:0 8px 25px #f973164d;transform:translateY(-2px) scale(1.02)}.btn-primary:hover svg{transform:scale(1.1);transition:transform .3s cubic-bezier(.4,0,.2,1)}.btn-primary:focus{box-shadow:0 0 0 3px #f973164d;outline:none}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{cursor:not-allowed;opacity:.6;transform:none}.btn-secondary{align-items:center;background:linear-gradient(135deg,#64748b,#475569);border:none;border-radius:12px;box-shadow:0 4px 15px #64748b4d;color:#fff;cursor:pointer;display:flex;font-size:1.1rem;font-weight:600;gap:12px;min-width:200px;padding:16px 32px;transition:all .3s ease}.btn-secondary:hover{background:linear-gradient(135deg,#475569,#374151);box-shadow:0 8px 25px #64748b66;transform:translateY(-2px)}.btn-secondary:active{transform:translateY(0)}@media (max-width:768px){.customer-upload{padding:10px}.upload-container{border-radius:16px}.analysis-results{max-width:100%;padding:0 10px}.brand-name{font-size:2.5rem}.brand-tagline{font-size:1rem}.step-header{padding:20px 20px 8px}.step-header h2{font-size:1.8rem}.broker-info-section,.results-step,.upload-section{padding:0 20px 12px}.dropzone{padding:40px 20px}.dropzone h3{font-size:1.2rem}.processing-section{margin:0 20px 12px;padding:25px 20px}.step-actions{align-items:center;flex-direction:column}.btn-primary,.btn-secondary{max-width:280px;width:100%}.data-grid{grid-template-columns:1fr}.new-analysis-btn{font-size:.75rem;padding:5px 10px;right:15px;top:15px}}.gemini-analysis-section{animation:slideInUp .6s ease-out;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:2px solid #0ea5e9;border-radius:12px;margin:20px 0;padding:25px}.gemini-analysis-section h3{align-items:center;color:#0c4a6e;display:flex;font-size:1.5rem;font-weight:600;gap:10px;margin:0 0 20px}.gemini-analysis-section .analysis-summary{background:#ffffffb3;border-radius:8px;margin-bottom:20px;padding:15px}.gemini-analysis-section .analysis-summary p{color:#1e293b;font-weight:500;margin:5px 0}.gemini-analysis-section .analysis-details{grid-gap:15px;display:grid;gap:15px}.gemini-analysis-section .analysis-item{background:#fff;border-left:4px solid #0ea5e9;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:15px}.gemini-analysis-section .analysis-item strong{color:#0c4a6e;display:block;font-size:.95rem;margin-bottom:8px}.gemini-analysis-section .analysis-item ul{margin:8px 0 0;padding-left:20px}.gemini-analysis-section .analysis-item li{color:#475569;line-height:1.4;margin:4px 0}.ai-analysis-section{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;margin-bottom:32px;padding:32px}.ai-analysis-section h3{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#1e293b,#475569);-webkit-background-clip:text;background-clip:text;color:#1e293b;cursor:pointer;font-size:20px;font-weight:700;letter-spacing:-.025em;margin:0 0 24px;position:relative;transition:all .3s ease}.ai-analysis-section h3:after{background:linear-gradient(135deg,#f97316,#ea580c);bottom:-4px;content:"";height:3px;left:0;position:absolute;transition:width .3s ease;width:0}.ai-analysis-section h3:hover:after{width:100%}.ai-analysis-section h3:hover{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#f97316,#ea580c);-webkit-background-clip:text;background-clip:text;transform:translateY(-1px)}.ai-analysis-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:24px}.ai-analysis-item{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;padding:16px;transition:all .3s ease}.ai-analysis-item:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transform:translateY(-2px)}.ai-analysis-item strong{color:#1e293b;display:block;font-weight:600;margin-bottom:4px}.ai-findings-section,.ai-notes-section,.ai-recommendations-section,.ai-risks-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;margin-top:24px;padding:20px}.ai-findings-section h4,.ai-notes-section h4,.ai-recommendations-section h4,.ai-risks-section h4{color:#1e293b;font-size:16px;font-weight:600;letter-spacing:-.025em;margin:0 0 16px}.ai-findings-section ul,.ai-recommendations-section ul,.ai-risks-section ul{list-style:none;margin:0;padding-left:20px}.ai-findings-section li,.ai-recommendations-section li,.ai-risks-section li{background:#f8fafc;border-left:3px solid #f97316;border-radius:8px;color:#374151;font-size:14px;line-height:1.5;margin-bottom:8px;padding:8px 12px;transition:all .3s ease}.ai-findings-section li:hover,.ai-recommendations-section li:hover,.ai-risks-section li:hover{background:#f1f5f9;transform:translateX(4px)}.ai-notes-section p{color:#374151;font-size:14px;line-height:1.6;margin:0}.success-toast{animation:slideInRight .5s ease-out;position:fixed;right:20px;top:20px;z-index:9999}.success-content{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#10b981,#059669);border:1px solid #fff3;border-radius:12px;box-shadow:0 10px 25px -5px #10b9814d,0 10px 10px -5px #10b98133;color:#fff;gap:12px;min-width:300px;padding:16px 20px}.success-content,.success-icon{align-items:center;display:flex}.success-icon{animation:successPulse 2s ease-in-out infinite;background:#fff3;border-radius:50%;font-size:20px;font-weight:700;height:32px;justify-content:center;width:32px}.success-text{font-size:14px;font-weight:600;letter-spacing:.025em}@keyframes slideInRight{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@keyframes successPulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.table-container{border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 12px #00000014;margin-top:1rem;overflow-x:auto}.statements-table{background:#fff;border-collapse:collapse;font-size:14px;width:100%}.statements-table th{background:linear-gradient(135deg,#1e293b,#374151);border-bottom:2px solid #475569;color:#fff;font-size:13px;font-weight:600;letter-spacing:.5px;padding:18px 16px;text-align:left;text-transform:uppercase}.statements-table td{border-bottom:1px solid #f1f5f9;font-size:14px;padding:16px;vertical-align:middle}.statements-table tbody tr:hover{background-color:#f1f5f9}.statements-table tbody tr:nth-child(2n){background-color:#f9fafb}.statements-table tbody tr:nth-child(2n):hover{background-color:#f1f5f9}.statement-row{cursor:pointer;transition:background-color .2s ease}.statement-row:hover{background-color:#f1f5f9!important}.expand-cell{text-align:center;width:40px}.expand-btn{background:none;border:none;border-radius:4px;color:#64748b;cursor:pointer;font-size:16px;padding:4px 8px;transition:all .2s ease}.expand-btn:hover{background-color:#64748b;color:#fff}.details-row{background-color:#f8fafc}.statement-details{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin:10px;padding:20px}.transactions-section{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.credits-section,.debits-section{background:#f9fafb;border-radius:8px;padding:15px}.credits-section h4,.debits-section h4{color:#1e293b;font-size:16px;font-weight:600;margin:0 0 15px}.credits-section h4{color:#059669}.debits-section h4{color:#dc2626}.transactions-list{max-height:300px;overflow-y:auto}.transaction-item{grid-gap:10px;align-items:center;background:#fff;border-left:3px solid #e5e7eb;border-radius:6px;display:grid;font-size:13px;gap:10px;grid-template-columns:80px 1fr 100px;margin:4px 0;padding:8px 12px}.transaction-item.credit{border-left-color:#10b981}.transaction-item.debit{border-left-color:#ef4444}.transaction-date{color:#6b7280;font-weight:600}.transaction-description{color:#374151;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.transaction-amount{font-weight:600;text-align:right}.transaction-amount.credit{color:#059669}.transaction-amount.debit{color:#dc2626}@media (max-width:768px){.transactions-section{grid-template-columns:1fr}.transaction-item{font-size:12px;grid-template-columns:70px 1fr 80px}}.password-gate{align-items:center;background:linear-gradient(135deg,#000,#1a1a1a 50%,#262626);display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;justify-content:center;min-height:100vh;opacity:0;transform:translateY(20px);transition:all .6s cubic-bezier(.4,0,.2,1)}.password-gate.visible{opacity:1;transform:translateY(0)}.password-container{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff;border:1px solid #dbdbdb;border-radius:20px;box-shadow:0 20px 40px #00000026;max-width:400px;padding:40px;width:100%}.brand-section{margin-bottom:32px;text-align:center}.brand-section h1{color:#000;font-size:32px;font-weight:800;letter-spacing:-.5px;margin:0 0 12px}.animated-title{align-items:center;display:flex;justify-content:center}.title-text{animation:typewriter 2s ease-out .5s forwards;cursor:pointer;opacity:0;transition:all .3s ease}.animated-title:hover .title-text{color:#f97316;transform:scale(1.05)}@keyframes typewriter{0%{opacity:0;transform:translateY(20px)}50%{opacity:1;transform:translateY(0)}to{opacity:1;transform:translateY(0)}}.brand-section p{animation:fadeInUp 1s ease-out 2s forwards;color:#666;font-size:16px;font-weight:500;line-height:1.5;margin:0;opacity:0}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.password-form{display:flex;flex-direction:column;gap:20px}.input-wrapper{align-items:center;background:#f8f8f8;border:2px solid #dbdbdb;border-radius:12px;display:flex;overflow:hidden;transition:all .3s ease}.input-wrapper:focus-within{background:#fff;border-color:#f97316;box-shadow:0 0 0 3px #f973161a}.password-input{background:#0000;border:none;color:#000;flex:1 1;font-size:16px;font-weight:500;outline:none;padding:16px 20px}.password-input::placeholder{color:#999;font-weight:400}.password-input:disabled{cursor:not-allowed;opacity:.6}.submit-button{align-items:center;background:linear-gradient(135deg,#f97316,#ea580c);border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-weight:600;height:48px;justify-content:center;margin:4px;transition:all .3s ease;width:48px}.submit-button:hover:not(:disabled){background:linear-gradient(135deg,#ea580c,#dc2626);box-shadow:0 8px 20px #f973164d;transform:scale(1.05)}.submit-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.spinner{animation:spin 1s linear infinite;border:2px solid #0000;border-radius:50%;border-top-color:#fff;height:20px;width:20px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.error-message{animation:slideIn .3s ease;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;color:#dc2626;font-size:14px;font-weight:500;padding:12px 16px;text-align:center}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.password-input.shake{animation:shake .5s ease-in-out}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-8px)}75%{transform:translateX(8px)}}@media (max-width:480px){.password-container{margin:20px;max-width:320px;padding:32px 24px}.brand-section h1{font-size:28px}.password-input{font-size:16px}}.toast-container{flex-direction:column;position:fixed;right:20px;top:20px;z-index:10000}.toast,.toast-container{display:flex;gap:12px;max-width:400px}.toast{align-items:flex-start;background:#fff;border-left:4px solid;border-radius:12px;box-shadow:0 4px 20px #00000026;min-width:300px;opacity:0;padding:16px;transform:translateX(100%);transition:all .3s cubic-bezier(.4,0,.2,1)}.toast.visible{opacity:1;transform:translateX(0)}.toast-icon{align-items:center;border-radius:50%;display:flex;flex-shrink:0;font-size:12px;height:20px;justify-content:center;width:20px}.toast-content{flex:1 1;min-width:0}.toast-title{font-size:14px;font-weight:600;line-height:1.3;margin-bottom:4px}.toast-message{font-size:13px;line-height:1.4;opacity:.8}.toast-close{background:none;border:none;border-radius:4px;cursor:pointer;flex-shrink:0;font-size:12px;opacity:.6;padding:4px;transition:opacity .2s}.toast-close:hover{opacity:1}.toast-success{background:linear-gradient(135deg,#f0fdf4,#fff);border-left-color:#10b981}.toast-success .toast-icon{background:#10b981;color:#fff}.toast-success .toast-title{color:#065f46}.toast-error{background:linear-gradient(135deg,#fef2f2,#fff);border-left-color:#ef4444}.toast-error .toast-icon{background:#ef4444;color:#fff}.toast-error .toast-title{color:#991b1b}.toast-warning{background:linear-gradient(135deg,#fffbeb,#fff);border-left-color:#f59e0b}.toast-warning .toast-icon{background:#f59e0b;color:#fff}.toast-warning .toast-title{color:#92400e}.toast-info{background:linear-gradient(135deg,#eff6ff,#fff);border-left-color:#3b82f6}.toast-info .toast-icon{background:#3b82f6;color:#fff}.toast-info .toast-title{color:#1e40af}@media (max-width:480px){.toast-container{left:10px;max-width:none;right:10px}.toast{max-width:none;min-width:0}}.error-boundary{align-items:center;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);display:flex;justify-content:center;min-height:100vh;padding:20px}.error-boundary-content{background:#fff;border-radius:16px;box-shadow:0 8px 32px #0000001a;max-width:500px;padding:40px;text-align:center;width:100%}.error-icon{color:#ef4444;font-size:48px;margin-bottom:20px}.error-boundary h2{color:#1f2937;font-size:24px;font-weight:700;margin-bottom:16px}.error-boundary p{color:#6b7280;font-size:16px;line-height:1.6;margin-bottom:32px}.error-actions{display:flex;gap:12px;justify-content:center;margin-bottom:24px}.error-actions .action-btn{align-items:center;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 20px}.error-details{border:1px solid #e5e7eb;border-radius:8px;margin-top:24px;overflow:hidden;text-align:left}.error-details summary{background:#f9fafb;border-bottom:1px solid #e5e7eb;color:#374151;cursor:pointer;font-weight:600;padding:12px 16px}.error-details summary:hover{background:#f3f4f6}.error-details pre{background:#1f2937;color:#f9fafb;font-size:12px;line-height:1.4;margin:0;overflow-x:auto;padding:16px;white-space:pre-wrap;word-break:break-word}@media (max-width:480px){.error-boundary{padding:10px}.error-boundary-content{padding:24px}.error-actions{flex-direction:column}.error-actions .action-btn{justify-content:center;width:100%}}.App{display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;min-height:100vh}.admin-nav{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:linear-gradient(135deg,#1e293b,#334155);border-bottom:1px solid #ffffff1a;box-shadow:0 8px 32px #0000001f,0 4px 16px #00000014;justify-content:space-between;min-height:72px;padding:0 32px;position:sticky;top:0;z-index:1000}.admin-nav,.nav-brand h1{align-items:center;color:#fff;display:flex}.nav-brand h1{font-size:28px;font-weight:800;gap:12px;letter-spacing:-.025em;margin:0}.nav-brand h1:before{content:"🤖";font-size:24px;opacity:.9}.nav-links{gap:8px}.nav-link,.nav-links{align-items:center;display:flex}.nav-link{background:#0000;border:none;border-radius:12px;color:#cbd5e1;cursor:pointer;font-size:15px;font-weight:600;gap:10px;letter-spacing:.025em;overflow:hidden;padding:16px 24px;position:relative;text-decoration:none;transition:all .3s ease}.nav-link:before{background:linear-gradient(90deg,#0000,#ffffff1a,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.nav-link:hover:before{left:100%}.nav-link:hover{background:#ffffff14}.nav-link.active,.nav-link:hover{color:#fff;transform:translateY(-1px)}.nav-link.active{background:linear-gradient(135deg,#3b82f6,#1d4ed8);box-shadow:0 4px 12px #3b82f64d}.nav-link.active:before{display:none}.nav-link svg{font-size:18px;transition:transform .2s ease}.nav-link:hover svg{transform:scale(1.1)}.admin-main{background:#f8f9fa;flex:1 1;min-height:calc(100vh - 70px)}.view-header{background:#fff;border-bottom:1px solid #e9ecef;box-shadow:0 1px 3px #0000000d;padding:20px}.view-header h2{color:#2c3e50;font-size:24px;font-weight:600;margin:0}.coming-soon{align-items:center;background:#fff;border:2px dashed #dee2e6;border-radius:8px;color:#666;display:flex;font-size:18px;justify-content:center;margin:20px;min-height:400px}@media (max-width:768px){.admin-nav{flex-direction:column;gap:20px;min-height:auto;padding:20px}.nav-brand h1{font-size:24px}.nav-links{flex-wrap:wrap;gap:6px;justify-content:center;width:100%}.nav-link{border-radius:10px;font-size:14px;padding:14px 20px}.view-header{padding:20px}.view-header h2{font-size:22px}}@media (max-width:480px){.admin-nav{padding:16px}.nav-brand h1{font-size:20px}.nav-links{flex-direction:column;gap:8px;width:100%}.nav-link{font-size:13px;justify-content:center;padding:12px 16px}}
/*# sourceMappingURL=main.e19cf01c.css.map*/