#modal{position:fixed;top:0;right:0;left:0;bottom:0;display:flex;justify-content:center;align-items:center;z-index:10000;padding:20px}#modal-background{position:fixed;top:0;right:0;left:0;bottom:0;background:rgba(44,62,80,.8);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:fadeIn .3s ease-out}#modal-content{position:relative;background:transparent;border-radius:20px;max-height:90vh;overflow-y:auto;animation:slideIn .3s ease-out;box-shadow:0 20px 60px #0000004d;width:400px;max-width:90vw}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}#modal-content::-webkit-scrollbar{width:6px}#modal-content::-webkit-scrollbar-track{background:rgba(255,255,255,.1);border-radius:3px}#modal-content::-webkit-scrollbar-thumb{background:rgba(116,185,255,.5);border-radius:3px}#modal-content::-webkit-scrollbar-thumb:hover{background:rgba(116,185,255,.7)}@media (max-width: 768px){#modal{padding:10px}#modal-content{width:90vw;max-width:90vw;max-height:95vh}}@media (max-width: 480px){#modal{padding:5px}#modal-content{width:95vw;max-width:95vw;border-radius:16px}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1050;padding:20px;overflow-y:auto;min-height:100vh}.modal-content{background:white;border-radius:15px;box-shadow:0 10px 30px #0000004d;width:100%;max-height:90vh;overflow:hidden;margin:auto;position:relative;animation:modalSlideIn .3s ease-out;display:flex;flex-direction:column}.business-address-modal{max-width:700px;width:95%}.modal-header h3{margin:0;font-size:1.5rem;color:#2c3e50;font-weight:600}.close-button{background:none;border:none;font-size:1.5rem;color:#6c757d;cursor:pointer;border-radius:50%;width:35px;height:35px;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.modal-body{padding:25px;flex:1;overflow-y:auto;min-height:0}.address-info{margin-bottom:25px;padding:15px;background:rgba(116,185,255,.1);border:1px solid rgba(116,185,255,.3);border-radius:8px}.form-section{margin-bottom:30px;padding:20px;background:rgba(248,249,250,.8);border:1px solid #dee2e6;border-radius:8px}.form-section h4{margin:0 0 20px;color:#2c3e50;font-size:1.1rem;font-weight:600;border-bottom:2px solid rgba(116,185,255,.3);padding-bottom:8px}.form-group{margin-bottom:20px;display:flex;flex-direction:column;gap:6px}.form-row{display:grid;grid-template-columns:2fr 1fr 1fr;gap:15px;margin-bottom:20px}.form-row .form-group{margin-bottom:0}.form-group label{font-weight:600;color:#2c3e50;font-size:.9rem}.form-group input,.form-group select{padding:12px 15px;border:2px solid rgba(116,185,255,.3);border-radius:8px;font-size:1rem;background:rgba(255,255,255,.95);transition:all .3s ease;color:#2c3e50}.form-group input::-moz-placeholder{color:#6c757d}.form-group input::placeholder{color:#6c757d}.form-group input:focus,.form-group select:focus{outline:none;border-color:#74b9ff;box-shadow:0 0 0 3px #74b9ff33;background:white}.form-group input.error,.form-group select.error{border-color:#dc3545;background:rgba(220,53,69,.05)}.form-group select{cursor:pointer;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");background-position:right 12px center;background-repeat:no-repeat;background-size:16px;padding-right:40px}.error-message{color:#dc3545;font-size:.85rem;font-weight:500;margin-top:4px;animation:slideInError .3s ease-out}.general-error{background:rgba(220,53,69,.1);border:1px solid rgba(220,53,69,.3);border-radius:6px;padding:12px 15px;margin-bottom:20px;font-size:.9rem}.modal-actions{display:flex;justify-content:flex-end;gap:12px;padding:20px 25px;border-top:1px solid #dee2e6;background:#f8f9fa;flex-shrink:0}@media (max-width: 768px){.modal-overlay{padding:10px}.business-address-modal{width:98%;max-height:95vh}.modal-body{padding:20px}.form-row{grid-template-columns:1fr;gap:10px}.modal-actions{flex-direction:column;gap:10px}.btn{width:100%}}@media (max-width: 480px){.modal-overlay{padding:5px}.modal-header{padding:20px 20px 15px}.modal-header h3{font-size:1.3rem}.modal-body{padding:15px}.form-section{padding:15px;margin-bottom:20px}.form-group input,.form-group select{padding:10px 12px;font-size:.9rem}.modal-actions{padding:15px 20px}}.address-preview{margin-top:20px;padding:15px;background:rgba(40,167,69,.05);border:1px solid rgba(40,167,69,.2);border-radius:6px}.address-preview h5{margin:0 0 10px;color:#28a745;font-size:.9rem;font-weight:600}.address-preview-content{font-family:Courier New,monospace;font-size:.85rem;line-height:1.4;color:#2c3e50;white-space:pre-line}.form-group input:focus-visible,.form-group select:focus-visible{outline:2px solid #74b9ff;outline-offset:2px}.form-group label:after{content:""}.form-group label[for=businessName]:after,.form-group label[for=businessAddress1]:after,.form-group label[for=businessCity]:after,.form-group label[for=businessState]:after,.form-group label[for=businessZipCode]:after{content:" *";color:#dc3545;font-weight:700}.invoicing-landing-page{margin:0;padding:0;overflow-x:hidden}.hero{background:linear-gradient(135deg,#2c3e50 0%,#34495e 50%,#3d566e 100%);color:#fff;padding:100px 0;min-height:90vh;display:flex;align-items:center;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 80%,rgba(52,152,219,.2) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(155,207,255,.2) 0%,transparent 50%),radial-gradient(circle at 40% 40%,rgba(116,185,255,.15) 0%,transparent 50%)}.hero-content{max-width:1200px;margin:0 auto;padding:0 20px;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;position:relative;z-index:1}.hero-title{font-size:3.5rem;font-weight:800;line-height:1.1;margin:0 0 20px;text-shadow:2px 2px 4px rgba(0,0,0,.3)}.highlight{background:linear-gradient(45deg,#74b9ff,#0984e3);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;display:block;font-size:2.5rem;margin-top:10px}.hero-subtitle{font-size:1.3rem;line-height:1.6;margin:0 0 40px;opacity:.95;font-weight:300}.hero-actions.logged-in{margin-top:20px}.action-buttons{display:flex;gap:20px;flex-wrap:wrap}.btn{padding:15px 30px;border:none;border-radius:8px;font-weight:600;font-size:1.1rem;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-block;text-align:center}.btn-primary{background:linear-gradient(45deg,#74b9ff,#0984e3);color:#fff;box-shadow:0 4px 15px #74b9ff66}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #74b9ff99}.btn-secondary{background:linear-gradient(45deg,#6c757d,#495057);color:#fff;box-shadow:0 4px 15px #6c757d66}.btn-secondary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #6c757d99}.btn-large{padding:18px 40px;font-size:1.2rem}.invoice-preview{background:white;border-radius:15px;padding:30px;box-shadow:0 10px 40px #0003;color:#2c3e50;transform:perspective(1000px) rotateY(-5deg);transition:transform .3s ease}.invoice-preview:hover{transform:perspective(1000px) rotateY(0)}.invoice-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;padding-bottom:15px;border-bottom:2px solid #74b9ff}.invoice-title{font-size:1.5rem;font-weight:700;color:#2c3e50}.invoice-status{background:linear-gradient(45deg,#74b9ff,#0984e3);color:#fff;padding:5px 15px;border-radius:20px;font-size:.9rem;font-weight:600}.invoice-content{display:flex;flex-direction:column;gap:15px}.invoice-line{display:flex;justify-content:space-between;align-items:center;padding:10px 0;font-size:1.1rem}.invoice-line.total{border-top:2px solid #e9ecef;margin-top:10px;padding-top:15px;font-weight:700;font-size:1.3rem;color:#74b9ff}.container{max-width:1200px;margin:0 auto;padding:0 20px}.section-title{font-size:2.5rem;font-weight:700;text-align:center;margin-bottom:60px;color:#2c3e50}.quick-actions{padding:100px 0;background:#f8f9fa}.actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:30px}.action-card{background:white;padding:40px 30px;border-radius:15px;text-align:center;box-shadow:0 5px 20px #0000001a;transition:transform .3s ease,box-shadow .3s ease;text-decoration:none;color:inherit;display:block}.action-card:hover{transform:translateY(-5px);box-shadow:0 10px 30px #00000026;text-decoration:none;color:inherit}.action-icon{font-size:3rem;margin-bottom:20px}.action-card h3{font-size:1.5rem;font-weight:600;margin-bottom:15px;color:#2c3e50}.action-card p{color:#6c757d;line-height:1.6}.features{padding:100px 0;background:white}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:40px}.feature-card{text-align:center;padding:30px 20px}.feature-icon{font-size:3.5rem;margin-bottom:25px;display:block}.feature-card h3{font-size:1.5rem;font-weight:600;margin-bottom:15px;color:#2c3e50}.feature-card p{color:#6c757d;line-height:1.6;font-size:1rem}.how-it-works{padding:100px 0;background:#f8f9fa}.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:50px;margin-top:60px}.step{text-align:center;position:relative}.step-number{width:80px;height:80px;border-radius:50%;background:linear-gradient(45deg,#74b9ff,#0984e3);color:#fff;font-size:2rem;font-weight:700;display:flex;align-items:center;justify-content:center;margin:0 auto 30px;box-shadow:0 5px 20px #74b9ff66}.step-content h3{font-size:1.5rem;font-weight:600;margin-bottom:15px;color:#2c3e50}.step-content p{color:#6c757d;line-height:1.6}@media (max-width: 768px){.hero-content{grid-template-columns:1fr;gap:40px;text-align:center}.hero-title{font-size:2.5rem}.highlight{font-size:1.8rem}.action-buttons{justify-content:center}.actions-grid,.features-grid,.steps{grid-template-columns:1fr}.invoice-preview{transform:none}}.email-settings{max-width:800px;margin:0 auto;padding:40px 20px}.settings-header{text-align:center;margin-bottom:40px}.settings-header h2{color:#2c3e50;font-size:2.5rem;margin:0 0 10px;font-weight:700}.settings-header p{color:#636e72;font-size:1.2rem;margin:0}.settings-content{background:rgba(255,255,255,.8);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;padding:40px;border:1px solid rgba(116,185,255,.2);box-shadow:0 10px 30px #0000001a}.integration-status{margin-bottom:30px;padding:20px;background:rgba(116,185,255,.05);border-radius:15px;border:1px solid rgba(116,185,255,.1)}.status-indicator{display:flex;align-items:center;gap:12px;margin-bottom:15px}.status-dot{width:12px;height:12px;border-radius:50%;transition:all .3s ease}.status-dot.active{background:#00b894;box-shadow:0 0 10px #00b8944d}.status-dot.inactive{background:#636e72}.status-text{font-weight:600;font-size:1.1rem;color:#2c3e50}.status-details{margin-left:24px}.status-details p{margin:5px 0;color:#636e72;font-size:.95rem}.settings-actions{margin:30px 0;text-align:center}.enabled-actions{display:flex;gap:15px;justify-content:center;flex-wrap:wrap}.btn{padding:12px 24px;border:none;border-radius:10px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:140px}.btn-primary{background:linear-gradient(45deg,#74b9ff,#0984e3);color:#fff;box-shadow:0 4px 15px #74b9ff4d}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #74b9ff66}.btn-secondary{background:linear-gradient(45deg,#636e72,#2d3436);color:#fff;box-shadow:0 4px 15px #636e724d}.btn-secondary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #636e7266}.btn-outline{background:transparent;color:#636e72;border:2px solid #636e72}.btn-outline:hover:not(:disabled){background:#636e72;color:#fff;transform:translateY(-2px)}.last-check{text-align:center;margin:20px 0;padding:10px;background:rgba(116,185,255,.05);border-radius:8px}.last-check p{margin:0;color:#636e72;font-size:.9rem}.settings-info{margin-top:40px;padding:20px;background:rgba(44,62,80,.05);border-radius:15px}.settings-info h3{color:#2c3e50;margin:0 0 15px;font-size:1.3rem}.settings-info ul{list-style:none;padding:0;margin:0}.settings-info li{padding:8px 0;color:#636e72;font-size:.95rem;line-height:1.5}@media (max-width: 768px){.email-settings{padding:20px 10px}.settings-content{padding:20px}.settings-header h2{font-size:2rem}.enabled-actions{flex-direction:column;align-items:center}.btn{width:100%;max-width:250px}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.7);display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.invoice-modal{background:linear-gradient(135deg,rgba(255,255,255,.95) 0%,rgba(248,250,252,.95) 100%);border-radius:20px;max-width:800px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 25px 50px #0000004d;border:1px solid rgba(116,185,255,.2)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:30px 30px 20px;border-bottom:1px solid rgba(116,185,255,.2)}.modal-header h2{color:#2c3e50;margin:0;font-size:1.8rem;font-weight:600}.close-button{background:none;border:none;font-size:2rem;color:#6c757d;cursor:pointer;padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.close-button:hover{background:rgba(108,117,125,.1);color:#495057}.modal-body{padding:30px}.extraction-info{background:linear-gradient(135deg,rgba(116,185,255,.1) 0%,rgba(159,122,234,.1) 100%);padding:25px;border-radius:15px;margin-bottom:35px;border:1px solid rgba(116,185,255,.2);text-align:center}.extraction-info p{margin:12px 0;color:#2c3e50;font-weight:500;font-size:1rem;line-height:1.5}.form-section{margin-bottom:35px;padding:25px;background:rgba(255,255,255,.5);border-radius:15px;border:1px solid rgba(116,185,255,.1);text-align:center}.form-section h3{color:#2c3e50;font-size:1.3rem;font-weight:600;margin-bottom:25px;padding-bottom:12px;border-bottom:2px solid rgba(116,185,255,.2);margin-top:0;text-align:center}.form-group{margin-bottom:25px;display:flex;flex-direction:column;align-items:center;text-align:center}.form-group label{display:block;margin-bottom:10px;color:#2c3e50;font-weight:600;font-size:1rem}.form-group input,.form-group select{width:50%;padding:12px 15px;border:2px solid rgba(116,185,255,.2);border-radius:10px;font-size:1rem;background:rgba(255,255,255,.95);color:#2c3e50;transition:all .3s ease}.form-group input::-moz-placeholder{color:#000}.form-group input::placeholder{color:#000}.form-group input:focus,.form-group select:focus{outline:none;border-color:#74b9ff;box-shadow:0 0 0 3px #74b9ff1a;background:rgba(255,255,255,1);color:#2c3e50}.form-group input.readonly{background:rgba(116,185,255,.1);color:#2c3e50;font-weight:600}.cost-grid{display:flex;flex-wrap:wrap;justify-content:space-around;align-items:flex-start;gap:25px}.cost-grid .form-group{flex:0 1 220px;min-width:200px}.labor-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:25px;max-width:600px;margin:0 auto}.labor-grid .form-group{min-width:200px}.labor-grid .form-group input{width:100%!important;max-width:200px}.labor-grid .form-group:nth-child(1){grid-column:1;grid-row:1}.labor-grid .form-group:nth-child(2){grid-column:2;grid-row:1}.labor-grid .form-group:nth-child(3){grid-column:1;grid-row:2}.labor-grid .form-group:nth-child(4){grid-column:2;grid-row:2}.final-total{grid-column:1 / -1}.final-total input{font-size:1.2rem;font-weight:700;color:#27ae60;background:linear-gradient(135deg,rgba(39,174,96,.1) 0%,rgba(46,204,113,.1) 100%);border-color:#27ae604d}.modal-actions{display:flex;gap:20px;justify-content:space-around;align-items:center;padding-top:35px;margin-top:35px;border-top:2px solid rgba(116,185,255,.2)}.btn{padding:12px 30px;border:none;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn-primary{background:linear-gradient(135deg,#74b9ff 0%,#0984e3 100%);color:#fff;box-shadow:0 4px 15px #74b9ff66}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #74b9ff99}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}@media (max-width: 768px){.invoice-modal{width:95%;margin:20px}.modal-header,.modal-body{padding:20px}.cost-grid,.labor-grid{grid-template-columns:1fr}.modal-actions{flex-direction:column}.btn{width:100%}}.items-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.items-header h3{margin:0;border-bottom:none;padding-bottom:0}.items-table{overflow-x:auto;margin-top:15px}.items-table table{width:100%;border-collapse:collapse;background:rgba(255,255,255,.8);border-radius:10px;overflow:hidden;box-shadow:0 2px 10px #0000001a}.items-table th,.items-table td{padding:12px 8px;text-align:left;border-bottom:1px solid rgba(116,185,255,.2)}.items-table th{color:#fff;font-weight:600;font-size:.9rem}.items-table td input,.items-table td select{width:100%;padding:6px 8px;border:1px solid rgba(116,185,255,.3);border-radius:5px;font-size:.9rem;background:rgba(255,255,255,.95)}.items-table td input:focus,.items-table td select:focus{outline:none;border-color:#74b9ff;box-shadow:0 0 0 2px #74b9ff33}.items-table .btn-sm{padding:4px 8px;font-size:.8rem;border-radius:5px}.no-items{text-align:center;color:#6c757d;font-style:italic;padding:20px;background:rgba(108,117,125,.1);border-radius:10px;margin-top:15px}.btn-sm{padding:6px 12px;font-size:.85rem;border-radius:6px}.btn-danger{background:linear-gradient(135deg,#e74c3c 0%,#c0392b 100%);color:#fff;box-shadow:0 2px 8px #e74c3c4d}.btn-danger:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #e74c3c80}.btn-secondary{background:linear-gradient(135deg,#95a5a6 0%,#7f8c8d 100%);color:#fff;box-shadow:0 2px 8px #95a5a64d}.btn-secondary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #95a5a680}@media (max-width: 768px){.items-header{flex-direction:column;gap:10px;align-items:stretch}.items-table{font-size:.8rem}.items-table th,.items-table td{padding:8px 4px}}.notes-textarea{width:100%;padding:12px;border:2px solid rgba(116,185,255,.3);border-radius:8px;font-size:.9rem;font-family:inherit;resize:vertical;min-height:80px;background:rgba(255,255,255,.8);color:#2c3e50;transition:all .3s ease}.notes-textarea:focus{outline:none;border-color:#74b9ff;box-shadow:0 0 0 3px #74b9ff33;background:rgba(255,255,255,.95)}.notes-textarea::-moz-placeholder{color:#2c3e50;opacity:.7}.notes-textarea::placeholder{color:#2c3e50;opacity:.7}.field-description{font-size:.85rem;color:#6c757d;margin:5px 0 0;line-height:1.4;font-style:italic}.manual-invoice-modal{max-width:900px;width:95%;max-height:90vh;overflow:hidden}.modal-body{padding:0;display:flex;flex-direction:column;height:calc(90vh - 120px)}.step-indicator{display:flex;justify-content:space-between;padding:20px 25px;background:linear-gradient(135deg,#f8f9fa 0%,#e9ecef 100%);border-bottom:1px solid #dee2e6}.step{display:flex;flex-direction:column;align-items:center;gap:8px;flex:1;position:relative}.step:not(:last-child):after{content:"";position:absolute;top:15px;right:-50%;width:100%;height:2px;background:#dee2e6;z-index:1}.step.active:not(:last-child):after{background:linear-gradient(135deg,#74b9ff 0%,#0984e3 100%)}.step-number{width:30px;height:30px;border-radius:50%;background:#dee2e6;color:#6c757d;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.9rem;position:relative;z-index:2;transition:all .3s ease}.step.active .step-number{background:linear-gradient(135deg,#74b9ff 0%,#0984e3 100%);color:#fff}.step.current .step-number{transform:scale(1.1);box-shadow:0 0 0 3px #74b9ff4d}.step-label{font-size:.8rem;color:#6c757d;font-weight:500;text-align:center}.step.active .step-label{color:#0984e3;font-weight:600}.step-content{flex:1;padding:25px;overflow-y:auto}.labor-tax-section{display:flex;flex-direction:column;gap:30px}.labor-section h4,.tax-section h4{margin:0 0 15px;color:#2c3e50;font-size:1.2rem;font-weight:600}.labor-inputs{display:grid;grid-template-columns:1fr 1fr;gap:20px}.labor-input-group{display:flex;flex-direction:column;gap:8px}.labor-input-group label{font-weight:600;color:#2c3e50;font-size:.9rem}.labor-input{padding:12px 15px;border:2px solid rgba(116,185,255,.3);border-radius:8px;font-size:1rem;background:rgba(255,255,255,.95);transition:all .3s ease;text-align:right;font-family:Courier New,monospace}.labor-input:focus{outline:none;border-color:#74b9ff;box-shadow:0 0 0 3px #74b9ff33}.tax-options{display:flex;flex-direction:column;gap:15px}.checkbox-label{display:flex;align-items:center;gap:10px;font-weight:500;color:#2c3e50;cursor:pointer}.checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:#74b9ff}.exemption-reason{margin-left:28px;display:flex;flex-direction:column;gap:8px}.exemption-reason label{font-weight:600;color:#2c3e50;font-size:.9rem}.exemption-reason input{padding:10px 12px;border:2px solid rgba(116,185,255,.3);border-radius:6px;font-size:.9rem;transition:all .3s ease}.exemption-reason input:focus{outline:none;border-color:#74b9ff;box-shadow:0 0 0 2px #74b9ff33}.exemption-reason input.error{border-color:#dc3545;background:rgba(220,53,69,.05)}.modal-actions{display:flex;justify-content:space-between;align-items:center;padding:20px 25px;border-top:1px solid #dee2e6;background:#f8f9fa}.nav-buttons{display:flex;gap:12px}.general-error{background:rgba(220,53,69,.1);border:1px solid rgba(220,53,69,.3);border-radius:6px;padding:12px 15px;margin:0 25px 20px;font-size:.9rem}@media (max-width: 768px){.manual-invoice-modal{width:98%;margin:10px;max-height:95vh}.step-indicator{padding:15px 20px}.step-label{font-size:.7rem}.step-number{width:25px;height:25px;font-size:.8rem}.labor-inputs{grid-template-columns:1fr;gap:15px}.modal-actions{flex-direction:column;gap:15px}.nav-buttons{width:100%;justify-content:space-between}.btn{flex:1;min-width:auto}}@media (max-width: 480px){.step-indicator{padding:10px 15px}.step{gap:4px}.step-label{font-size:.65rem}.step-number{width:22px;height:22px;font-size:.75rem}.step-content{padding:20px}.labor-tax-section{gap:20px}}.step-content{animation:fadeInSlide .3s ease-out}@keyframes fadeInSlide{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.btn:disabled{position:relative}.btn:disabled:after{content:"";position:absolute;width:16px;height:16px;margin:auto;border:2px solid transparent;border-top-color:currentColor;border-radius:50%;animation:spin 1s linear infinite}.material-selector h4,.customer-selector h4,.invoice-calculator h4{margin:0 0 20px;color:#2c3e50;font-size:1.3rem;font-weight:600}.material-selector h5,.customer-selector h5,.invoice-calculator h5{margin:0 0 15px;color:#2c3e50;font-size:1.1rem;font-weight:600}.selected-materials{margin-bottom:25px;padding:15px;background:rgba(40,167,69,.05);border:1px solid rgba(40,167,69,.2);border-radius:8px}.selected-materials-list{display:flex;flex-direction:column;gap:10px}.selected-material-item{display:flex;justify-content:space-between;align-items:center;padding:12px;background:white;border:1px solid rgba(40,167,69,.3);border-radius:6px}.material-info{flex:1}.material-header{display:flex;align-items:center;gap:10px;margin-bottom:5px}.material-description{font-weight:600;color:#2c3e50}.material-code{font-family:Courier New,monospace;background:rgba(116,185,255,.2);color:#0984e3;padding:2px 6px;border-radius:4px;font-size:.8rem}.new-badge,.override-badge{background:rgba(255,193,7,.2);color:#ffc107;padding:2px 6px;border-radius:4px;font-size:.7rem;font-weight:600}.material-details{display:flex;gap:15px;font-size:.9rem;color:#6c757d}.line-total{font-weight:600;color:#0984e3}.frequency{color:#6c757d}.quantity-controls{display:flex;align-items:center;gap:8px}.quantity-input{width:80px;padding:6px 8px;border:2px solid rgba(116,185,255,.3);border-radius:4px;text-align:center;font-family:Courier New,monospace}.quantity-input:focus{outline:none;border-color:#74b9ff}.remove-btn{background:none;border:none;font-size:1rem;cursor:pointer;padding:4px;border-radius:4px;transition:background-color .3s ease}.remove-btn:hover{background:rgba(220,53,69,.1)}.material-search{display:flex;gap:15px;margin-bottom:20px;align-items:flex-start}.search-controls{flex:1;display:flex;gap:10px}.search-input{flex:1;padding:10px 12px;border:2px solid rgba(116,185,255,.3);border-radius:6px;font-size:.9rem}.search-input:focus{outline:none;border-color:#74b9ff;box-shadow:0 0 0 2px #74b9ff33}.filter-select{padding:10px 12px;border:2px solid rgba(116,185,255,.3);border-radius:6px;background:white;font-size:.9rem;cursor:pointer}.filter-select:focus{outline:none;border-color:#74b9ff}.add-new-btn{white-space:nowrap}.add-new-material{margin-bottom:20px;padding:15px;background:rgba(116,185,255,.05);border:1px solid rgba(116,185,255,.2);border-radius:8px}.new-material-form{display:flex;flex-direction:column;gap:10px}.form-row{display:flex;gap:10px;align-items:center}.form-input,.form-select,.form-textarea{padding:8px 10px;border:2px solid rgba(116,185,255,.3);border-radius:4px;font-size:.9rem;flex:1}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:#74b9ff;box-shadow:0 0 0 2px #74b9ff33}.price-input{text-align:right;font-family:Courier New,monospace}.new-material-actions{display:flex;gap:8px}.available-materials{margin-top:20px}.materials-list{display:flex;flex-direction:column;gap:8px;max-height:300px;overflow-y:auto;border:1px solid #dee2e6;border-radius:6px;padding:10px}.material-item{display:flex;justify-content:space-between;align-items:center;padding:10px;border:1px solid #dee2e6;border-radius:4px;transition:all .3s ease;cursor:pointer}.material-item:hover{background:rgba(116,185,255,.05);border-color:#74b9ff4d}.material-item.selected{background:rgba(40,167,69,.1);border-color:#28a7454d}.add-controls{display:flex;align-items:center;gap:8px}.loading-state,.empty-state{text-align:center;padding:40px 20px;color:#6c757d}.loading-spinner{width:30px;height:30px;border:3px solid rgba(116,185,255,.3);border-top:3px solid #74b9ff;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 15px}.selected-customer{margin-bottom:25px;padding:15px;background:rgba(40,167,69,.05);border:1px solid rgba(40,167,69,.2);border-radius:8px}.customer-card{display:flex;justify-content:space-between;align-items:center;padding:12px;border:1px solid #dee2e6;border-radius:6px;transition:all .3s ease;cursor:pointer;background:white}.customer-card:hover{background:rgba(116,185,255,.05);border-color:#74b9ff4d}.customer-card.selected{background:rgba(40,167,69,.1);border-color:#28a7454d;cursor:default}.customer-info h6{margin:0 0 5px;color:#2c3e50;font-weight:600}.customer-info p{margin:2px 0;font-size:.85rem;color:#6c757d}.customer-stats{display:flex;gap:10px;margin-top:5px;font-size:.8rem}.invoice-count{background:rgba(116,185,255,.2);color:#0984e3;padding:2px 6px;border-radius:4px}.total-revenue{background:rgba(40,167,69,.2);color:#28a745;padding:2px 6px;border-radius:4px}.select-indicator{color:#74b9ff;font-size:.9rem;font-weight:600}.customer-search{display:flex;gap:15px;margin-bottom:20px;align-items:flex-start}.customer-grid{display:flex;flex-direction:column;gap:8px;max-height:300px;overflow-y:auto;border:1px solid #dee2e6;border-radius:6px;padding:10px}.add-new-customer{margin-bottom:20px;padding:15px;background:rgba(116,185,255,.05);border:1px solid rgba(116,185,255,.2);border-radius:8px}.new-customer-form{display:flex;flex-direction:column;gap:10px}.new-customer-actions{display:flex;gap:10px;margin-top:10px}.invoice-calculator{display:flex;flex-direction:column;gap:20px}.review-section{padding:15px;background:rgba(248,249,250,.8);border:1px solid #dee2e6;border-radius:8px}.customer-summary .customer-info h6{margin:0 0 8px;color:#2c3e50;font-size:1.1rem}.customer-summary .customer-info p{margin:3px 0;color:#6c757d;font-size:.9rem}.materials-summary{display:flex;flex-direction:column;gap:8px}.material-line{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #e9ecef}.material-line:last-child{border-bottom:none}.material-calculation{display:flex;align-items:center;gap:8px;font-family:Courier New,monospace;font-size:.9rem}.labor-summary{display:flex;flex-direction:column;gap:8px}.labor-line{display:flex;justify-content:space-between;align-items:center;padding:6px 0;font-family:Courier New,monospace}.tax-summary{display:flex;flex-direction:column;gap:8px}.tax-line{display:flex;justify-content:space-between;align-items:center;padding:6px 0}.tax-line .local{color:#28a745;font-weight:600}.tax-line .imported{color:#6c757d;font-weight:600}.tax-line .exempt{color:#ffc107;font-weight:600}.tax-line .taxable{color:#0984e3;font-weight:600}.calculation-breakdown{display:flex;flex-direction:column;gap:8px}.calc-line{display:flex;justify-content:space-between;align-items:center;padding:6px 0;font-family:Courier New,monospace}.calc-line.subtotal{border-top:1px solid #dee2e6;border-bottom:1px solid #dee2e6;font-weight:600;margin:5px 0}.calc-line.total{font-weight:700;font-size:1.1rem;color:#0984e3;border-top:2px solid #0984e3;margin-top:10px;padding-top:10px}.invoice-settings{display:flex;flex-direction:column;gap:15px}.setting-group{display:flex;flex-direction:column;gap:6px}.setting-group label{font-weight:600;color:#2c3e50;font-size:.9rem}.status-select{padding:8px 10px;border:2px solid rgba(116,185,255,.3);border-radius:4px;background:white;font-size:.9rem}.status-select:focus{outline:none;border-color:#74b9ff}.notes-textarea{padding:10px;border:2px solid rgba(116,185,255,.3);border-radius:4px;font-size:.9rem;font-family:inherit;resize:vertical}.notes-textarea:focus{outline:none;border-color:#74b9ff;box-shadow:0 0 0 2px #74b9ff33}.invoice-summary-card{background:linear-gradient(135deg,#74b9ff 0%,#0984e3 100%);color:#fff;padding:20px;border-radius:10px;margin-top:20px}.summary-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.summary-header h5{margin:0;color:#fff}.invoice-type-badge{background:rgba(255,255,255,.2);padding:4px 8px;border-radius:6px;font-size:.8rem;font-weight:600}.summary-details{display:flex;flex-direction:column;gap:8px}.summary-line{display:flex;justify-content:space-between;align-items:center}.summary-line.total-line{border-top:1px solid rgba(255,255,255,.3);margin-top:10px;padding-top:10px;font-weight:700;font-size:1.1rem}.status-badge{padding:3px 8px;border-radius:4px;font-size:.8rem;font-weight:600;text-transform:uppercase}.status-badge.draft{background:rgba(255,193,7,.3);color:#ffc107}.status-badge.sent{background:rgba(0,123,255,.3);color:#007bff}.status-badge.paid{background:rgba(40,167,69,.3);color:#28a745}.total-amount{font-size:1.2rem;font-weight:700}.materials-info,.labor-info{margin-bottom:20px;padding:12px 15px;background:rgba(116,185,255,.1);border:1px solid rgba(116,185,255,.3);border-radius:6px}.info-text{margin:0;color:#2c3e50;font-size:.9rem;line-height:1.4}.no-materials-message{text-align:center;padding:30px 20px;background:rgba(116,185,255,.05);border:2px dashed rgba(116,185,255,.3);border-radius:8px}.empty-state-text{margin:0 0 8px;color:#2c3e50;font-size:1rem;font-weight:600}.empty-state-subtext{margin:0;color:#6c757d;font-size:.9rem}.zero-amount{color:#6c757d;font-style:italic}.zero-note{font-size:.8rem;color:#6c757d;font-weight:400}.no-materials{color:#6c757d;font-style:italic}.invoice-type-badge{background:rgba(255,255,255,.2);padding:4px 8px;border-radius:6px;font-size:.8rem;font-weight:600;white-space:nowrap}.cash-advance-section{margin-top:30px;padding:20px;background:linear-gradient(135deg,#f8f9fa 0%,#e9ecef 100%);border-radius:10px;border:1px solid rgba(116,185,255,.2)}.cash-advance-section h4{margin-top:0;margin-bottom:15px;color:#2c3e50;font-size:1.1rem}.checkbox-label{display:flex;align-items:center;cursor:pointer;font-weight:500;color:#2c3e50;margin-bottom:8px}.checkbox-label input[type=checkbox]{margin-right:10px;transform:scale(1.2);cursor:pointer}.field-description{font-size:.85rem;color:#6c757d;margin:5px 0 15px;line-height:1.4;font-style:italic}.cash-advance-input{width:100%;padding:10px;border:2px solid rgba(116,185,255,.3);border-radius:6px;font-size:1rem;background:white;color:#2c3e50;transition:all .3s ease}.cash-advance-input:focus{outline:none;border-color:#74b9ff;box-shadow:0 0 0 3px #74b9ff33}.step-1-content{display:flex;flex-direction:column;gap:20px}.admin-panel{max-width:1200px;margin:0 auto;padding:20px;background:#2c3e50;min-height:100vh;color:#fff}.admin-header{text-align:center;margin-bottom:30px}.admin-header h1{font-size:2.5rem;margin-bottom:10px;text-shadow:0 2px 4px rgba(0,0,0,.3)}.admin-header p{font-size:1.1rem;opacity:.9}.access-denied{text-align:center;padding:60px 20px;background:rgba(255,255,255,.1);border-radius:15px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);margin-top:100px}.access-denied h2{font-size:2rem;margin-bottom:15px;color:#ff6b6b}.admin-status{margin-bottom:30px}.status-card{background:rgba(255,255,255,.1);border-radius:15px;padding:20px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.status-card h3{margin-bottom:15px;font-size:1.3rem}.status-card p{margin:8px 0;font-size:1rem}.super-admin-note{color:gold;font-weight:500;margin-top:10px!important}.users-section{background:rgba(255,255,255,.1);border-radius:15px;padding:25px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);margin-bottom:30px}.users-section h2{margin-bottom:15px;font-size:1.5rem}.users-table-container{overflow-x:auto;margin-top:20px}.users-table{width:100%;border-collapse:collapse;background:rgba(255,255,255,.05);border-radius:10px;overflow:hidden}.users-table th,.users-table td{padding:12px 15px;text-align:left;border-bottom:1px solid rgba(255,255,255,.1)}.users-table th{background:rgba(255,255,255,.1);font-weight:600;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}.users-table tr:hover{background:rgba(255,255,255,.05)}.role-badge{padding:4px 12px;border-radius:20px;font-size:.85rem;font-weight:500;display:inline-block}.role-badge.admin{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.role-badge.user{background:rgba(255,255,255,.2);color:#fff}.status-badge{padding:4px 10px;border-radius:15px;font-size:.8rem;font-weight:500;display:inline-block}.status-badge.enabled{background:rgba(76,175,80,.3);color:#4caf50;border:1px solid rgba(76,175,80,.5)}.status-badge.disabled{background:rgba(244,67,54,.3);color:#f44336;border:1px solid rgba(244,67,54,.5)}.role-select{padding:6px 10px;border-radius:6px;border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.1);color:#fff;font-size:.9rem;cursor:pointer;transition:all .3s ease}.role-select:hover{background:rgba(255,255,255,.2)}.role-select option{background:#2c3e50;color:#fff}.self-indicator{color:gold;font-weight:500;font-style:italic}.admin-info{background:rgba(255,255,255,.1);border-radius:15px;padding:25px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.admin-info h3{margin-bottom:15px;font-size:1.3rem}.admin-info ul{list-style:none;padding:0}.admin-info li{margin:10px 0;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.1)}.admin-info li:last-child{border-bottom:none}.admin-info strong{color:gold}.loading,.error{text-align:center;padding:40px;font-size:1.2rem}.error{color:#ff6b6b}@media (max-width: 768px){.admin-panel{padding:15px}.admin-header h1{font-size:2rem}.users-table{font-size:.9rem}.users-table th,.users-table td{padding:8px 10px}.status-card,.users-section,.admin-info{padding:20px}}.edit-customer-modal{background:white;border-radius:15px;box-shadow:0 10px 30px #0000004d;width:100%;max-width:500px;max-height:90vh;overflow:hidden;animation:modalSlideIn .3s ease-out}.close-button:hover:not(:disabled){background:#f8f9fa;color:#495057}.close-button:disabled{opacity:.5;cursor:not-allowed}.modal-body{padding:30px;overflow-y:auto;max-height:calc(90vh - 140px)}.required{color:#dc3545}.form-group input,.form-group textarea{width:100%;padding:12px 16px;border:2px solid #e9ecef;border-radius:8px;font-size:1rem;transition:all .3s ease;background:white;color:#2c3e50}.form-group input:disabled,.form-group textarea:disabled{background:#f8f9fa;color:#6c757d;cursor:not-allowed}.form-group input::-moz-placeholder,.form-group textarea::-moz-placeholder{color:#2c3e50;opacity:.7}.form-group input::placeholder,.form-group textarea::placeholder{color:#2c3e50;opacity:.7}.modal-actions{display:flex;gap:15px;justify-content:flex-end;margin-top:30px;padding-top:20px;border-top:1px solid #e9ecef}@media (max-width: 768px){.modal-overlay{padding:10px}.edit-customer-modal{max-width:100%;margin:0}.modal-header{padding:20px 20px 15px}.modal-header h2{font-size:1.3rem}.modal-body{padding:20px}.modal-actions{flex-direction:column-reverse}.btn{width:100%;justify-content:center}}.add-customer-modal{max-width:500px;width:90%}.add-customer-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:6px}.form-label{font-weight:600;color:#2c3e50;font-size:.9rem;margin-bottom:4px}.required{color:#dc3545;font-weight:700}.form-input,.form-textarea{padding:12px 15px;border:2px solid rgba(116,185,255,.3);border-radius:8px;font-size:1rem;background:rgba(255,255,255,.95);transition:all .3s ease;font-family:inherit}.form-input:focus,.form-textarea:focus{outline:none;border-color:#74b9ff;box-shadow:0 0 0 3px #74b9ff33;background:white}.form-input.error,.form-textarea.error{border-color:#dc3545;background:rgba(220,53,69,.05)}.form-input.error:focus,.form-textarea.error:focus{border-color:#dc3545;box-shadow:0 0 0 3px #dc354533}.form-textarea{resize:vertical;min-height:80px;font-family:inherit;line-height:1.4}.form-input:disabled,.form-textarea:disabled{background:#f8f9fa;color:#6c757d;cursor:not-allowed;opacity:.7}.error-message{color:#dc3545;font-size:.85rem;font-weight:500;margin-top:4px}.general-error{background:rgba(220,53,69,.1);border:1px solid rgba(220,53,69,.3);border-radius:6px;padding:10px 12px;margin-bottom:15px;font-size:.9rem}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:10px;padding-top:20px;border-top:1px solid #e9ecef}.btn{padding:10px 20px;border:none;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-flex;align-items:center;gap:6px;min-width:120px;justify-content:center}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important;box-shadow:none!important}.form-group{position:relative}.form-input[maxlength]:not([maxlength=""]):focus+.char-count,.form-textarea[maxlength]:not([maxlength=""]):focus+.char-count{display:block}.char-count{display:none;position:absolute;right:8px;bottom:-20px;font-size:.75rem;color:#6c757d;background:white;padding:2px 6px;border-radius:4px;box-shadow:0 1px 3px #0000001a}@media (max-width: 768px){.add-customer-modal{width:95%;margin:10px;max-height:90vh}.form-actions{flex-direction:column}.btn{width:100%;min-width:auto}.form-input,.form-textarea{font-size:16px}}.form-input:disabled::-moz-placeholder,.form-textarea:disabled::-moz-placeholder{color:#adb5bd}.form-input:disabled::placeholder,.form-textarea:disabled::placeholder{color:#adb5bd}.form-input.success,.form-textarea.success{border-color:#28a745;background:rgba(40,167,69,.05)}.form-input.success:focus,.form-textarea.success:focus{border-color:#28a745;box-shadow:0 0 0 3px #28a74533}.form-label:focus-within{color:#74b9ff}.form-input:focus::-moz-placeholder,.form-textarea:focus::-moz-placeholder{opacity:.7}.form-input:focus::placeholder,.form-textarea:focus::placeholder{opacity:.7}.error-message{animation:slideInError .3s ease-out}@keyframes slideInError{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.form-group.has-error .form-label{color:#dc3545}.form-group.has-success .form-label{color:#28a745}.form-input:focus-visible,.form-textarea:focus-visible{outline:2px solid #74b9ff;outline-offset:2px}.btn:focus-visible{outline:2px solid #74b9ff;outline-offset:2px}.invoice-merge-selector{padding:20px;max-height:80vh;overflow-y:auto}.merge-selector-header{margin-bottom:25px;text-align:center}.merge-selector-header h3{margin:0 0 10px;font-size:1.4rem;color:#2c3e50;font-weight:600}.customer-info{margin:8px 0;font-size:1rem;color:#495057}.merge-help{margin:15px 0 0;font-size:.9rem;color:#6c757d;font-style:italic}.merge-selector-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding:15px;background:#f8f9fa;border-radius:8px;border:1px solid #e9ecef}.selection-info{display:flex;flex-direction:column;gap:5px}.selected-count{font-weight:600;color:#2c3e50}.selected-total{font-size:.9rem;color:#28a745;font-weight:500}.invoices-list{max-height:400px;overflow-y:auto;border:1px solid #e9ecef;border-radius:8px;background:white}.invoice-item{display:flex;align-items:flex-start;padding:15px;border-bottom:1px solid #e9ecef;transition:all .3s ease;cursor:pointer}.invoice-item:last-child{border-bottom:none}.invoice-item:hover{background:#f8f9fa}.invoice-item.selected{background:#e3f2fd;border-left:4px solid #007bff}.invoice-checkbox{margin-right:15px;margin-top:2px}.invoice-checkbox input[type=checkbox]{display:none}.checkbox-label{display:block;cursor:pointer}.checkmark{display:inline-block;width:20px;height:20px;border:2px solid #dee2e6;border-radius:4px;position:relative;transition:all .3s ease}.invoice-checkbox input[type=checkbox]:checked+.checkbox-label .checkmark{background:#007bff;border-color:#007bff}.invoice-checkbox input[type=checkbox]:checked+.checkbox-label .checkmark:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:12px;font-weight:700}.invoice-header h4{margin:0;font-size:1.1rem;color:#2c3e50;font-weight:600}.invoice-amount{font-size:1.1rem;font-weight:600;color:#28a745}.invoice-meta{display:flex;gap:15px;margin-bottom:10px;font-size:.9rem;color:#6c757d}.invoice-items-preview{margin-top:10px}.items-preview-label{margin:0 0 5px;font-size:.85rem;font-weight:600;color:#495057}.items-list{font-size:.85rem;color:#6c757d;line-height:1.4}.item-preview{display:inline}.items-more{color:#007bff;font-weight:500}.merge-selector-actions{display:flex;justify-content:flex-end;gap:15px;margin-top:25px;padding-top:20px;border-top:1px solid #e9ecef}.btn{padding:10px 20px;border:none;border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.merge-selector-loading,.merge-selector-error,.merge-selector-empty{text-align:center;padding:40px 20px}.error-icon,.empty-icon{font-size:3rem;margin-bottom:15px}.merge-selector-error h3,.merge-selector-empty h3{margin:0 0 10px;color:#2c3e50}.empty-help{margin-top:10px;font-size:.9rem;color:#6c757d;font-style:italic}@media (max-width: 768px){.invoice-merge-selector{padding:15px}.merge-selector-controls{flex-direction:column;gap:15px;align-items:stretch}.invoice-meta{flex-direction:column;gap:5px}.merge-selector-actions{flex-direction:column-reverse}.btn{width:100%;justify-content:center}}.merge-preview-modal{background:white;border-radius:15px;box-shadow:0 10px 30px #0000004d;width:100%;max-width:800px;max-height:90vh;overflow:hidden;animation:modalSlideIn .3s ease-out;display:flex;flex-direction:column}.modal-body{padding:30px;overflow-y:auto;max-height:calc(90vh - 200px);flex:1}.preview-loading{text-align:center;padding:40px 20px}.loading-spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #007bff;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 20px}.error-message{background:#f8d7da;color:#721c24;padding:12px 16px;border-radius:8px;margin-bottom:20px;border:1px solid #f5c6cb;font-size:.9rem}.merge-summary{margin-bottom:25px;padding:20px;background:#f8f9fa;border-radius:10px;border:1px solid #e9ecef}.merge-summary h3{margin:0 0 15px;font-size:1.2rem;color:#2c3e50;font-weight:600}.summary-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px}.stat-item{display:flex;justify-content:space-between;align-items:center}.stat-label{font-weight:500;color:#495057}.stat-value{font-weight:600;color:#2c3e50}.total-amount{color:#28a745;font-size:1.1rem}.original-invoices{margin-bottom:25px}.original-invoices h4{margin:0 0 15px;font-size:1.1rem;color:#2c3e50;font-weight:600}.invoices-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:15px}.original-invoice{padding:15px;background:white;border:1px solid #dee2e6;border-radius:8px;transition:all .3s ease}.original-invoice:hover{box-shadow:0 2px 8px #0000001a}.invoice-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.invoice-number{font-weight:600;color:#2c3e50}.invoice-amount{font-weight:600;color:#28a745}.invoice-items-count{font-size:.9rem;color:#6c757d}.merged-result{margin-bottom:25px;padding:20px;background:#e3f2fd;border-radius:10px;border:1px solid #bbdefb}.merged-result h4{margin:0 0 15px;font-size:1.1rem;color:#1976d2;font-weight:600}.result-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:15px;border-bottom:1px solid #bbdefb}.result-number{font-weight:600;color:#1976d2}.result-total{font-size:1.2rem;font-weight:700;color:#28a745}.cost-breakdown,.labor-breakdown{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:15px}.cost-item,.labor-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0}.merge-options{margin-bottom:25px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:#2c3e50;font-size:.9rem}.form-group select,.form-group textarea{width:100%;padding:10px 12px;border:2px solid #e9ecef;border-radius:6px;font-size:.9rem;transition:all .3s ease;background:white;color:#2c3e50}.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.form-group textarea{resize:vertical;min-height:80px;font-family:inherit}.merge-warning{display:flex;align-items:flex-start;gap:12px;padding:15px;background:#fff3cd;border:1px solid #ffeaa7;border-radius:8px;margin-bottom:20px}.warning-icon{font-size:1.2rem;flex-shrink:0}.warning-text{font-size:.9rem;color:#856404;line-height:1.4}.modal-actions{display:flex;gap:15px;justify-content:flex-end;padding:20px 30px;border-top:1px solid #e9ecef;background:#f8f9fa;flex-shrink:0}@media (max-width: 768px){.modal-overlay{padding:10px}.merge-preview-modal{max-width:100%;margin:0}.modal-header{padding:20px 20px 15px}.modal-header h2{font-size:1.3rem}.modal-body{padding:20px}.summary-stats,.cost-breakdown,.labor-breakdown,.invoices-grid{grid-template-columns:1fr}.result-header{flex-direction:column;align-items:flex-start;gap:10px}.modal-actions{flex-direction:column-reverse;padding:15px 20px}.btn{width:100%;justify-content:center}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.invoice-merge-modal{background:white;border-radius:15px;box-shadow:0 10px 30px #0000004d;width:100%;max-width:900px;max-height:90vh;overflow:hidden;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-50px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:25px 30px 20px;border-bottom:1px solid #e9ecef;background:linear-gradient(135deg,#f8f9fa 0%,#e9ecef 100%)}.modal-header h2{margin:0;font-size:1.5rem;color:#2c3e50;font-weight:600}.close-button{background:none;border:none;font-size:1.5rem;color:#6c757d;cursor:pointer;padding:5px;border-radius:50%;width:35px;height:35px;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.close-button:hover{background:#f8f9fa;color:#495057}.modal-body{overflow-y:auto;max-height:calc(90vh - 80px)}.preview-step{position:relative}.error-message{background:#f8d7da;color:#721c24;padding:12px 16px;border-radius:8px;margin:20px 30px;border:1px solid #f5c6cb;font-size:.9rem}.step-navigation{padding:20px 30px 0;border-bottom:1px solid #e9ecef;margin-bottom:0}.processing-step{padding:40px 30px;text-align:center}.processing-animation{max-width:400px;margin:0 auto}.loading-spinner{width:60px;height:60px;border:6px solid #f3f3f3;border-top:6px solid #007bff;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 30px}.processing-animation h3{margin:0 0 15px;font-size:1.3rem;color:#2c3e50;font-weight:600}.processing-animation p{margin:0 0 30px;color:#6c757d;font-size:1rem}.processing-steps{display:flex;flex-direction:column;gap:15px;text-align:left}.step-item{display:flex;align-items:center;gap:12px;padding:10px 15px;border-radius:8px;transition:all .3s ease}.step-item.active{background:#e3f2fd;color:#1976d2}.step-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:.8rem;font-weight:700}.step-item.active .step-icon{background:#1976d2;color:#fff}.success-step{padding:40px 30px;text-align:center}.success-icon{font-size:4rem;margin-bottom:20px}.success-step h3{margin:0 0 15px;font-size:1.4rem;color:#28a745;font-weight:600}.success-message{margin:0 0 30px;color:#495057;font-size:1rem;line-height:1.5}.merge-summary{background:#f8f9fa;border:1px solid #e9ecef;border-radius:10px;padding:20px;margin-bottom:30px;text-align:left}.merge-summary h4{margin:0 0 15px;font-size:1.1rem;color:#2c3e50;font-weight:600;text-align:center}.summary-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.summary-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0}.summary-item span:first-child{font-weight:500;color:#495057}.summary-item span:last-child{font-weight:600;color:#2c3e50}.total-amount{color:#28a745!important;font-size:1.1rem!important}.success-actions{display:flex;gap:15px;justify-content:center}.btn{padding:12px 24px;border:none;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;min-width:120px}.btn-primary{background:linear-gradient(135deg,#007bff 0%,#0056b3 100%);color:#fff}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#0056b3 0%,#004085 100%);transform:translateY(-1px);box-shadow:0 4px 12px #007bff4d}.btn-secondary:hover:not(:disabled){background:#545b62;transform:translateY(-1px);box-shadow:0 4px 12px #6c757d4d}.btn-outline{background:transparent;color:#007bff;border:1px solid #007bff}.btn-outline:hover{background:#007bff;color:#fff}.btn-sm{padding:8px 16px;font-size:.8rem;min-width:auto}@media (max-width: 768px){.modal-overlay{padding:10px}.invoice-merge-modal{max-width:100%;margin:0}.modal-header{padding:20px 20px 15px}.modal-header h2{font-size:1.3rem}.processing-step,.success-step{padding:30px 20px}.processing-steps{gap:12px}.step-navigation{padding:15px 20px 0}.error-message{margin:15px 20px}.summary-details{grid-template-columns:1fr}.success-actions{flex-direction:column}.btn{width:100%;justify-content:center}}.customers-tab{padding:20px;background:linear-gradient(135deg,#f8f9fa 0%,#e9ecef 100%);min-height:100vh;color:#2c3e50}.customers-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;flex-shrink:0;flex-wrap:wrap;gap:20px}.customers-header h2{font-size:2rem;margin-bottom:10px;color:#2c3e50;font-weight:600}.customers-header p{font-size:1.1rem;color:#6c757d}.customers-content{display:grid;grid-template-columns:1fr 1fr;gap:30px;max-width:1400px;margin:0 auto;height:calc(100% - 120px);overflow:hidden}.customers-list{background:white;border-radius:15px;padding:25px;box-shadow:0 4px 6px #0000001a;border:1px solid #e9ecef;overflow-y:auto;max-height:80vh}.customers-list-header{margin-bottom:20px}.customers-list-header h3{font-size:1.3rem;color:#2c3e50}.customers-grid{display:flex;flex-direction:column;gap:15px}.customers-list::-webkit-scrollbar,.customer-details::-webkit-scrollbar,.invoices-table-container::-webkit-scrollbar{width:8px}.customers-list::-webkit-scrollbar-track,.customer-details::-webkit-scrollbar-track,.invoices-table-container::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.customers-list::-webkit-scrollbar-thumb,.customer-details::-webkit-scrollbar-thumb,.invoices-table-container::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}.customers-list::-webkit-scrollbar-thumb:hover,.customer-details::-webkit-scrollbar-thumb:hover,.invoices-table-container::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.customer-card{background:#f8f9fa;border-radius:15px;padding:20px;transition:all .3s ease;border:2px solid #e9ecef;position:relative;overflow:hidden}.customer-info{cursor:pointer}.customer-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(45deg,#0984e3,#74b9ff)}.customer-card:hover{background:#e9ecef;transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.customer-card.selected{border-color:#007bff;background:#e3f2fd;box-shadow:0 4px 12px #007bff33}.customer-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:10px}.customer-actions{display:flex;gap:6px}.customer-info h4{margin:0;font-size:1.2rem;color:#2c3e50;font-weight:600;flex:1}.customer-edit-btn,.customer-delete-btn{background:none;border:none;font-size:.9rem;color:#6c757d;cursor:pointer;padding:4px;border-radius:4px;transition:all .3s ease;opacity:.7}.customer-edit-btn:hover{background:rgba(0,123,255,.1);color:#007bff;opacity:1;transform:scale(1.1)}.customer-delete-btn:hover{background:rgba(220,53,69,.1);color:#dc3545;opacity:1;transform:scale(1.1)}.customer-email,.customer-phone{font-size:.9rem;margin:5px 0;color:#6c757d}.customer-stats{display:flex;justify-content:space-between;margin-top:15px;padding-top:15px;border-top:1px solid #dee2e6}.invoice-count{font-size:.9rem;color:#007bff;font-weight:500}.total-revenue{font-size:.9rem;font-weight:600;color:#28a745}.customer-details{background:white;border-radius:15px;padding:25px;box-shadow:0 4px 6px #0000001a;border:1px solid #e9ecef;overflow-y:auto;max-height:80vh}.customer-details-header{margin-bottom:25px;padding-bottom:20px;border-bottom:1px solid #dee2e6}.customer-header-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.customer-actions{display:flex;gap:10px;align-items:center}.customer-details-header h3{font-size:1.5rem;margin:0;color:#2c3e50;font-weight:600}.edit-customer-btn,.merge-invoices-btn{display:flex;align-items:center;gap:5px;font-size:.8rem;padding:6px 12px;white-space:nowrap}.merge-invoices-btn{background:linear-gradient(135deg,#007bff 0%,#0056b3 100%);color:#fff;border:1px solid #007bff}.merge-invoices-btn:hover{background:linear-gradient(135deg,#0056b3 0%,#004085 100%);transform:translateY(-1px);box-shadow:0 2px 8px #007bff4d}.customer-contact p{margin:8px 0;font-size:.95rem;color:#495057}.customer-contact strong{color:#007bff}.customer-invoices h4{margin-bottom:20px;font-size:1.2rem;color:#2c3e50;font-weight:600}.invoices-table-container{overflow-x:auto;border-radius:10px;background:#f8f9fa;border:1px solid #dee2e6;max-height:400px;overflow-y:auto}.invoices-table{width:100%;border-collapse:collapse}.invoices-table th,.invoices-table td{padding:12px 15px;text-align:left;border-bottom:1px solid #dee2e6}.invoices-table th{background:#e9ecef;font-weight:600;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px;color:#495057}.invoices-table tr:hover{background:#f1f3f4}.invoice-link{color:#007bff;text-decoration:none;font-weight:500}.invoice-link:hover{text-decoration:underline;color:#0056b3}.btn-sm{padding:6px 12px;font-size:.8rem;border-radius:6px}.btn-outline{background:transparent;border:1px solid #007bff;color:#007bff;text-decoration:none;transition:all .3s ease}.btn-outline:hover{background:#007bff;color:#fff;text-decoration:none}.empty-state,.no-customer-selected,.empty-invoices{text-align:center;padding:40px 20px}.empty-icon{font-size:3rem;margin-bottom:15px}.selection-prompt{padding:60px 20px}.selection-prompt h3{font-size:1.5rem;margin-bottom:10px;color:#007bff}.error{color:#dc3545}@media (max-width: 1024px){.customers-content{grid-template-columns:1fr;gap:20px}.customers-list,.customer-details{max-height:60vh}}@media (max-width: 768px){.customers-tab{padding:15px}.customers-content{gap:15px}.customers-list,.customer-details{padding:20px;max-height:50vh}.customers-header h2{font-size:1.7rem}.customer-stats{flex-direction:column;gap:8px}.invoices-table{font-size:.9rem}.invoices-table th,.invoices-table td{padding:8px 10px}.invoices-table-container{max-height:300px}.customer-header-top{flex-direction:column;align-items:flex-start;gap:15px}.customer-actions{align-self:flex-end;flex-wrap:wrap}.edit-customer-btn,.merge-invoices-btn{font-size:.75rem;padding:5px 10px}}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #74b9ff80}.btn-outline:hover{background:#74b9ff;color:#fff;transform:translateY(-1px)}.btn-danger{background:linear-gradient(135deg,#ff6b6b 0%,#dc3545 100%);color:#fff;box-shadow:0 2px 8px #dc35454d}.btn-danger:hover{transform:translateY(-1px);box-shadow:0 4px 12px #dc354580}.materials-tab{padding:20px;max-width:1400px;margin:0 auto}.materials-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;flex-wrap:wrap;gap:20px}.header-content{text-align:center;flex:1}.header-actions{display:flex;gap:10px}.header-content h2{margin:0 0 10px;background:linear-gradient(135deg,#74b9ff 0%,#0984e3 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-size:2.5rem;font-weight:700}.header-content p{color:#6c757d;font-size:1.1rem;margin:0}.admin-privilege-note{color:#28a745;font-weight:600;font-size:.9rem}.user-privilege-note{color:#ffc107;font-weight:500;font-size:.9rem}.materials-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px}.stat-card{background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:25px;border-radius:15px;border:1px solid rgba(116,185,255,.2);text-align:center;transition:transform .3s ease,box-shadow .3s ease;position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(135deg,#74b9ff 0%,#0984e3 100%)}.stat-card:hover{transform:translateY(-5px);box-shadow:0 10px 25px #74b9ff4d}.stat-card h3{margin:0 0 15px;color:#2c3e50;font-size:1rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.stat-number{font-size:2.5rem;font-weight:700;margin:0;background:linear-gradient(135deg,#74b9ff 0%,#0984e3 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.materials-controls{display:flex;gap:20px;margin-bottom:30px;align-items:center;flex-wrap:wrap}.search-input{width:100%;padding:12px 45px 12px 15px;border:2px solid rgba(116,185,255,.3);border-radius:25px;font-size:1rem;background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease}.search-input:focus{outline:none;border-color:#74b9ff;box-shadow:0 0 0 3px #74b9ff33}.search-icon{position:absolute;right:15px;top:50%;transform:translateY(-50%);font-size:1.2rem;color:#74b9ff}.filter-controls{display:flex;gap:15px;align-items:center;flex-wrap:wrap}.filter-select{padding:10px 15px;border:2px solid rgba(116,185,255,.3);border-radius:10px;background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:.9rem;cursor:pointer;transition:all .3s ease;min-width:140px}.filter-select:focus{outline:none;border-color:#74b9ff;box-shadow:0 0 0 2px #74b9ff33}.materials-table-container{background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:15px;border:1px solid rgba(116,185,255,.2);overflow:hidden;box-shadow:0 10px 30px #0000001a}.materials-table{width:100%;border-collapse:collapse}.materials-table th{background:rgba(116,185,255,.1);color:#0984e3;font-weight:600;text-transform:uppercase;font-size:.85rem;letter-spacing:.5px;padding:15px 12px;text-align:left;border-bottom:2px solid rgba(116,185,255,.2)}.materials-table th.sortable{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background-color .3s ease}.materials-table th.sortable:hover{background:rgba(116,185,255,.2)}.materials-table td{padding:15px 12px;border-bottom:1px solid rgba(116,185,255,.1);color:#2c3e50;vertical-align:top}.material-row{transition:background-color .3s ease}.material-row:hover{background:rgba(116,185,255,.05)}.material-row.editing{background:rgba(255,193,7,.1);border:2px solid rgba(255,193,7,.3)}.product-code{font-family:Courier New,monospace;font-weight:600;color:#0984e3}.no-code{color:#6c757d;font-style:italic}.description-content{display:flex;flex-direction:column;gap:5px}.description-text{font-weight:500;line-height:1.4}.quantity-badge{font-size:.75rem;background:rgba(116,185,255,.2);color:#0984e3;padding:2px 8px;border-radius:10px;align-self:flex-start}.unit-badge{background:rgba(40,167,69,.2);color:#28a745;padding:4px 8px;border-radius:8px;font-size:.8rem;font-weight:600}.frequency-badge{background:rgba(255,193,7,.2);color:#ffc107;padding:4px 8px;border-radius:8px;font-size:.8rem;font-weight:600}.avg-price{font-weight:600;color:#28a745}.price-range{font-size:.9rem}.single-price{color:#6c757d;font-style:italic}.edit-input,.edit-select{width:100%;padding:6px 8px;border:2px solid rgba(116,185,255,.3);border-radius:6px;font-size:.9rem;background:rgba(255,255,255,.95);transition:all .3s ease}.edit-input:focus,.edit-select:focus{outline:none;border-color:#74b9ff;box-shadow:0 0 0 2px #74b9ff33}.edit-input.valid{border-color:#28a74580}.edit-input.warning{border-color:#ffc10780;background:rgba(255,193,7,.05)}.edit-input.invalid{border-color:#dc354580;background:rgba(220,53,69,.05)}.edit-input.valid:focus{border-color:#28a745;box-shadow:0 0 0 2px #28a74533}.edit-input.warning:focus{border-color:#ffc107;box-shadow:0 0 0 2px #ffc10733}.edit-input.invalid:focus{border-color:#dc3545;box-shadow:0 0 0 2px #dc354533}.price-input,.quantity-input{text-align:right;font-family:Courier New,monospace}.edit-actions,.view-actions{display:flex;gap:6px;flex-wrap:wrap}.edit-actions .btn{min-width:70px}.override-indicator{font-size:.7rem;color:#ffc107;margin-left:4px;opacity:.8}.override-badge{font-size:.7rem;background:rgba(255,193,7,.2);color:#ffc107;padding:2px 6px;border-radius:8px;align-self:flex-start;font-weight:600}.price-display,.quantity-display{display:flex;align-items:center;gap:4px}.unit-price{font-weight:600;color:#28a745}.quantity-ordered,.quantity-shipped,.last-seen{font-size:.9rem;color:#6c757d}.pagination{display:flex;justify-content:space-between;align-items:center;padding:20px;background:rgba(116,185,255,.05);border-top:1px solid rgba(116,185,255,.2)}.page-info{color:#6c757d;font-size:.9rem}.loading-state,.error-state{text-align:center;padding:60px 20px}.loading-spinner{width:40px;height:40px;border:4px solid rgba(116,185,255,.3);border-top:4px solid #74b9ff;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 20px}.error-icon{font-size:3rem;margin-bottom:20px}.error-state h3{color:#dc3545;margin-bottom:10px}.error-state p{color:#6c757d;margin-bottom:20px}.empty-state{text-align:center;padding:60px 20px}.empty-state h3{color:#6c757d;margin-bottom:10px}.empty-state p{color:#6c757d}.btn{padding:8px 16px;border:none;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-flex;align-items:center;gap:6px}.btn-primary{background:linear-gradient(135deg,#74b9ff 0%,#0984e3 100%);color:#fff;box-shadow:0 2px 8px #74b9ff4d}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #74b9ff80}.btn-outline{background:transparent;color:#74b9ff;border:2px solid #74b9ff}.btn-outline:hover:not(:disabled){background:#74b9ff;color:#fff;transform:translateY(-1px)}.btn-sm{padding:6px 12px;font-size:.8rem}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px}.modal-content{background:white;border-radius:15px;max-width:900px;width:100%;max-height:80vh;overflow:hidden;box-shadow:0 20px 40px #0003;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-50px)}to{opacity:1;transform:translateY(0)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 25px;border-bottom:1px solid #e9ecef;background:linear-gradient(135deg,#74b9ff 0%,#0984e3 100%);color:#fff}.modal-header h3{margin:0;font-size:1.5rem}.close-button{background:none;border:none;font-size:1.5rem;color:#fff;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .3s ease}.close-button:hover{background:rgba(255,255,255,.2)}.modal-body{padding:25px;overflow-y:auto;max-height:calc(80vh - 80px)}.material-summary{margin-bottom:25px;padding-bottom:20px;border-bottom:1px solid #e9ecef}.material-summary h4{margin:0 0 10px;color:#2c3e50;font-size:1.3rem}.material-summary .product-code{color:#6c757d;font-family:Courier New,monospace;margin-bottom:15px}.summary-stats{display:flex;gap:20px;flex-wrap:wrap}.summary-stats span{background:rgba(116,185,255,.1);color:#0984e3;padding:6px 12px;border-radius:8px;font-size:.9rem;font-weight:500}.override-status{background:rgba(255,193,7,.2)!important;color:#ffc107!important}.override-info{margin-top:20px;padding:15px;background:rgba(255,193,7,.05);border:1px solid rgba(255,193,7,.2);border-radius:8px}.override-info h5{margin:0 0 15px;color:#ffc107;font-size:1rem;font-weight:600}.override-details{display:flex;flex-direction:column;gap:10px}.override-item{display:flex;flex-direction:column;gap:4px}.override-item strong{color:#2c3e50;font-size:.9rem}.override-note{font-size:.8rem;color:#6c757d;font-style:italic}.admin-note{margin-top:15px;padding:12px;background:rgba(255,193,7,.1);border:1px solid rgba(255,193,7,.3);border-radius:8px}.admin-note p{margin:0;color:#856404;font-size:.9rem}.usage-history h5{margin:0 0 15px;color:#2c3e50;font-size:1.1rem}.history-table{overflow-x:auto}.history-table table{width:100%;border-collapse:collapse;font-size:.9rem}.history-table th{background:#f8f9fa;color:#495057;font-weight:600;padding:10px 12px;text-align:left;border-bottom:2px solid #dee2e6}.history-table td{padding:10px 12px;border-bottom:1px solid #dee2e6}@media (max-width: 768px){.materials-tab{padding:15px}.materials-controls{flex-direction:column;align-items:stretch}.search-box{min-width:auto}.materials-stats{grid-template-columns:1fr}.materials-table-container{overflow-x:auto}.materials-table{min-width:800px}.pagination{flex-direction:column;gap:10px}.modal-content{margin:10px;max-height:90vh}.summary-stats{flex-direction:column}}.edit-job-modal{max-width:600px;width:90%;max-height:90vh;overflow-y:auto}.edit-job-form{display:flex;flex-direction:column;gap:20px}@media (max-width: 768px){.edit-job-modal{width:95%;margin:20px}.form-row{grid-template-columns:1fr;gap:15px}.modal-actions{flex-direction:column}.btn{width:100%}}.add-job-modal{max-width:600px;width:90%;max-height:90vh;overflow-y:auto}.add-job-form{display:flex;flex-direction:column;gap:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-weight:600;color:#2c3e50;font-size:.95rem}.form-input,.form-select,.form-textarea{padding:12px 15px;border:1px solid rgba(116,185,255,.3);border-radius:8px;font-size:1rem;background:rgba(255,255,255,.9);transition:all .3s ease;color:#2c3e50}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:#74b9ff;box-shadow:0 0 0 3px #74b9ff1a}.form-textarea{resize:vertical;min-height:80px;font-family:inherit}.form-input::-moz-placeholder,.form-textarea::-moz-placeholder{color:#636e72}.form-input::placeholder,.form-textarea::placeholder{color:#636e72}.auto-fill-hint{font-size:.8rem;color:#74b9ff;font-weight:400}.form-hint{color:#636e72;font-size:.85rem;margin-top:4px;display:block}@media (max-width: 768px){.add-job-modal{width:95%;margin:20px}.form-row{grid-template-columns:1fr;gap:15px}.modal-actions{flex-direction:column}.btn{width:100%}}.checkbox-group{display:flex;align-items:center;gap:10px}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:600;color:#2c3e50}.form-checkbox{width:18px;height:18px;accent-color:#74b9ff;cursor:pointer}.checkbox-text{font-size:.95rem;-webkit-user-select:none;-moz-user-select:none;user-select:none}.multi-invoice-modal{max-width:800px;width:95%;max-height:90vh;overflow-y:auto}.multi-invoice-info{background:linear-gradient(135deg,#74b9ff,#0984e3);color:#fff;padding:20px;border-radius:10px;margin-bottom:25px}.pdf-info h4{margin:0 0 10px;font-size:1.2rem;font-weight:600}.pdf-info p{margin:5px 0;opacity:.9;font-size:.95rem}.job-assignment-notice{background:rgba(255,255,255,.2);padding:10px;border-radius:6px;margin-top:15px;font-weight:500}.invoice-selection-section{margin-bottom:30px}.selection-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid rgba(116,185,255,.2)}.selection-header h3{margin:0;color:#2c3e50;font-size:1.3rem;font-weight:600}.invoice-list{display:flex;flex-direction:column;gap:15px;max-height:400px;overflow-y:auto;padding:10px;border:1px solid rgba(116,185,255,.2);border-radius:8px;background:rgba(248,249,250,.5)}.invoice-item{display:flex;align-items:flex-start;gap:15px;padding:20px;background:white;border-radius:10px;border:2px solid transparent;transition:all .3s ease;cursor:pointer;box-shadow:0 2px 8px #0000001a;-webkit-user-select:none;-moz-user-select:none;user-select:none}.invoice-item:hover{border-color:#74b9ff80;transform:translateY(-2px);box-shadow:0 4px 15px #00000026;background:rgba(116,185,255,.02)}.invoice-item.selected{border-color:#74b9ff;background:rgba(116,185,255,.08);box-shadow:0 4px 15px #74b9ff33}.invoice-item.selected:hover{background:rgba(116,185,255,.12)}.invoice-checkbox{margin-top:5px;position:relative;display:flex;align-items:center;justify-content:center}.invoice-checkbox input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:#74b9ff;transform:scale(1.2)}.invoice-checkbox input[type=checkbox]:hover{transform:scale(1.3)}.checkbox-label{position:absolute;top:0;left:0;width:20px;height:20px;cursor:pointer}.invoice-details{flex:1}.invoice-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.invoice-header h4{margin:0;color:#2c3e50;font-size:1.1rem;font-weight:600}.invoice-date{color:#636e72;font-size:.9rem;font-weight:500;background:rgba(116,185,255,.1);padding:4px 8px;border-radius:4px}.invoice-meta{display:flex;flex-wrap:wrap;gap:15px;font-size:.9rem}.pages-info,.po-info,.customer-info{color:#636e72;background:rgba(248,249,250,.8);padding:4px 8px;border-radius:4px;border:1px solid rgba(116,185,255,.2)}.processing-status{background:rgba(116,185,255,.1);border:1px solid rgba(116,185,255,.3);border-radius:8px;padding:20px;margin:20px 0;text-align:center}.processing-info{display:flex;align-items:center;justify-content:center;gap:15px}.spinner{width:24px;height:24px;border:3px solid rgba(116,185,255,.3);border-top:3px solid #74b9ff;border-radius:50%;animation:spin 1s linear infinite}.processing-info p{margin:0;color:#2c3e50;font-weight:500}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none}@media (max-width: 768px){.multi-invoice-modal{width:95%;margin:20px}.selection-header{flex-direction:column;gap:15px;align-items:stretch}.invoice-item{padding:15px}.invoice-header{flex-direction:column;align-items:flex-start;gap:8px}.invoice-meta{flex-direction:column;gap:8px}.modal-actions{flex-direction:column}.btn{width:100%}.processing-info{flex-direction:column;gap:10px}}.job-invoice-upload-modal{max-width:600px;width:90%;max-height:90vh;overflow-y:auto}.job-info-banner{background:linear-gradient(135deg,#74b9ff,#0984e3);color:#fff;padding:20px;border-radius:10px;margin-bottom:25px}.job-info h4{margin:0 0 10px;font-size:1.2rem;font-weight:600}.job-info p{margin:5px 0;opacity:.9;font-size:.95rem}.upload-section{margin-bottom:30px}.upload-section h3{margin:0 0 20px;color:#2c3e50;font-size:1.3rem;font-weight:600}.file-drop-zone{border:2px dashed rgba(116,185,255,.3);border-radius:12px;padding:40px 20px;text-align:center;background:rgba(248,249,250,.5);transition:all .3s ease;cursor:pointer;position:relative;margin-bottom:20px}.file-drop-zone:hover{border-color:#74b9ff;background:rgba(116,185,255,.05)}.file-drop-zone.has-file{border-color:#28a745;background:rgba(40,167,69,.05)}.upload-icon{font-size:3rem;opacity:.6}.drop-zone-content p{margin:0;color:#636e72;font-size:1.1rem}.file-info{display:flex;align-items:center;gap:15px;padding:15px;background:rgba(255,255,255,.8);border-radius:8px;border:1px solid rgba(40,167,69,.2)}.file-icon{font-size:2rem;color:#28a745}.file-details{flex:1;text-align:left}.file-name{margin:0 0 5px;font-weight:600;color:#2c3e50;font-size:1rem}.file-size{margin:0;color:#636e72;font-size:.9rem}.upload-btn{width:100%;padding:15px;font-size:1.1rem;font-weight:600;background:linear-gradient(45deg,#0984e3,#74b9ff);color:#fff;border:none;border-radius:8px;cursor:pointer;transition:all .3s ease}.upload-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 15px #0984e34d}.upload-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.error-message{background:#fee;color:#c33;padding:15px;border-radius:8px;margin-bottom:20px;border:1px solid #fcc}.modal-actions{display:flex;gap:15px;justify-content:flex-end;margin-top:30px;padding-top:20px;border-top:1px solid rgba(116,185,255,.2)}.btn{padding:12px 24px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;border:none;font-size:1rem}.btn-primary{background:linear-gradient(45deg,#0984e3,#74b9ff);color:#fff}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 15px #0984e34d}.btn-secondary{background:#f8f9fa;color:#636e72;border:1px solid rgba(116,185,255,.3)}.btn-secondary:hover:not(:disabled){background:#e9ecef;border-color:#74b9ff}.btn-sm{padding:8px 16px;font-size:.9rem}@media (max-width: 768px){.job-invoice-upload-modal{width:95%;margin:20px}.file-drop-zone{padding:30px 15px}.upload-icon{font-size:2.5rem}.modal-actions{flex-direction:column}.btn{width:100%}}.jobs-tab{padding:0;background:transparent}.jobs-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding:0 20px}.header-content h2{margin:0;color:#2c3e50;font-size:1.8rem;font-weight:600}.header-content p{margin:5px 0 0;color:#636e72;font-size:1rem}.header-actions{display:flex;gap:15px}.add-job-btn{background:linear-gradient(45deg,#0984e3,#74b9ff);color:#fff;border:none;padding:12px 20px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px}.add-job-btn:hover{transform:translateY(-2px);box-shadow:0 4px 15px #0984e34d}.jobs-controls{display:flex;gap:20px;margin-bottom:30px;padding:0 20px;align-items:center;flex-wrap:wrap}.search-box{position:relative;flex:1;min-width:300px}.search-input{width:100%;padding:12px 45px 12px 15px;border:1px solid rgba(116,185,255,.3);border-radius:8px;font-size:1rem;background:rgba(255,255,255,.9);transition:all .3s ease}.search-input:focus{outline:none;border-color:#74b9ff;box-shadow:0 0 0 3px #74b9ff1a}.search-icon{position:absolute;right:15px;top:50%;transform:translateY(-50%);color:#636e72;font-size:1.2rem}.filters{display:flex;gap:15px}.filter-select{padding:12px 15px;border:1px solid rgba(116,185,255,.3);border-radius:8px;background:rgba(255,255,255,.9);font-size:1rem;cursor:pointer;transition:all .3s ease}.filter-select:focus{outline:none;border-color:#74b9ff;box-shadow:0 0 0 3px #74b9ff1a}.error-message{background:#fee;color:#c33;padding:15px;border-radius:8px;margin:0 20px 20px;border:1px solid #fcc}.jobs-content{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding:0 20px;min-height:500px}.jobs-list{background:rgba(255,255,255,.8);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:15px;border:1px solid rgba(116,185,255,.2);padding:25px;overflow:hidden}.jobs-list-header{margin-bottom:20px;border-bottom:2px solid rgba(116,185,255,.2);padding-bottom:15px}.jobs-list-header h3{margin:0;color:#2c3e50;font-size:1.3rem;font-weight:600}.jobs-grid{max-height:600px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(116,185,255,.3) transparent}.jobs-grid::-webkit-scrollbar{width:8px}.jobs-grid::-webkit-scrollbar-track{background:transparent}.jobs-grid::-webkit-scrollbar-thumb{background:rgba(116,185,255,.3);border-radius:4px}.jobs-grid::-webkit-scrollbar-thumb:hover{background:rgba(116,185,255,.5)}.job-card{background:#f8f9fa;border-radius:10px;margin-bottom:15px;border:2px solid transparent;transition:all .3s ease;cursor:pointer}.job-card:hover{border-color:#74b9ff4d;transform:translateY(-2px);box-shadow:0 4px 15px #0000001a}.job-card.selected{border-color:#74b9ff;background:rgba(116,185,255,.1)}.job-info{padding:20px}.job-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px}.job-header h4{margin:0;color:#2c3e50;font-size:1.2rem;font-weight:600;flex:1}.job-actions{display:flex;gap:8px}.job-edit-btn,.job-delete-btn{background:none;border:none;padding:8px;border-radius:6px;cursor:pointer;font-size:1rem;transition:all .2s ease}.job-edit-btn:hover{background:rgba(116,185,255,.2)}.job-delete-btn:hover{background:rgba(220,53,69,.2)}.job-details{display:flex;flex-direction:column;gap:10px}.job-customer{color:#636e72;font-size:.95rem}.job-status{display:flex;align-items:center}.status-badge{color:#fff;padding:4px 12px;border-radius:20px;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.job-stats{display:flex;justify-content:space-between;align-items:center;margin-top:10px;padding-top:10px;border-top:1px solid rgba(116,185,255,.2)}.invoice-count,.job-total{font-size:.9rem;font-weight:600;color:#2c3e50}.empty-state{text-align:center;padding:60px 20px;color:#636e72}.empty-icon{font-size:4rem;margin-bottom:20px;opacity:.5}.empty-state h4{margin:0 0 10px;color:#2c3e50;font-size:1.3rem}.empty-state p{margin:0;font-size:1rem;line-height:1.5}.job-details{background:rgba(255,255,255,.8);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:15px;border:1px solid rgba(116,185,255,.2);padding:25px;overflow-y:auto;max-height:700px}.job-details-header{margin-bottom:30px}.job-header-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;padding-bottom:15px;border-bottom:2px solid rgba(116,185,255,.2)}.job-header-top h3{margin:0;color:#2c3e50;font-size:1.5rem;font-weight:600}.add-invoice-btn{background:linear-gradient(45deg,#00b894,#00cec9);color:#fff;border:none;padding:8px 16px;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:.9rem;margin-right:10px}.add-invoice-btn:hover{transform:translateY(-1px);box-shadow:0 2px 8px #00b8944d}.edit-job-btn{background:linear-gradient(45deg,#0984e3,#74b9ff);color:#fff;border:none;padding:8px 16px;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:.9rem}.edit-job-btn:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0984e34d}.job-labor{background:rgba(248,249,250,.8);border:1px solid rgba(116,185,255,.2);border-radius:10px;padding:20px;margin-bottom:25px}.job-labor h4{margin:0 0 15px;color:#2c3e50;font-size:1.1rem;font-weight:600}.labor-summary{display:flex;flex-direction:column;gap:10px;margin-bottom:15px}.labor-item{display:grid;grid-template-columns:1fr auto auto auto;gap:15px;align-items:center;padding:8px 0;border-bottom:1px solid rgba(116,185,255,.1)}.labor-item:last-child{border-bottom:none}.labor-item.total{border-top:2px solid rgba(116,185,255,.3);padding-top:12px;margin-top:8px;font-weight:600}.labor-type{color:#2c3e50;font-weight:500}.labor-hours,.labor-rate{color:#636e72;font-size:.9rem}.labor-total{color:#0984e3;font-weight:600;text-align:right}.labor-total-amount{color:#0984e3;font-weight:700;font-size:1.1rem;text-align:right}.edit-labor-btn{background:linear-gradient(45deg,#00b894,#00cec9);color:#fff;border:none;padding:8px 16px;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:.9rem}.edit-labor-btn:hover{transform:translateY(-1px);box-shadow:0 2px 8px #00b8944d}.job-totals-summary{background:linear-gradient(135deg,#74b9ff,#0984e3);color:#fff;border-radius:10px;padding:20px;margin-bottom:25px}.job-totals-summary h4{margin:0 0 15px;font-size:1.1rem;font-weight:600}.totals-grid{display:flex;flex-direction:column;gap:10px}.total-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.2)}.total-item:last-child{border-bottom:none}.total-item.grand-total{border-top:2px solid rgba(255,255,255,.3);padding-top:12px;margin-top:8px;font-weight:700;font-size:1.1rem}.total-item label{opacity:.9;font-weight:500}.total-item .amount{font-weight:600}.total-item .amount.grand{font-weight:700;font-size:1.2rem}.job-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:25px}.info-item{display:flex;flex-direction:column;gap:5px}.info-item label{font-weight:600;color:#636e72;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}.info-item span{color:#2c3e50;font-size:1rem;font-weight:500}.job-description,.job-notes{margin-bottom:20px}.job-description label,.job-notes label{display:block;font-weight:600;color:#636e72;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.job-description p,.job-notes p{margin:0;color:#2c3e50;line-height:1.6;background:rgba(248,249,250,.8);padding:15px;border-radius:8px;border-left:4px solid #74b9ff}.job-invoices{margin-top:30px;padding-top:25px;border-top:2px solid rgba(116,185,255,.2)}.job-invoices h4{margin:0 0 20px;color:#2c3e50;font-size:1.3rem;font-weight:600}.empty-invoices{text-align:center;padding:40px 20px;color:#636e72;background:rgba(248,249,250,.5);border-radius:8px;border:2px dashed rgba(116,185,255,.3)}.empty-invoices p{margin:0;font-size:1rem}.no-job-selected{display:flex;align-items:center;justify-content:center;height:100%;min-height:400px}.selection-prompt{text-align:center;color:#636e72}.selection-prompt h3{margin:0 0 15px;color:#2c3e50;font-size:1.5rem;font-weight:600}.selection-prompt p{margin:0;font-size:1.1rem;line-height:1.5}.loading{text-align:center;padding:40px 20px;color:#636e72;font-size:1.1rem}@media (max-width: 1024px){.jobs-content{grid-template-columns:1fr;gap:20px}.job-details{max-height:500px}}@media (max-width: 768px){.jobs-header{flex-direction:column;gap:20px;align-items:flex-start}.jobs-controls{flex-direction:column;gap:15px;align-items:stretch}.search-box{min-width:auto}.filters{flex-direction:column;gap:10px}.job-info-grid{grid-template-columns:1fr;gap:15px}.job-header-top{flex-direction:column;gap:15px;align-items:flex-start}}.job-bill-btn{background:linear-gradient(45deg,#17a2b8,#20c997);color:#fff;border:none;padding:6px 8px;border-radius:6px;font-size:.9rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;min-width:32px;height:32px}.job-bill-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 3px 10px #17a2b84d;background:linear-gradient(45deg,#138496,#1e7e34)}.job-bill-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.generate-bill-btn{background:linear-gradient(45deg,#17a2b8,#20c997);color:#fff;border:none;font-weight:600;transition:all .2s ease}.generate-bill-btn:hover:not(:disabled){background:linear-gradient(45deg,#138496,#1e7e34);transform:translateY(-1px);box-shadow:0 3px 10px #17a2b84d}.generate-bill-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.job-actions{display:flex;gap:8px;align-items:center}.cash-payment{background-color:#e8f5e8;border:1px solid #4caf50;border-radius:6px;padding:8px 12px;margin:4px 0}.cash-payment label{color:#2e7d32;font-weight:600}.cash-amount{color:#1b5e20;font-weight:700;font-size:1.1em}.business-settings{max-width:800px;margin:0 auto;padding:20px;background:white;border-radius:8px;box-shadow:0 2px 4px #0000001a}.settings-header{margin-bottom:30px;text-align:center;border-bottom:2px solid #e9ecef;padding-bottom:20px}.settings-header h2{color:#2c3e50;margin-bottom:10px;font-size:1.8rem}.settings-header p{color:#6c757d;margin-bottom:15px;font-size:1rem}.last-updated{font-size:.9rem;color:#6c757d;font-style:italic}.settings-content{max-width:700px;margin:0 auto}.settings-form{display:flex;flex-direction:column;gap:30px}.settings-section{background:#f8f9fa;padding:20px;border-radius:8px;border:1px solid #e9ecef}.settings-section h3{color:#2c3e50;margin-bottom:20px;font-size:1.3rem;border-bottom:1px solid #dee2e6;padding-bottom:10px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:15px}.form-group{display:flex;flex-direction:column}.form-group label{font-weight:600;color:#2c3e50;margin-bottom:8px;font-size:.95rem}.required{color:#dc3545;margin-left:4px}.form-group input,.form-group textarea{padding:12px;border:2px solid #e9ecef;border-radius:6px;font-size:1rem;transition:border-color .2s ease;background:white;color:#2c3e50}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.form-group input.error,.form-group textarea.error{border-color:#dc3545;box-shadow:0 0 0 3px #dc35451a}.field-help{font-size:.85rem;color:#6c757d;margin-top:5px;font-style:italic}.error-message{color:#dc3545;font-size:.85rem;margin-top:5px;font-weight:500}.general-error{background:#f8d7da;border:1px solid #f5c6cb;border-radius:6px;padding:12px;margin-bottom:20px;font-size:.95rem}.success-message{background:#d4edda;border:1px solid #c3e6cb;color:#155724;border-radius:6px;padding:12px;margin-bottom:20px;font-size:.95rem;font-weight:500}.recalculation-details{margin-top:8px;padding-top:8px;border-top:1px solid #c3e6cb}.recalculation-details small{color:#0c5460;font-style:italic}.settings-actions{display:flex;justify-content:flex-end;gap:15px;padding-top:20px;border-top:1px solid #e9ecef;margin-top:10px;flex-wrap:wrap}.btn{padding:12px 24px;border:none;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;min-width:120px}.btn-primary{background:#007bff;color:#fff}.btn-primary:hover:not(:disabled){background:#0056b3;transform:translateY(-1px);box-shadow:0 4px 8px #007bff4d}.btn-secondary{background:#6c757d;color:#fff}.btn-secondary:hover:not(:disabled){background:#545b62;transform:translateY(-1px);box-shadow:0 4px 8px #6c757d4d}.btn-info{background:#17a2b8;color:#fff}.btn-info:hover:not(:disabled){background:#138496;transform:translateY(-1px);box-shadow:0 4px 8px #17a2b84d}.access-denied{text-align:center;padding:60px 20px;color:#6c757d}.access-denied h2{color:#dc3545;margin-bottom:15px}.loading-state{text-align:center;padding:60px 20px;color:#6c757d}.loading-spinner{width:40px;height:40px;border:4px solid #e9ecef;border-top:4px solid #007bff;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 20px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.business-settings{margin:10px;padding:15px}.form-row{grid-template-columns:1fr;gap:15px}.settings-actions{flex-direction:column}.btn{width:100%}.settings-header h2{font-size:1.5rem}.settings-section{padding:15px}}.settings-section:last-of-type .form-row{grid-template-columns:1fr}.invoice-upload{max-width:800px;margin:0 auto;padding:20px}.upload-header{text-align:center;margin-bottom:40px}.upload-header h1{color:#2c3e50;font-size:2.5rem;margin-bottom:10px}.upload-header p{color:#6c757d;font-size:1.1rem}.upload-step{background:white;border-radius:10px;padding:30px;margin-bottom:30px;box-shadow:0 2px 10px #0000001a;border-left:5px solid #007bff}.upload-step h2{color:#2c3e50;margin-bottom:20px;font-size:1.5rem}.file-drop-zone{border:3px dashed #dee2e6;border-radius:10px;padding:40px;text-align:center;transition:all .3s ease;cursor:pointer;margin-bottom:20px;position:relative}.file-drop-zone:hover{border-color:#007bff;background-color:#f8f9fa}.file-drop-zone.has-file{border-color:#28a745;background-color:#f8fff9}.drop-zone-content{display:flex;flex-direction:column;align-items:center;gap:15px}.upload-icon{font-size:3rem;color:#6c757d}.file-input{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.file-info{display:flex;align-items:center;gap:20px;padding:20px;background:white;border-radius:8px;border:1px solid #dee2e6}.file-icon{font-size:2rem}.file-details{flex:1}.file-name{font-weight:600;margin:0 0 5px;color:#2c3e50}.file-size{margin:0;color:#6c757d;font-size:.9rem}.btn-sm{padding:8px 16px;font-size:.875rem}.btn-large{padding:15px 30px;font-size:1.1rem}.extracted-data{background:#f8f9fa;padding:20px;border-radius:8px;border-left:4px solid #28a745}.success-message{color:#28a745;font-weight:600;margin-bottom:20px;font-size:1.1rem}.total-display{margin-bottom:25px;background:white;padding:20px;border-radius:8px;border:2px solid #28a745}.total-info label{display:block;margin-bottom:8px;font-weight:600;color:#2c3e50}.total-amount{font-size:1.5rem;font-weight:700;color:#28a745;background:#f8fff9;padding:12px;border-radius:6px;text-align:center}.markup-input{margin-bottom:25px}.markup-input label{display:block;margin-bottom:8px;font-weight:600;color:#2c3e50}.markup-input input{width:100%;padding:12px;border:2px solid #dee2e6;border-radius:6px;font-size:1rem;transition:border-color .3s ease;margin-bottom:10px}.markup-input input::-moz-placeholder{color:#000}.markup-input input::placeholder{color:#000}.markup-input input:focus{outline:none;border-color:#007bff}.markup-calculation{background:#e3f2fd;padding:12px;border-radius:6px;font-weight:600;color:#1976d2;text-align:center}.labor-inputs{background:#f8f9fa;border-radius:8px;display:flex;flex-direction:column;gap:20px;max-width:1200px;margin:0 auto 25px}.labor-inputs h4{color:#2c3e50;margin:0;font-size:1.2rem;text-align:center;font-weight:600;order:1}.labor-grid-upload{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:40px;width:100%;padding:30px;background:white;border-radius:8px;border:1px solid #dee2e6;order:2;box-sizing:border-box}.labor-grid-upload .labor-input-group:nth-child(1){grid-column:1;grid-row:1}.labor-grid-upload .labor-input-group:nth-child(2){grid-column:2;grid-row:1}.labor-grid-upload .labor-input-group:nth-child(3){grid-column:1;grid-row:2}.labor-grid-upload .labor-input-group:nth-child(4){grid-column:2;grid-row:2}.labor-row{display:grid;grid-template-columns:1fr 1fr 120px;gap:20px;align-items:end;margin-bottom:15px;padding:15px;background:white;border-radius:6px;border:1px solid #dee2e6}.labor-input-group{display:flex;flex-direction:column}.labor-input-group label{font-weight:600;color:#2c3e50;margin-bottom:5px;font-size:.9rem}.labor-input-group input{padding:10px;border:2px solid #dee2e6;border-radius:4px;font-size:1rem;transition:border-color .3s ease}.labor-input-group input::-moz-placeholder{color:#000}.labor-input-group input::placeholder{color:#000}.labor-input-group input:focus{outline:none;border-color:#17a2b8}.labor-cost{background:#e8f4f8;padding:10px 15px;border-radius:4px;font-weight:600;color:#17a2b8;text-align:center;min-width:100px}.total-labor{text-align:center;padding:20px;background:#d1ecf1;border-radius:6px;color:#0c5460;font-size:1.1rem;margin:0;order:3;width:100%;box-sizing:border-box}.final-calculation{background:white;padding:30px;border-radius:8px;border:2px solid #28a745;max-width:1200px;margin:20px auto 25px}.calc-summary{display:flex;flex-direction:column;gap:10px}.calc-line{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #f1f3f4}.calc-line:last-child{border-bottom:none}.calc-line.total-line{border-top:2px solid #28a745;font-weight:700;font-size:1.2rem;color:#28a745;margin-top:10px;padding-top:15px}.items-preview h3{color:#2c3e50;margin-bottom:15px}.items-list{background:white;border-radius:6px;padding:15px;border:1px solid #dee2e6}.item-preview{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #f1f3f4}.item-preview:last-child{border-bottom:none}.item-desc{flex:1;color:#2c3e50}.item-qty{color:#6c757d;font-size:.9rem}.more-items{text-align:center;color:#6c757d;font-style:italic;margin:10px 0 0}.customer-selection{background:#f8f9fa;padding:20px;border-radius:8px;margin-bottom:25px}.customer-options{display:flex;gap:30px;margin-bottom:20px}.customer-options label{display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:500}.customer-select,.customer-input{width:100%;padding:12px;border:2px solid #dee2e6;border-radius:6px;font-size:1rem;transition:border-color .3s ease}.customer-input::-moz-placeholder{color:#000}.customer-input::placeholder{color:#000}.customer-select:focus,.customer-input:focus{outline:none;border-color:#007bff}.error-message{background-color:#f8d7da;color:#721c24;padding:15px;border-radius:6px;border:1px solid #f5c6cb;margin-top:20px;text-align:center;font-weight:500}.auto-population-message{background-color:#d1ecf1;color:#0c5460;padding:15px;border-radius:6px;border:1px solid #bee5eb;margin-top:20px;text-align:center;font-weight:500;animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.invoice-upload{padding:15px}.upload-step{padding:20px}.file-drop-zone{padding:30px 20px}.customer-options{flex-direction:column;gap:15px}.file-info{flex-direction:column;text-align:center;gap:15px}.labor-row,.labor-grid-upload{grid-template-columns:1fr;gap:15px}.labor-input-group{margin-bottom:10px}.labor-cost{text-align:left;min-width:auto}}.invoice-detail{max-width:1200px;margin:0 auto;padding:20px}.invoice-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #e9ecef}.header-left h1{color:#2c3e50;margin:10px 0 5px;font-size:2.2rem}.back-link{color:#007bff;text-decoration:none;font-weight:500;margin-bottom:10px;display:inline-block}.back-link:hover{text-decoration:underline}.invoice-date{color:#6c757d;margin:0}.status-badge{padding:8px 16px;border-radius:20px;color:#fff;font-weight:500;font-size:.9rem}.status-draft{background-color:#6c757d}.status-processed{background-color:#007bff}.status-sent{background-color:#ffc107;color:#212529}.status-paid{background-color:#28a745}.invoice-content{display:grid;grid-template-columns:1fr 2fr;gap:30px;margin-bottom:40px}.invoice-info{display:flex;flex-direction:column;gap:25px}.info-section{background:white;padding:25px;border-radius:10px;box-shadow:0 2px 10px #0000001a;border-left:4px solid #007bff}.info-section h3{color:#2c3e50;margin:0 0 15px;font-size:1.3rem}.customer-details p,.labor-details p{margin:8px 0;color:#495057}.cost-details{display:flex;flex-direction:column;gap:12px}.cost-line{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #f1f3f4}.cost-line:last-child{border-bottom:none}.cost-line.total{border-top:2px solid #2c3e50;font-weight:700;font-size:1.1rem;color:#2c3e50;margin-top:10px;padding-top:15px}.invoice-items{background:white;padding:25px;border-radius:10px;box-shadow:0 2px 10px #0000001a}.invoice-items h3{color:#2c3e50;margin:0 0 20px;font-size:1.3rem}.items-table-container{overflow-x:auto}.items-table{width:100%;border-collapse:collapse;margin-top:15px}.items-table th,.items-table td{padding:12px;text-align:left;border-bottom:1px solid #dee2e6}.items-table th{background-color:#f8f9fa;font-weight:600;color:#495057;border-top:1px solid #dee2e6}.items-table tbody tr:hover{background-color:#f8f9fa}.invoice-actions{background:white;padding:25px;border-radius:10px;box-shadow:0 2px 10px #0000001a;margin-bottom:30px}.invoice-actions h3{color:#2c3e50;margin:0 0 20px;font-size:1.3rem}.action-buttons{display:flex;gap:15px;flex-wrap:wrap}.btn{padding:12px 24px;border:none;border-radius:6px;font-weight:500;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-block;text-align:center;font-size:1rem}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background-color:#007bff;color:#fff}.btn-primary:hover:not(:disabled){background-color:#0056b3}.btn-secondary{background-color:#6c757d;color:#fff}.btn-secondary:hover:not(:disabled){background-color:#545b62}.receipt-preview{background:white;border-radius:10px;box-shadow:0 2px 10px #0000001a;margin-top:30px;overflow:hidden}.receipt-header{display:flex;justify-content:space-between;align-items:center;padding:20px 25px;background-color:#f8f9fa;border-bottom:1px solid #dee2e6}.receipt-header h3{margin:0;color:#2c3e50}.close-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#6c757d;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .3s ease}.close-btn:hover{background-color:#e9ecef}.receipt-content{padding:25px;font-family:Courier New,monospace;font-size:.9rem;line-height:1.4;white-space:pre-wrap;overflow-x:auto;background-color:#f8f9fa;margin:0}.loading,.error{text-align:center;padding:40px;font-size:1.1rem}.error{color:#dc3545;background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:6px;margin:20px}.loading{color:#6c757d}@media (max-width: 768px){.invoice-detail{padding:15px}.invoice-header{flex-direction:column;gap:15px;align-items:flex-start}.invoice-content{grid-template-columns:1fr;gap:20px}.action-buttons{flex-direction:column}.items-table-container{overflow-x:auto}.items-table{min-width:600px}}.job-notes{background-color:#f8f9fa;border-radius:8px;padding:15px;border-left:4px solid #74b9ff;margin-top:10px}.job-notes p{margin:0;line-height:1.6;color:#2c3e50;white-space:pre-wrap;word-wrap:break-word}.cash-advance-indicator{background:linear-gradient(135deg,#f39c12,#e67e22);color:#fff;padding:6px 12px;border-radius:20px;font-size:.85rem;font-weight:600;display:inline-block;margin-top:8px;box-shadow:0 2px 8px #f39c124d}.invoice-detail .terms-due{display:flex;gap:12px;align-items:center;margin-top:6px}.invoice-detail .terms{color:#111827;font-weight:600}.invoice-detail .due-date{color:#374151;font-weight:500;padding:2px 8px;border-radius:9999px;background:#E5E7EB}.invoice-detail .due-date.due-soon{background:#FDE68A;color:#111827}.invoice-detail .due-date.overdue{background:#DC2626;color:#fff}.cash-receipt-detail{min-height:100vh;background-color:#f8f9fa}.cash-receipt-header{background:linear-gradient(135deg,#28a745,#20c997);color:#fff;margin-bottom:2rem}.cash-receipt-header .header-left a{color:#ffffffe6;text-decoration:none;font-weight:500;transition:color .2s ease}.cash-receipt-header .header-left a:hover{color:#fff}.cash-receipt-header h1{color:#fff;margin:0}.cash-receipt-header p{color:#ffffffe6;margin:.25rem 0}@media (max-width: 768px){.cash-receipt-detail{padding:1rem}.grid{grid-template-columns:1fr}.flex-wrap{flex-direction:column}.flex-wrap button{width:100%}}/*! tailwindcss v4.1.11 | MIT License | https://tailwindcss.com */@layer properties{@supports ((-webkit-hyphens:none) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-50:oklch(97.1% .013 17.38);--color-red-200:oklch(88.5% .062 18.334);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-red-700:oklch(50.5% .213 27.518);--color-orange-50:oklch(98% .016 73.684);--color-orange-600:oklch(64.6% .222 41.116);--color-yellow-50:oklch(98.7% .026 102.212);--color-yellow-100:oklch(97.3% .071 103.193);--color-yellow-300:oklch(90.5% .182 98.111);--color-yellow-400:oklch(85.2% .199 91.936);--color-yellow-500:oklch(79.5% .184 86.047);--color-yellow-600:oklch(68.1% .162 75.834);--color-yellow-800:oklch(47.6% .114 61.907);--color-green-50:oklch(98.2% .018 155.826);--color-green-100:oklch(96.2% .044 156.743);--color-green-200:oklch(92.5% .084 155.995);--color-green-500:oklch(72.3% .219 149.579);--color-green-600:oklch(62.7% .194 149.214);--color-green-700:oklch(52.7% .154 150.069);--color-green-800:oklch(44.8% .119 151.328);--color-blue-50:oklch(97% .014 254.604);--color-blue-100:oklch(93.2% .032 255.585);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-purple-50:oklch(97.7% .014 308.299);--color-purple-600:oklch(55.8% .288 302.321);--color-slate-100:oklch(96.8% .007 247.896);--color-slate-200:oklch(92.9% .013 255.508);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-600:oklch(44.6% .03 256.802);--color-neutral-50:oklch(98.5% 0 0);--color-neutral-100:oklch(97% 0 0);--color-neutral-200:oklch(92.2% 0 0);--color-neutral-300:oklch(87% 0 0);--color-neutral-400:oklch(70.8% 0 0);--color-neutral-500:oklch(55.6% 0 0);--color-neutral-600:oklch(43.9% 0 0);--color-neutral-700:oklch(37.1% 0 0);--color-neutral-800:oklch(26.9% 0 0);--color-neutral-900:oklch(20.5% 0 0);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-md:28rem;--container-lg:32rem;--container-2xl:42rem;--container-3xl:48rem;--container-4xl:56rem;--container-7xl:80rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--text-3xl:1.875rem;--text-3xl--line-height:1.2;--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5/2.25);--text-5xl:3rem;--text-5xl--line-height:1;--text-6xl:3.75rem;--text-6xl--line-height:1;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-wider:.05em;--leading-tight:1.25;--leading-relaxed:1.625;--radius-lg:.5rem;--radius-xl:.75rem;--drop-shadow-md:0 3px 3px #0000001f;--ease-out:cubic-bezier(0,0,.2,1);--animate-spin:spin 1s linear infinite;--animate-bounce:bounce 1s infinite;--blur-sm:8px;--blur-3xl:64px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::-moz-placeholder{opacity:1}::placeholder{opacity:1}@supports (not (-webkit-appearance:-apple-pay-button)) or (contain-intrinsic-size:1px){::-moz-placeholder{color:currentColor}::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::-moz-placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing)*0)}.-top-32{top:calc(var(--spacing)*-32)}.top-0{top:calc(var(--spacing)*0)}.top-1\/3{top:33.3333%}.top-1\/4{top:25%}.top-2{top:calc(var(--spacing)*2)}.top-4{top:calc(var(--spacing)*4)}.top-8{top:calc(var(--spacing)*8)}.top-16{top:calc(var(--spacing)*16)}.top-20{top:calc(var(--spacing)*20)}.top-full{top:100%}.-right-24{right:calc(var(--spacing)*-24)}.right-0{right:calc(var(--spacing)*0)}.right-1\/4{right:25%}.right-4{right:calc(var(--spacing)*4)}.right-16{right:calc(var(--spacing)*16)}.right-20{right:calc(var(--spacing)*20)}.-bottom-6{bottom:calc(var(--spacing)*-6)}.-bottom-24{bottom:calc(var(--spacing)*-24)}.bottom-1\/2{bottom:50%}.bottom-1\/3{bottom:33.3333%}.bottom-8{bottom:calc(var(--spacing)*8)}.bottom-12{bottom:calc(var(--spacing)*12)}.bottom-full{bottom:100%}.-left-24{left:calc(var(--spacing)*-24)}.left-1\/2{left:50%}.left-1\/4{left:25%}.left-4{left:calc(var(--spacing)*4)}.left-12{left:calc(var(--spacing)*12)}.z-0{z-index:0}.z-10{z-index:10}.z-40{z-index:40}.z-50{z-index:50}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-3{margin-top:calc(var(--spacing)*3)}.mt-4{margin-top:calc(var(--spacing)*4)}.mt-6{margin-top:calc(var(--spacing)*6)}.mt-12{margin-top:calc(var(--spacing)*12)}.mr-1{margin-right:calc(var(--spacing)*1)}.mr-2{margin-right:calc(var(--spacing)*2)}.mr-3{margin-right:calc(var(--spacing)*3)}.mb-1{margin-bottom:calc(var(--spacing)*1)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-6{margin-bottom:calc(var(--spacing)*6)}.mb-8{margin-bottom:calc(var(--spacing)*8)}.mb-10{margin-bottom:calc(var(--spacing)*10)}.mb-12{margin-bottom:calc(var(--spacing)*12)}.mb-16{margin-bottom:calc(var(--spacing)*16)}.ml-1{margin-left:calc(var(--spacing)*1)}.ml-3{margin-left:calc(var(--spacing)*3)}.ml-4{margin-left:calc(var(--spacing)*4)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.h-1{height:calc(var(--spacing)*1)}.h-2{height:calc(var(--spacing)*2)}.h-3{height:calc(var(--spacing)*3)}.h-8{height:calc(var(--spacing)*8)}.h-10{height:calc(var(--spacing)*10)}.h-12{height:calc(var(--spacing)*12)}.h-14{height:calc(var(--spacing)*14)}.h-16{height:calc(var(--spacing)*16)}.h-20{height:calc(var(--spacing)*20)}.h-80{height:calc(var(--spacing)*80)}.h-96{height:calc(var(--spacing)*96)}.h-full{height:100%}.max-h-\[90vh\]{max-height:90vh}.max-h-\[calc\(90vh-120px\)\]{max-height:calc(90vh - 120px)}.min-h-\[90vh\]{min-height:90vh}.min-h-screen{min-height:100vh}.w-1{width:calc(var(--spacing)*1)}.w-2{width:calc(var(--spacing)*2)}.w-3{width:calc(var(--spacing)*3)}.w-6{width:calc(var(--spacing)*6)}.w-8{width:calc(var(--spacing)*8)}.w-10{width:calc(var(--spacing)*10)}.w-12{width:calc(var(--spacing)*12)}.w-14{width:calc(var(--spacing)*14)}.w-16{width:calc(var(--spacing)*16)}.w-64{width:calc(var(--spacing)*64)}.w-80{width:calc(var(--spacing)*80)}.w-96{width:calc(var(--spacing)*96)}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-7xl{max-width:var(--container-7xl)}.max-w-md{max-width:var(--container-md)}.min-w-\[80px\]{min-width:80px}.min-w-\[120px\]{min-width:120px}.min-w-\[300px\]{min-width:300px}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.-translate-x-1\/2{--tw-translate-x:-50%;translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-x-4{--tw-translate-x:calc(var(--spacing)*-4);translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-4{--tw-translate-x:calc(var(--spacing)*4);translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-y-4{--tw-translate-y:calc(var(--spacing)*-4);translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-y-8{--tw-translate-y:calc(var(--spacing)*-8);translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-y-8{--tw-translate-y:calc(var(--spacing)*8);translate:var(--tw-translate-x)var(--tw-translate-y)}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-bounce{animation:var(--animate-bounce)}.animate-spin{animation:var(--animate-spin)}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.resize-none{resize:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}.gap-6{gap:calc(var(--spacing)*6)}.gap-8{gap:calc(var(--spacing)*8)}.gap-12{gap:calc(var(--spacing)*12)}.gap-16{gap:calc(var(--spacing)*16)}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*3)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*3)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*6)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*6)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-8>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*8)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*8)*calc(1 - var(--tw-space-y-reverse)))}.gap-x-8{-moz-column-gap:calc(var(--spacing)*8);column-gap:calc(var(--spacing)*8)}:where(.space-x-0>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing)*0)*var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing)*0)*calc(1 - var(--tw-space-x-reverse)))}:where(.space-x-2>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing)*2)*var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-x-reverse)))}:where(.space-x-3>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing)*3)*var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing)*3)*calc(1 - var(--tw-space-x-reverse)))}:where(.space-x-4>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing)*4)*var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-x-reverse)))}:where(.space-x-6>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing)*6)*var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing)*6)*calc(1 - var(--tw-space-x-reverse)))}.gap-y-3{row-gap:calc(var(--spacing)*3)}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px*var(--tw-divide-y-reverse));border-bottom-width:calc(1px*calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-neutral-200>:not(:last-child)){border-color:var(--color-neutral-200)}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-4{border-style:var(--tw-border-style);border-width:4px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l-0{border-left-style:var(--tw-border-style);border-left-width:0}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-blue-500{border-color:var(--color-blue-500)}.border-green-200{border-color:var(--color-green-200)}.border-green-500{border-color:var(--color-green-500)}.border-neutral-100{border-color:var(--color-neutral-100)}.border-neutral-200{border-color:var(--color-neutral-200)}.border-neutral-300{border-color:var(--color-neutral-300)}.border-neutral-700{border-color:var(--color-neutral-700)}.border-red-200{border-color:var(--color-red-200)}.border-red-500{border-color:var(--color-red-500)}.border-transparent{border-color:#0000}.border-white{border-color:var(--color-white)}.border-yellow-400{border-color:var(--color-yellow-400)}.bg-black{background-color:var(--color-black)}.bg-blue-50{background-color:var(--color-blue-50)}.bg-blue-100{background-color:var(--color-blue-100)}.bg-blue-500\/10{background-color:#3080ff1a}@supports (color:color-mix(in lab,red,red)){.bg-blue-500\/10{background-color:color-mix(in oklab,var(--color-blue-500)10%,transparent)}}.bg-blue-600{background-color:var(--color-blue-600)}.bg-gray-200{background-color:var(--color-gray-200)}.bg-gray-600{background-color:var(--color-gray-600)}.bg-green-50{background-color:var(--color-green-50)}.bg-green-100{background-color:var(--color-green-100)}.bg-green-500{background-color:var(--color-green-500)}.bg-neutral-50{background-color:var(--color-neutral-50)}.bg-neutral-100{background-color:var(--color-neutral-100)}.bg-neutral-200{background-color:var(--color-neutral-200)}.bg-neutral-400{background-color:var(--color-neutral-400)}.bg-neutral-500{background-color:var(--color-neutral-500)}.bg-neutral-600{background-color:var(--color-neutral-600)}.bg-neutral-700{background-color:var(--color-neutral-700)}.bg-neutral-800{background-color:var(--color-neutral-800)}.bg-orange-50{background-color:var(--color-orange-50)}.bg-purple-50{background-color:var(--color-purple-50)}.bg-red-50{background-color:var(--color-red-50)}.bg-red-600{background-color:var(--color-red-600)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-white\/80{background-color:#fffc}@supports (color:color-mix(in lab,red,red)){.bg-white\/80{background-color:color-mix(in oklab,var(--color-white)80%,transparent)}}.bg-white\/95{background-color:#fffffff2}@supports (color:color-mix(in lab,red,red)){.bg-white\/95{background-color:color-mix(in oklab,var(--color-white)95%,transparent)}}.bg-yellow-50{background-color:var(--color-yellow-50)}.bg-yellow-100{background-color:var(--color-yellow-100)}.bg-yellow-300{background-color:var(--color-yellow-300)}.bg-yellow-500{background-color:var(--color-yellow-500)}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-r{--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-neutral-800{--tw-gradient-from:var(--color-neutral-800);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-slate-100{--tw-gradient-from:var(--color-slate-100);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-neutral-700{--tw-gradient-to:var(--color-neutral-700);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-slate-200{--tw-gradient-to:var(--color-slate-200);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.object-contain{-o-object-fit:contain;object-fit:contain}.p-2{padding:calc(var(--spacing)*2)}.p-3{padding:calc(var(--spacing)*3)}.p-4{padding:calc(var(--spacing)*4)}.p-6{padding:calc(var(--spacing)*6)}.p-8{padding:calc(var(--spacing)*8)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-5{padding-inline:calc(var(--spacing)*5)}.px-6{padding-inline:calc(var(--spacing)*6)}.px-8{padding-inline:calc(var(--spacing)*8)}.py-1{padding-block:calc(var(--spacing)*1)}.py-1\.5{padding-block:calc(var(--spacing)*1.5)}.py-2{padding-block:calc(var(--spacing)*2)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.py-6{padding-block:calc(var(--spacing)*6)}.py-8{padding-block:calc(var(--spacing)*8)}.py-12{padding-block:calc(var(--spacing)*12)}.py-16{padding-block:calc(var(--spacing)*16)}.py-20{padding-block:calc(var(--spacing)*20)}.pt-2{padding-top:calc(var(--spacing)*2)}.pt-6{padding-top:calc(var(--spacing)*6)}.pt-8{padding-top:calc(var(--spacing)*8)}.text-center{text-align:center}.text-left{text-align:left}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-blue-600{color:var(--color-blue-600)}.text-blue-700{color:var(--color-blue-700)}.text-current{color:currentColor}.text-gray-600{color:var(--color-gray-600)}.text-green-500{color:var(--color-green-500)}.text-green-600{color:var(--color-green-600)}.text-green-700{color:var(--color-green-700)}.text-green-800{color:var(--color-green-800)}.text-neutral-300{color:var(--color-neutral-300)}.text-neutral-400{color:var(--color-neutral-400)}.text-neutral-500{color:var(--color-neutral-500)}.text-neutral-600{color:var(--color-neutral-600)}.text-neutral-700{color:var(--color-neutral-700)}.text-neutral-800{color:var(--color-neutral-800)}.text-neutral-900{color:var(--color-neutral-900)}.text-orange-600{color:var(--color-orange-600)}.text-purple-600{color:var(--color-purple-600)}.text-red-500{color:var(--color-red-500)}.text-red-600{color:var(--color-red-600)}.text-red-700{color:var(--color-red-700)}.text-transparent{color:#0000}.text-white{color:var(--color-white)}.text-yellow-600{color:var(--color-yellow-600)}.text-yellow-800{color:var(--color-yellow-800)}.uppercase{text-transform:uppercase}.opacity-10{opacity:.1}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.opacity-80{opacity:.8}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-neutral-200{--tw-ring-color:var(--color-neutral-200)}.blur-3xl{--tw-blur:blur(var(--blur-3xl));filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.drop-shadow-md{--tw-drop-shadow-size:drop-shadow(0 3px 3px var(--tw-drop-shadow-color,#0000001f));--tw-drop-shadow:drop-shadow(var(--drop-shadow-md));filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.backdrop-blur{--tw-backdrop-blur:blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,visibility,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.group-open\:rotate-180:is(:where(.group):is([open],:popover-open,:open) *){rotate:180deg}.open\:shadow-md:is([open],:popover-open,:open){--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}@media (hover:hover){.hover\:-translate-y-1:hover{--tw-translate-y:calc(var(--spacing)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.hover\:scale-105:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x)var(--tw-scale-y)}.hover\:border-neutral-300:hover{border-color:var(--color-neutral-300)}.hover\:border-neutral-400:hover{border-color:var(--color-neutral-400)}.hover\:bg-gray-300:hover{background-color:var(--color-gray-300)}.hover\:bg-neutral-50:hover{background-color:var(--color-neutral-50)}.hover\:bg-neutral-100:hover{background-color:var(--color-neutral-100)}.hover\:bg-neutral-600:hover{background-color:var(--color-neutral-600)}.hover\:bg-neutral-700:hover{background-color:var(--color-neutral-700)}.hover\:bg-red-50:hover{background-color:var(--color-red-50)}.hover\:bg-red-700:hover{background-color:var(--color-red-700)}.hover\:text-neutral-600:hover{color:var(--color-neutral-600)}.hover\:text-neutral-700:hover{color:var(--color-neutral-700)}.hover\:text-neutral-900:hover{color:var(--color-neutral-900)}.hover\:text-white:hover{color:var(--color-white)}.hover\:opacity-90:hover{opacity:.9}.hover\:shadow-lg:hover{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-xl:hover{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}.focus\:border-transparent:focus{border-color:#0000}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-neutral-500:focus{--tw-ring-color:var(--color-neutral-500)}.focus\:ring-offset-1:focus{--tw-ring-offset-width:1px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.disabled\:opacity-50:disabled{opacity:.5}@supports ((-webkit-backdrop-filter: var(--tw)) or (backdrop-filter: var(--tw))){.supports-\[backdrop-filter\]\:bg-white\/70{background-color:#ffffffb3}@supports (color:color-mix(in lab,red,red)){.supports-\[backdrop-filter\]\:bg-white\/70{background-color:color-mix(in oklab,var(--color-white)70%,transparent)}}}@media (min-width:40rem){.sm\:mb-0{margin-bottom:calc(var(--spacing)*0)}.sm\:block{display:block}.sm\:w-\[90\%\]{width:90%}.sm\:max-w-lg{max-width:var(--container-lg)}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:px-6{padding-inline:calc(var(--spacing)*6)}.sm\:px-8{padding-inline:calc(var(--spacing)*8)}.sm\:py-8{padding-block:calc(var(--spacing)*8)}.sm\:py-10{padding-block:calc(var(--spacing)*10)}}@media (min-width:48rem){.md\:flex{display:flex}.md\:h-\[26rem\]{height:26rem}.md\:h-\[500px\]{height:500px}.md\:w-\[26rem\]{width:26rem}.md\:w-full{width:100%}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:64rem){.lg\:h-\[30rem\]{height:30rem}.lg\:w-\[30rem\]{width:30rem}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.lg\:items-center{align-items:center}.lg\:justify-between{justify-content:space-between}.lg\:px-8{padding-inline:calc(var(--spacing)*8)}.lg\:text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.lg\:text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}}@media (min-width:80rem){.xl\:h-\[32rem\]{height:32rem}.xl\:w-\[32rem\]{width:32rem}}}input::-moz-placeholder,textarea::-moz-placeholder{color:#6b7280!important}input::placeholder,textarea::placeholder{color:#6b7280!important}input[type=text],input[type=email],input[type=password],input[type=number],textarea{color:#000!important}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@keyframes spin{to{transform:rotate(360deg)}}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-25%)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:none}}
