*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{background:#fff;min-height:100vh}.App-header{background:#2d3748;box-shadow:0 1px 4px #00000026;padding:1.5rem 2rem}.App-header h1{color:#fff;font-size:1.6rem;font-weight:600;margin:0 0 .25rem}.App-header p{color:#9ca3af;font-size:.9rem;margin:0}.App-main{margin:1.5rem auto;max-width:1400px;padding:0 1rem}.card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:1.5rem;padding:1.5rem}.card h2{border-bottom:1px solid #e5e7eb;color:#2d3748;font-size:1.2rem;font-weight:600;margin-bottom:1rem;padding-bottom:.5rem}.btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:inline-flex;font-size:.85rem;font-weight:500;gap:.4rem;padding:.5rem 1rem;transition:all .2s ease}.btn-primary{background:#2d3748;color:#fff}.btn-primary:hover{background:#4a5568}.btn-success{background:#2d3748;color:#fff}.btn-success:hover{background:#4a5568}.btn-done{background:#d1d5db;color:#374151;cursor:default}.btn-danger{background:#6b7280;color:#fff}.btn-danger:hover{background:#4b5563}.btn:disabled{cursor:not-allowed;opacity:.5}.loading{color:#6b7280;padding:2rem;text-align:center}.error{background:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:#991b1b}.error,.success{font-size:.9rem;margin:.75rem 0;padding:.75rem 1rem}.success{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:6px;color:#166534}.upload-zone{background:#f9fafb;border:2px dashed #d1d5db;border-radius:8px;cursor:pointer;padding:2rem;text-align:center;transition:all .2s ease}.upload-zone:hover{background:#f3f4f6;border-color:#9ca3af}.upload-zone.active{background:#f3f4f6;border-color:#6b7280}.upload-zone.uploading{cursor:wait;opacity:.6}.upload-content{align-items:center;display:flex;flex-direction:column;gap:.5rem}.upload-icon{font-size:2.5rem;margin-bottom:.25rem}.upload-zone p{color:#4b5563;font-size:.95rem;margin:.25rem 0}.upload-hint{color:#9ca3af;font-size:.8rem}.spinner{animation:spin 1s linear infinite;border:3px solid #e5e7eb;border-radius:50%;border-top-color:#374151;height:36px;margin-bottom:.5rem;width:36px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.upload-info{border-top:1px solid #e5e7eb;margin-top:1.25rem;padding-top:1.25rem}.upload-info h3{color:#374151;font-size:.95rem;margin-bottom:.5rem}.upload-info ul{color:#6b7280;font-size:.85rem;list-style:none;padding:0}.upload-info li{border-bottom:1px solid #f3f4f6;padding:.35rem 0}.upload-info li:last-child{border-bottom:none}.customer-list-header{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between;margin-bottom:1rem}.search-box{flex:1 1;max-width:360px;position:relative}.search-input{background:#f9fafb;border:1px solid #d1d5db;border-radius:6px;font-size:.9rem;padding:.6rem 2.2rem .6rem .75rem;transition:border-color .2s ease;width:100%}.search-input:focus{background:#fff;border-color:#6b7280;outline:none}.search-icon{color:#9ca3af;font-size:.85rem;position:absolute;right:.75rem;top:50%;transform:translateY(-50%)}.customer-count{color:#6b7280;font-size:.8rem}.table-container{border:1px solid #e5e7eb;border-radius:6px;overflow-x:auto}.customer-table{background:#fff;border-collapse:collapse;width:100%}.customer-table thead{background:#2d3748;color:#fff}.customer-table th{font-size:.8rem;font-weight:500;letter-spacing:.3px;padding:.7rem .75rem;text-align:left;text-transform:uppercase}.customer-table tbody tr{border-bottom:1px solid #f3f4f6;transition:background-color .15s ease}.customer-table tbody tr:hover{background-color:#f9fafb}.customer-table td{color:#374151;font-size:.9rem;padding:.65rem .75rem}.customer-name{color:#111827;font-weight:600}.contact-number{color:#4b5563;font-family:Courier New,monospace}.empty-state{color:#6b7280;padding:3rem 2rem;text-align:center}.empty-state p{font-size:1rem}.spinner-small{animation:spin .8s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;display:inline-block;height:12px;width:12px}@media (max-width:768px){.customer-list-header{align-items:stretch;flex-direction:column}.search-box{max-width:100%}.table-container{font-size:.8rem}.customer-table td,.customer-table th{padding:.5rem .4rem}}
/*# sourceMappingURL=main.45f88ef6.css.map*/