.customer-master{background-color:#f5f5f5;border-radius:4px;box-shadow:0 1px 3px #00000014;flex-direction:column;min-height:100vh;padding:1rem}.customer-master,.main-content{display:flex;gap:1rem;width:100%}.messages-container{display:flex;flex-direction:column;gap:.5rem;width:100%}.form-and-list-container{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:.45fr .65fr;width:100%}.customer-master h1{color:#2c3e50;font-size:1.1rem;margin-bottom:.4rem;padding-bottom:.3rem}.customer-master h2{color:#2c3e50;font-size:.95rem;margin-bottom:.4rem;margin-top:.5rem}.error-message{background-color:#fee;border:1px solid #fcc;color:#c33}.error-message,.success-message{font-size:.8rem;margin-bottom:0;padding:.6rem .8rem}.success-message{background-color:#efe;border:1px solid #cfc;color:#3c3}.warning-message{align-items:center;background-color:#fff3cd;border:1px solid #ffeeba;border-radius:4px;color:#856404;display:flex;font-size:.8rem;justify-content:space-between;margin-bottom:.4rem;padding:.3rem .5rem}.customer-form{background-color:#fff;border:1px solid #e0e0e0;border-radius:4px;display:flex;flex-direction:column;gap:.5rem;padding:1rem}.form-group{align-items:flex-start;display:flex!important;flex-direction:row!important;gap:.5rem;margin-bottom:.3rem;width:100%}.form-group input,.form-group select{align-self:center}.customer-fields-section,.vehicle-fields-section{display:flex;flex-direction:column;gap:.3rem;width:100%}.vehicle-fields-section{border-top:1px solid #eee;margin-top:.2rem;padding-top:.5rem}.spacing-rows{height:0;margin-bottom:.3rem;width:100%}.form-group label{color:#2c3e50;flex-shrink:0;font-size:.7rem;margin-bottom:0;text-align:left;white-space:nowrap;width:80px}.form-group input[type=checkbox]{cursor:pointer;margin-right:.3rem}.form-group input[type=checkbox]+label{display:inline;margin-bottom:0;min-width:auto}.form-group input,.form-group select,.form-group textarea{border:1px solid #ccc;border-radius:3px;flex:0.9 1;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.8rem;height:32px;margin-left:2.1rem;padding:.4rem;text-align:left;transition:border-color .3s}.form-group textarea{height:auto;line-height:1.4;min-height:48px;resize:none;text-align:left}.form-group select{height:32px;padding:.35rem .4rem}.form-group select[name=Gender]{flex:0.45 1}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#3498db;box-shadow:0 0 5px #3498db4d;outline:none}.form-actions{display:flex;gap:.4rem;margin-bottom:0;margin-top:.5rem}.customer-form button[type=submit]{background-color:#27ae60;border:none;border-radius:3px;color:#fff;cursor:pointer;flex:1 1;font-size:.8rem;padding:.4rem 1rem;transition:background-color .3s}.customer-form button[type=submit]:hover{background-color:#229954}.customer-form button[type=submit]:disabled{background-color:#95a5a6;cursor:not-allowed}.cancel-btn{background-color:#e74c3c;border:none;border-radius:3px;color:#fff;cursor:pointer;flex:1 1;font-size:.8rem;padding:.4rem 1rem;transition:background-color .3s}.cancel-btn:hover{background-color:#c0392b}.recent-customer-section{background-color:#fff;border:1px solid #e0e0e0;border-radius:4px;display:flex;flex-direction:column;gap:.5rem;grid-column:2;grid-row:1;max-height:calc(100vh - 2rem);overflow-y:auto;padding:1rem;position:-webkit-sticky;position:sticky;top:1rem}.recent-customer-section h3{border-bottom:2px solid #3498db;color:#2c3e50;font-size:.95rem;margin:0 0 .5rem;padding-bottom:.4rem}.customer-list-simple{display:flex;flex-direction:column;gap:.4rem;max-height:none;overflow-y:auto}.customer-item{align-items:center;background-color:#fff;border:1px solid #ddd;border-radius:3px;color:#2c3e50;display:flex;flex-direction:row;font-size:.75rem;gap:.3rem;justify-content:space-between;line-height:1.4;padding:.5rem}.customer-item:nth-child(2n){background-color:#f6f6f6}.customer-item-content{word-wrap:break-word;flex:1 1;min-width:0}.customer-item-actions{align-items:center;display:flex;flex-shrink:0;gap:.2rem}.btn-delete,.btn-edit{align-items:center;border:none;border-radius:2px;cursor:pointer;display:flex;font-size:.6rem;height:20px;justify-content:center;line-height:1;min-width:28px;padding:.15rem .3rem;transition:background-color .3s;white-space:nowrap}.btn-edit{background-color:#3498db;color:#fff}.btn-edit:hover{background-color:#2980b9}.btn-delete{background-color:#e74c3c;color:#fff}.btn-delete:hover{background-color:#c0392b}.customer-item-number{color:#333;font-weight:600}.customer-item-name{font-weight:600}.customer-item-details{color:#666;font-size:.7rem}.customers-list{background-color:#fff;border-radius:8px;margin-top:.4rem;padding:.4rem;width:100%}.customers-list table{border-collapse:collapse;margin-top:.3rem;width:100%}.list-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.3rem}.list-header h2{font-size:.9rem;margin:0}.refresh-btn{background-color:#3498db;border:none;border-radius:3px;color:#fff;cursor:pointer;font-size:.7rem;padding:.25rem .6rem;transition:background-color .3s}.refresh-btn:hover{background-color:#2980b9}.refresh-btn:disabled{background-color:#95a5a6;cursor:not-allowed}.customers-list table thead{background-color:#34495e;color:#fff}.customers-list table td,.customers-list table th{border-bottom:1px solid #ddd;font-size:.7rem;padding:.25rem;text-align:left}.customers-list table tbody tr:hover{background-color:#f5f5f5}.delete-btn,.edit-btn{border:none;border-radius:3px;cursor:pointer;font-size:.75rem;margin-right:.3rem;padding:.3rem .6rem;transition:opacity .3s}.edit-btn{background-color:#3498db;color:#fff}.edit-btn:hover{opacity:.8}.delete-btn{background-color:#e74c3c;color:#fff}.delete-btn:hover{opacity:.8}.vehicles-list{background-color:#f0f0f0;border-radius:5px;margin-bottom:1rem;padding:.5rem}.vehicles-list h3{color:#2c3e50;font-size:.95rem;margin-bottom:.5rem;margin-top:0}.vehicles-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.vehicle-card{background-color:#fff;border:1px solid #ddd;border-radius:5px;display:flex;flex-direction:column;justify-content:space-between;padding:.5rem}.vehicle-info{margin-bottom:.5rem}.vehicle-info p{color:#2c3e50;font-size:.75rem;margin:.2rem 0}.vehicle-actions,.vehicle-form-actions{display:flex;gap:.3rem}.vehicle-form-actions{margin-top:.5rem}.save-vehicle-btn{background-color:#27ae60;border:none;border-radius:3px;color:#fff;cursor:pointer;font-size:.8rem;padding:.35rem .8rem;transition:background-color .3s}.save-vehicle-btn:hover{background-color:#229954}.save-vehicle-btn:disabled{background-color:#95a5a6;cursor:not-allowed}.tab-btn:disabled{cursor:not-allowed;opacity:.5}@media (max-width:768px){.customer-form{grid-template-columns:repeat(2,1fr)}.customers-list table{font-size:.75rem}.customers-list table td,.customers-list table th{padding:.2rem}}.payment-container{background-color:#f5f5f5;margin:0 auto;max-width:1400px;min-height:100vh;padding:20px}.payment-header-row{align-items:center;display:flex;flex-wrap:wrap;gap:20px;margin-bottom:20px}.payment-container h2{color:#333;flex:0 0 auto;font-size:28px;font-weight:600;margin:0;white-space:nowrap}.payment-summary{display:flex;flex:1 1 auto;flex-wrap:wrap;gap:9px}.summary-card{background:#fff;border-left:3px solid #ccc;border-radius:5px;box-shadow:0 2px 4px #0000001a;cursor:pointer;flex:1 1 150px;min-width:150px;padding:7px;text-align:center;transition:transform .2s}.summary-card:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.summary-card h3{color:#666;font-size:8px;letter-spacing:.3px;margin:0 0 4px;text-transform:uppercase}.summary-card .count{color:#333;font-size:10px;font-weight:700;margin:4px 0}.summary-card .amount{color:#555;font-size:7px;font-weight:600;margin:0}.summary-card.paid{background:linear-gradient(135deg,#f0fdf4,#fff);border-left-color:#27ae60}.summary-card.paid .count,.summary-card.paid h3{color:#27ae60}.summary-card.unpaid{background:linear-gradient(135deg,#fdf0f0,#fff);border-left-color:#e74c3c}.summary-card.unpaid .count,.summary-card.unpaid h3{color:#e74c3c}.summary-card.partial{background:linear-gradient(135deg,#fffbf0,#fff);border-left-color:#f39c12}.summary-card.partial .count,.summary-card.partial h3{color:#f39c12}.summary-card.total{background:linear-gradient(135deg,#f0f8ff,#fff);border-left-color:#3498db}.summary-card.selected{outline:2px solid #2f80ed;outline-offset:1px}.summary-card.total h3{color:#3498db}.summary-card.total .amount{color:#3498db;font-size:8px}.alert{animation:slideIn .3s ease-out;border-radius:4px;font-size:14px;margin-bottom:20px;padding:12px 16px}.alert-error{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.alert-success{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.loading{color:#666;font-size:16px;padding:40px 20px;text-align:center}.invoices-section{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:20px}.invoices-section h3{color:#333;font-size:18px;margin-bottom:20px;margin-top:0}.payment-filters{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(4,minmax(180px,1fr));margin-bottom:14px}.payment-filters input{border:1px solid #d9d9d9;border-radius:4px;font-size:12px;height:34px;padding:6px 10px}.payment-filter-date{display:flex;flex-direction:column;gap:4px}.payment-filter-date label{color:#555;font-size:11px}.payment-filter-actions{align-items:end;display:flex}.clear-filters-button{background:#fff;border:1px solid #d0d7de;border-radius:4px;color:#333;cursor:pointer;font-size:12px;height:34px;padding:0 12px}.clear-filters-button:hover{background:#f4f6f8}.no-data{color:#999;font-size:16px;padding:40px 20px;text-align:center}.table-responsive{overflow-x:auto}.payment-table{border-collapse:collapse;font-size:11px;width:100%}.payment-table thead{background-color:#f8f9fa;border-bottom:2px solid #dee2e6}.payment-table th{border-right:1px solid #dee2e6;color:#333;font-weight:600;padding:4px 10px;text-align:left;white-space:nowrap}.payment-table th:last-child{border-right:none}.payment-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.payment-table th.sortable:hover{color:#1f5fbf}.amount-header{text-align:right}.action-header{text-align:center}.payment-filter-row th{background:#fff;padding:2px 6px}.payment-filter-row input,.payment-filter-row select{border:1px solid #ddd;border-radius:3px;box-sizing:border-box;font-size:11px;font-weight:400;padding:4px 6px;width:100%}.payment-table tbody tr{border-bottom:1px solid #dee2e6;transition:background-color .2s}.payment-table tbody tr:nth-child(2n):not(:hover){background-color:#f6f6f6}.payment-table tbody tr:hover{background-color:#f8f9fa}.payment-table td{border-right:1px solid #eee;color:#555;padding:4px 10px}.payment-table td:last-child{border-right:none}.payment-table .invoice-number{color:#3498db;font-weight:600}.payment-table .amount-cell{color:#27ae60;font-weight:600;text-align:right}.action-cell{text-align:center}.pay-button{background-color:#27ae60;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:4px 16px;transition:background-color .3s,transform .1s;white-space:nowrap}.pay-button:hover{background-color:#229954;transform:scale(1.05)}.pay-button:active{transform:scale(.95)}.pay-button:disabled{background-color:#95a5a6;cursor:not-allowed}@media (max-width:768px){.payment-filters{grid-template-columns:repeat(2,minmax(180px,1fr))}.payment-header-row{align-items:stretch;flex-direction:column}.payment-table{font-size:12px}.payment-table td,.payment-table th{padding:4px 10px}.pay-button{font-size:12px;padding:3px 12px}}@media (max-width:480px){.payment-filters{grid-template-columns:1fr}.payment-container{padding:10px}.summary-card{flex-basis:100%}.summary-card.total{grid-column:span 1}.table-responsive{overflow-x:scroll}.payment-table{font-size:11px;min-width:600px}.payment-table td,.payment-table th{padding:3px 8px}}.login-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;font-family:Arial,sans-serif;justify-content:center;min-height:100vh}.login-box{animation:slideIn .5s ease-out;background:#fff;border-radius:10px;box-shadow:0 10px 25px #0003;max-width:400px;padding:40px;width:100%}.login-header{margin-bottom:30px;text-align:center}.login-header h1{color:#333;font-size:28px;font-weight:600;margin:0}.login-header p{color:#666;font-size:14px;margin:8px 0 0}.login-form{display:flex;flex-direction:column;gap:20px}.form-group label{font-size:14px;font-weight:500;margin-bottom:8px}.form-group input{border-radius:5px;font-family:inherit;font-size:14px;padding:12px 15px}.form-group input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.error-message{word-wrap:break-word;border-left:4px solid #d32f2f;border-radius:5px;color:#d32f2f;font-family:Courier New,monospace;font-size:14px;line-height:1.4;margin:0;padding:12px;white-space:pre-wrap}.login-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-top:10px;padding:12px;transition:all .3s ease}.login-button:hover:not(:disabled){box-shadow:0 5px 15px #667eea66;transform:translateY(-2px)}.login-button:active:not(:disabled){transform:translateY(0)}.login-button:disabled{cursor:not-allowed;opacity:.7}.login-footer{border-top:1px solid #eee;color:#666;font-size:13px;margin-top:30px;padding-top:20px;text-align:center}.login-footer p{margin:5px 0}.demo-cred{background-color:#f5f5f5;border-radius:3px;color:#888;display:inline-block;font-family:Courier New,monospace;font-size:12px;margin-top:3px;padding:4px 8px}.forgot-password-link{margin-top:8px;text-align:center}.forgot-password-link a{color:#667eea;font-size:13px;font-weight:500;text-decoration:none;transition:color .3s ease}.forgot-password-link a:hover{color:#764ba2;text-decoration:underline}.password-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;justify-content:center;min-height:100vh;padding:20px}.password-box{animation:slideIn .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;max-width:500px;padding:40px;width:100%}@keyframes slideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.password-header{margin-bottom:30px;text-align:center}.password-header h1{color:#2196f3;font-size:24px;font-weight:700;margin:0 0 10px}.password-header p{color:#666;font-size:14px;margin:0}.password-form{display:flex;flex-direction:column;gap:16px}.form-description{color:#666;font-size:13px;line-height:1.5;margin:0 0 15px;text-align:center}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{color:#333;font-size:12px;font-weight:600}.form-group input{border:1px solid #ddd;border-radius:4px;font-size:13px;padding:10px 12px;transition:all .3s ease}.form-group input:focus{border-color:#2196f3;box-shadow:0 0 0 3px #2196f31a;outline:none}.form-group input:disabled{background-color:#f5f5f5;color:#999;cursor:not-allowed}.password-input-wrapper{align-items:center;display:flex;position:relative}.password-input-wrapper input{flex:1 1;width:100%}.toggle-password{align-items:center;background:none;border:none;cursor:pointer;display:flex;font-size:16px;justify-content:center;padding:8px;position:absolute;right:12px}.toggle-password:hover{opacity:.7}.password-strength{margin-top:8px}.strength-bar{background-color:#e0e0e0;border-radius:2px;height:4px;margin-bottom:4px;overflow:hidden}.strength-fill{height:100%;transition:width .3s ease,background-color .3s ease}.password-strength p{font-size:12px;font-weight:600;margin:0}.password-requirements{background-color:#f5f5f5;border-radius:4px;margin-top:8px;padding:12px}.password-requirements p{color:#333;font-size:12px;font-weight:600;margin:0 0 8px}.password-requirements ul{list-style:none;margin:0;padding:0}.password-requirements li{font-size:12px;padding:4px 0;transition:color .3s ease}.form-divider{color:#999;font-size:12px;font-weight:600;margin:8px 0;text-align:center}.form-hint{color:#999;display:block;font-size:11px;font-style:italic;margin-top:4px}.otp-display{background-color:#e3f2fd;border:1px solid #90caf9;border-radius:4px;margin:12px 0;padding:12px;text-align:center}.otp-display p{color:#1976d2;font-size:12px;margin:0}.otp-display strong{color:#1565c0;font-weight:700}.submit-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;margin-top:8px;padding:12px;transition:all .3s ease}.submit-button:hover:not(:disabled){box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.submit-button:active:not(:disabled){transform:translateY(0)}.submit-button:disabled{cursor:not-allowed;opacity:.5}.secondary-button{background-color:#f5f5f5;border:1px solid #ddd;border-radius:4px;color:#333;cursor:pointer;font-size:13px;font-weight:600;padding:10px;transition:all .3s ease}.secondary-button:hover:not(:disabled){background-color:#e0e0e0}.secondary-button:disabled{cursor:not-allowed;opacity:.5}.error-message,.success-message{border-radius:4px;font-size:12px;padding:10px 12px}.password-footer{border-top:1px solid #e0e0e0;margin-top:20px;padding-top:20px;text-align:center}.password-footer p{color:#666;font-size:13px;margin:0}.link{color:#2196f3;font-weight:600;text-decoration:none;transition:color .3s ease}.link:hover{color:#1976d2;text-decoration:underline}.employee-info-display{background-color:#f5f5f5;border-radius:4px;margin-bottom:16px;padding:12px}.employee-info-display p{color:#333;display:flex;font-size:12px;justify-content:space-between;margin:6px 0}.employee-info-display strong{color:#2196f3;min-width:100px}.error-box{background-color:#ffebee;border:1px solid #c62828;border-radius:4px;padding:20px;text-align:center}.error-box p{color:#c62828;font-size:14px;margin:0 0 15px}.loading-text{color:#999;font-size:14px;padding:40px 20px;text-align:center}@media (max-width:600px){.password-box{padding:24px}.password-header h1{font-size:20px}.form-group label{font-size:11px}.form-group input{font-size:12px}.password-requirements{font-size:11px}}.resp-tab{padding:4px 0 20px}.resp-help{color:#555;font-size:13px;margin:0 0 12px}.resp-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:12px}.resp-toolbar select{border:1px solid #ccc;border-radius:6px;padding:6px 10px}.resp-btn{background:#fff;border:1px solid #ccc;border-radius:6px;color:#333;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px}.resp-btn.primary{background:#1976d2;border-color:#1976d2;color:#fff}.resp-btn:disabled{cursor:not-allowed;opacity:.55}.resp-table-wrap{background:#fff;border:1px solid #e0e0e0;border-radius:8px;overflow-x:auto}.resp-table{border-collapse:collapse;font-size:13.5px;width:100%}.resp-table th{background:#f5f5f5;border-bottom:2px solid #e0e0e0;padding:9px 10px;text-align:left;white-space:nowrap}.resp-table td{border-bottom:1px solid #eee;padding:7px 10px}.resp-table .resp-col{text-align:center}.resp-col-all{font-size:11px;font-weight:400;margin-top:3px}.resp-col-all button{background:none;border:none;color:#1976d2;cursor:pointer;font-size:11px;padding:0 3px}.resp-empty{color:#999;padding:20px;text-align:center}.sm-tab{padding:4px 0 20px}.sm-tab .sm-help{color:#555;font-size:13px;margin:0 0 12px;max-width:760px;text-align:left}.sm-toolbar{align-items:flex-end;display:flex;flex-wrap:wrap;gap:16px;margin-bottom:12px}.sm-field{color:#555;display:flex;flex-direction:column;font-size:12px;font-weight:600;gap:3px;position:relative}.sm-field input[type=search]{border:1px solid #ccc;border-radius:6px;font-size:13px;min-width:220px;padding:7px 10px}.sm-actions{display:flex;gap:8px;margin-left:auto}.sm-btn{background:#fff;border:1px solid #ccc;border-radius:6px;color:#333;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px}.sm-btn.primary{background:#1976d2;border-color:#1976d2;color:#fff}.sm-btn:disabled{cursor:not-allowed;opacity:.55}.sm-multiselect-btn{align-items:center;background:#fff;border:1px solid #ccc;border-radius:6px;color:#333;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:8px;justify-content:space-between;min-width:170px;padding:7px 10px;text-align:left}.sm-multiselect-btn:hover{border-color:#999}.sm-caret{color:#666;font-size:11px}.sm-multiselect-menu{background:#fff;border:1px solid #ddd;border-radius:4px;box-shadow:0 4px 14px #00000026;left:0;margin-top:4px;max-height:280px;min-width:220px;overflow-y:auto;padding:6px 0;position:absolute;top:100%;z-index:40}.sm-multiselect-actions{border-bottom:1px solid #eee;display:flex;gap:14px;margin-bottom:4px;padding:4px 12px 8px}.sm-multiselect-actions button{background:none;border:none;color:#1976d2;cursor:pointer;font-size:12px;font-weight:600;padding:0}.sm-multiselect-option{align-items:center;color:#333;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:8px;padding:6px 12px}.sm-multiselect-option:hover{background:#f1f6fc}.sm-table-wrap{background:#fff;border:1px solid #e0e0e0;border-radius:8px;overflow-x:auto}.sm-table{border-collapse:collapse;font-size:13.5px;width:100%}.sm-table th{background:#f5f5f5;border-bottom:2px solid #e0e0e0;padding:9px 12px;text-align:left;vertical-align:bottom}.sm-table td{border-bottom:1px solid #eee;padding:10px 12px;vertical-align:top}.sm-setting-col{max-width:420px;min-width:300px}.sm-value-col{min-width:140px;white-space:nowrap}.sm-default-col{border-right:2px solid #e0e0e0}.sm-col-note{color:#777;font-size:11px;font-weight:400;margin-top:2px;max-width:160px;white-space:normal}.sm-setting-title{color:#222;font-weight:600}.sm-setting-desc{color:#666;font-size:12px;line-height:1.4;margin-top:3px}.sm-bulk{align-items:center;color:#777;display:flex;flex-wrap:wrap;font-size:11.5px;gap:8px;margin-top:8px}.sm-bulk button{background:none;border:none;color:#1976d2;cursor:pointer;font-size:11.5px;font-weight:600;padding:0}.sm-switch{align-items:center;cursor:pointer;display:inline-flex;gap:7px}.sm-inherit .sm-switch span{color:#999}.sm-override{background:#eef5fd}.sm-override .sm-switch span{color:#0d47a1;font-weight:600}.sm-changed{background:#fff8e1;box-shadow:inset 3px 0 0 #f9a825}.sm-reset{background:none;border:1px solid #c5d6ea;border-radius:4px;color:#1976d2;cursor:pointer;font-size:13px;line-height:1;margin-left:8px;padding:2px 6px}.sm-reset:hover{background:#dfeaf7}.sm-empty{color:#999;padding:20px;text-align:center}.tjs{background:#fff;border:1px solid #d5d9e0;border-radius:6px;margin:24px 0;max-width:640px;padding:16px 18px}.tjs h3{font-size:16px;margin:0 0 6px}.tjs-note{color:#555;font-size:12.5px;line-height:1.4;margin:0 0 12px}.tjs-msg{border-left:4px solid;border-radius:4px;font-size:13px;margin-bottom:10px;padding:7px 10px}.tjs-msg.ok{background:#e6f4ea;border-color:#2e9d4b;color:#1b5e2c}.tjs-msg.error{background:#fdecea;border-color:#d93025;color:#8a1c14}.tjs-table{border-collapse:collapse;width:100%}.tjs-table th{border-bottom:1px solid #dde1e7;color:#555;font-size:11px;padding:4px 6px;text-align:left;text-transform:uppercase}.tjs-table td{border-bottom:1px solid #eef0f3;padding:4px 6px}.tjs-table td:first-child input{border:1px solid #c4c9d1;border-radius:4px;font-size:13px;padding:5px 8px;width:100%}.tjs-table td:last-child{text-align:center;width:80px}.tjs-table tr.off td:first-child input{background:#f6f7f9;color:#888}.tjs-add{display:flex;gap:8px;margin-top:12px}.tjs-add input{border:1px solid #c4c9d1;border-radius:4px;flex:1 1;font-size:13px;padding:6px 9px}.tjs-add button{background:#1f5fae;border:1px solid #1f5fae;border-radius:4px;color:#fff;cursor:pointer;font-size:13px;padding:6px 16px}.tjs-add button:disabled{cursor:not-allowed;opacity:.5}.tjs-scope{display:block;font-size:13px;font-weight:600;margin-bottom:12px}.tjs-scope select{border:1px solid #c4c9d1;border-radius:4px;font-size:13px;margin-left:4px;padding:5px 8px}.tjs-shared{font-size:13px}.tjs-own,.tjs-shared small{color:#666;font-size:11px;margin-left:6px}.ip-tool{border-top:2px solid #e0e0e0;margin-top:28px;max-width:980px;padding-top:20px}.ip-tool .ip-title{color:#222;font-size:18px;margin:0 0 4px;text-align:left}.ip-tool .ip-help{color:#555;font-size:13px;margin:0 0 12px;max-width:760px;padding:0;text-align:left}.ip-lookup{align-items:flex-end;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:10px}.ip-field{color:#555;display:flex;flex-direction:column;font-size:12px;font-weight:600;gap:3px}.ip-field input{border:1px solid #ccc;border-radius:6px;font-size:14px;min-width:200px;padding:8px 10px}.ip-grow{flex:1 1;max-width:360px}.ip-btn{background:#fff;border:1px solid #ccc;border-radius:6px;color:#333;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px}.ip-btn.primary{background:#1976d2;border-color:#1976d2;color:#fff}.ip-btn:disabled{cursor:not-allowed;opacity:.55}.ip-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;margin-top:8px;padding:14px 16px}.ip-item{font-size:15px;margin-bottom:8px}.ip-chip{border-radius:10px;color:#6a5d00;font-size:11px;font-weight:700;margin-left:10px;padding:2px 8px}.ip-chip,.ip-note{background:#fff8e1}.ip-note{border-radius:6px;color:#8a6d00;font-size:12.5px;margin-bottom:8px;padding:6px 10px}.ip-table-wrap{margin-bottom:12px;overflow-x:auto}.ip-table{border-collapse:collapse;font-size:13.5px;width:100%}.ip-table th{background:#f5f5f5;border-bottom:2px solid #e0e0e0;padding:8px 10px;text-align:left;white-space:nowrap}.ip-table td{border-bottom:1px solid #eee;padding:7px 10px}.ip-table .num{text-align:right}.ip-table .ip-master td{background:#eef5fd;font-weight:600}.ip-table .ip-neg{color:#c62828;font-weight:700}.ip-muted{color:#999;font-style:italic}.ip-empty{color:#999;padding:14px;text-align:center}.ip-save{align-items:flex-end;display:flex;flex-wrap:wrap;gap:16px}.ip-keep{align-items:center;color:#333;cursor:pointer;display:flex;font-size:13px;gap:6px;padding-bottom:9px}.ip-hint{color:#666;font-size:12px;margin-top:8px}.ip-warn{background:#ffebee;border-radius:6px;color:#c62828;font-size:13px;font-weight:600;margin-top:10px;padding:8px 10px}@media (max-width:600px){.ip-grow{max-width:none}.ip-field input{min-width:0;width:100%}}.ip-field.ip-grow{position:relative}.ip-dropdown{background:#fff;border:1px solid #ccc;border-radius:6px;box-shadow:0 4px 14px #00000026;left:0;list-style:none;margin:2px 0 0;max-height:320px;overflow-y:auto;padding:4px 0;position:absolute;right:0;top:100%;z-index:30}.ip-dd-item{grid-gap:10px;align-items:baseline;color:#333;cursor:pointer;display:grid;font-size:13px;font-weight:400;gap:10px;grid-template-columns:110px 1fr auto;padding:7px 12px}.ip-dd-item.active,.ip-dd-item:hover{background:#e3f2fd}.ip-dd-part{color:#0d47a1;font-weight:700;white-space:nowrap}.ip-dd-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ip-dd-price{font-feature-settings:"tnum";color:#666;font-variant-numeric:tabular-nums}.ip-dd-note{color:#888;font-size:13px;font-weight:400;padding:8px 12px}.role-management-container{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:0 auto;max-width:1400px;padding:20px}.role-management-header{border-bottom:2px solid #e0e0e0;margin-bottom:30px;padding-bottom:20px}.role-management-header h1{color:#333;font-size:28px;font-weight:600;margin:0 0 10px}.role-management-header p{color:#666;font-size:14px;margin:0}.error-message,.success-message{border-radius:4px;font-size:14px;font-weight:500;margin-bottom:20px;padding:12px 16px}.error-message{background-color:#ffebee;border-left:4px solid #c62828;color:#c62828}.success-message{background-color:#e8f5e9;border-left:4px solid #2e7d32;color:#2e7d32}.role-management-controls{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.btn-reset,.btn-save{border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .3s ease}.btn-save{background-color:#4caf50;color:#fff}.btn-save:hover:not(:disabled){background-color:#45a049;box-shadow:0 2px 8px #4caf504d}.btn-save:disabled{background-color:#ccc;cursor:not-allowed;opacity:.6}.btn-reset{background-color:#f44336;color:#fff}.btn-reset:hover:not(:disabled){background-color:#da190b;box-shadow:0 2px 8px #f443364d}.btn-reset:disabled{background-color:#ccc;cursor:not-allowed;opacity:.6}.employees-table-wrapper{border-radius:4px;box-shadow:0 2px 8px #0000001a;margin-bottom:20px;overflow-x:auto}.employees-table{background-color:#fff;border-collapse:collapse;width:100%}.employees-table thead{background-color:#f5f5f5;border-bottom:2px solid #ddd}.employees-table th{color:#333;font-size:13px;font-weight:600;letter-spacing:.5px;padding:12px 16px;text-align:left;text-transform:uppercase}.employees-table tbody tr{border-bottom:1px solid #eee;transition:background-color .2s ease}.employees-table tbody tr:nth-child(2n){background-color:#f6f6f6}.employees-table tbody tr:hover{background-color:#e8f4f8}.employees-table tbody tr.changed{background-color:#fffacd}.employees-table tbody tr.changed:nth-child(2n){background-color:#fffef5}.employees-table td{color:#333;font-size:14px;padding:12px 16px}.employee-name{color:#1976d2;font-weight:600}.employee-id{color:#666;font-size:13px;font-weight:500}.current-branch,.current-role{color:#555;font-weight:500}.date{color:#999;font-size:13px}.role-badge{border-radius:12px;display:inline-block;font-size:12px;font-weight:600;letter-spacing:.5px;padding:4px 10px;text-transform:uppercase}.role-badge.role-admin{background-color:#ffebee;color:#c62828}.role-badge.role-manager{background-color:#e3f2fd;color:#1565c0}.role-badge.role-employee{background-color:#f3e5f5;color:#6a1b9a}.status-badge{border-radius:12px;display:inline-block;font-size:12px;font-weight:600;padding:4px 10px}.status-badge.active{background-color:#e8f5e9;color:#2e7d32}.status-badge.inactive{background-color:#ffebee;color:#c62828}.branch-assignment select,.role-assignment select{background-color:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:13px;padding:6px 10px;transition:border-color .2s ease}.branch-assignment select:hover,.role-assignment select:hover{border-color:#999}.branch-assignment select:focus,.role-assignment select:focus{border-color:#1976d2;box-shadow:0 0 4px #1976d233;outline:none}.branch-assignment select.changed,.role-assignment select.changed{background-color:#fffacd;border-color:#ff9800;font-weight:600}.change-indicator{color:#ff9800;font-weight:700;margin-left:6px}.role-management-footer{background-color:#f5f5f5;border-radius:4px;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;padding:15px}.role-management-footer p{color:#666;font-size:14px;font-weight:500;margin:0}@media (max-width:768px){.role-management-container{padding:10px}.role-management-header h1{font-size:22px}.employees-table td,.employees-table th{font-size:12px;padding:8px 10px}.role-management-controls{flex-direction:column}.btn-reset,.btn-save{width:100%}.employees-table-wrapper{margin-bottom:15px}.role-management-footer{flex-direction:column;gap:10px}}.role-management-container p{color:#999;font-size:14px;padding:20px;text-align:center}.rm-tabs{border-bottom:2px solid #e0e0e0;display:flex;gap:4px;margin-bottom:20px}.rm-tab{background:none;border:none;border-bottom:3px solid #0000;color:#666;cursor:pointer;font-size:15px;font-weight:600;margin-bottom:-2px;padding:10px 20px;transition:color .15s,border-color .15s}.rm-tab:hover{color:#1976d2}.rm-tab.active{border-bottom-color:#1976d2;color:#1976d2}.rm-settings{background:#fff;border:1px solid #e0e0e0;border-radius:6px;max-width:720px;padding:20px}.rm-setting-row+.rm-setting-row{border-top:1px solid #eee;margin-top:24px;padding-top:24px}.rm-setting-label{align-items:center;cursor:pointer;display:flex;gap:10px}.rm-setting-label input[type=checkbox]{cursor:pointer;height:18px;width:18px}.rm-setting-title{color:#222;font-size:15px;font-weight:600}.rm-setting-help{color:#666;font-size:13px;line-height:1.5;margin:8px 0 0 28px}.rm-setting-note{color:#888;font-style:italic}.btn-add{background-color:#1976d2;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .3s ease}.btn-add:hover:not(:disabled){background-color:#1565c0;box-shadow:0 2px 8px #1976d24d}.btn-add:disabled{background-color:#ccc;cursor:not-allowed;opacity:.6}.employee-name input{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;color:#1976d2;font-size:14px;font-weight:600;min-width:90px;padding:6px 8px;width:100%}.employee-name input.changed{background-color:#fff3b0;border-color:#e6b800}.employees-table select,.employees-table td input[type=date],.employees-table td input[type=password]{border:1px solid #ddd;border-radius:4px;font-size:13px;padding:6px 8px}.new-employee-row{background-color:#e8f5e9!important}.new-employee-row td{vertical-align:middle}.row-actions{white-space:nowrap}.btn-cancel-row,.btn-create-row,.btn-delete-row{border:none;border-radius:4px;cursor:pointer;font-size:12px;font-weight:600;padding:6px 12px;transition:all .2s ease}.btn-delete-row{background-color:#f44336;color:#fff}.btn-delete-row:hover:not(:disabled){background-color:#da190b}.btn-create-row{background-color:#4caf50;color:#fff;margin-right:6px}.btn-create-row:hover:not(:disabled){background-color:#45a049}.btn-cancel-row{background-color:#9e9e9e;color:#fff}.btn-cancel-row:hover:not(:disabled){background-color:#757575}.btn-cancel-row:disabled,.btn-create-row:disabled,.btn-delete-row:disabled{background-color:#ccc;cursor:not-allowed;opacity:.6}.labour-search{border:1px solid #ddd;border-radius:4px;font-size:14px;min-width:320px;padding:9px 12px}.labour-autocomplete-cell{position:relative}.labour-autocomplete-cell input{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-size:13px;padding:6px 8px;width:100%}.labour-dropdown{background:#fff;border:1px solid #ddd;border-radius:4px;box-shadow:0 4px 12px #0000001f;left:0;max-height:220px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:30}.labour-dropdown-item{cursor:pointer;display:flex;flex-direction:column;gap:2px;padding:7px 10px}.labour-dropdown-item:hover{background:#e3f2fd}.labour-dropdown-item strong{color:#1976d2;font-size:13px}.labour-dropdown-item span{color:#666;font-size:12px}.roles-grid{min-width:900px;table-layout:fixed}.roles-grid th{font-size:11px;letter-spacing:.3px;padding:10px 6px;white-space:nowrap}.roles-grid td{font-size:13px;overflow:hidden;padding:8px 6px}.roles-grid select,.roles-grid td input[type=date],.roles-grid td input[type=password],.roles-grid td input[type=text]{box-sizing:border-box;font-size:13px;min-width:0;padding:5px 6px;width:100%}.roles-grid .employee-name input{font-size:13px;min-width:0;padding:5px 6px}.roles-grid .row-actions{white-space:nowrap}.roles-grid .btn-cancel-row,.roles-grid .btn-create-row,.roles-grid .btn-delete-row{padding:5px 8px}.roles-grid .btn-create-row{margin-right:4px}.roles-grid .change-indicator{display:none}.roles-grid .date{white-space:nowrap}.status-select{background-color:#fff;cursor:pointer;font-weight:600}.status-select.status-active{border-color:#a5d6a7;color:#2e7d32}.status-select.status-inactive{background-color:#ffebee;border-color:#ef9a9a;color:#c62828}.status-select.changed{box-shadow:0 0 0 2px #ffe082}.roles-grid td.separation-date input.changed{background-color:#fffacd;border-color:#ff9800}.inv-container{margin:0 auto;max-width:1400px;padding:20px}.inv-header h1{color:#222;font-size:24px;margin:0 0 4px}.inv-header p{color:#666;font-size:14px;margin:0 0 18px}.inv-tabs{border-bottom:2px solid #e0e0e0;display:flex;gap:4px;margin-bottom:20px}.inv-tab{background:none;border:none;border-bottom:3px solid #0000;color:#666;cursor:pointer;font-size:15px;font-weight:600;margin-bottom:-2px;padding:10px 20px;transition:color .15s,border-color .15s}.inv-tab:hover{color:#1976d2}.inv-tab.active{border-bottom-color:#1976d2;color:#1976d2}.inv-panel{background:#fff;border:1px solid #e0e0e0;border-radius:6px;padding:18px}.inv-mode-row{flex-wrap:wrap;gap:22px;margin-bottom:16px}.inv-mode-row,.inv-radio{align-items:center;display:flex}.inv-radio{color:#333;cursor:pointer;font-size:14px;gap:7px}.inv-busy,.inv-file{font-size:13px}.inv-busy{color:#1976d2;font-weight:600}.inv-table{border-collapse:collapse;font-size:14px;width:100%}.inv-table th{background:#f5f5f5;border-bottom:2px solid #e0e0e0;color:#444;font-weight:600;padding:9px 10px;text-align:left;white-space:nowrap}.inv-table td{border-bottom:1px solid #eee;padding:7px 10px;vertical-align:middle}.inv-table.compact td,.inv-table.compact th{font-size:13px;padding:6px 9px}.inv-table td.num,.inv-table th.num{text-align:right}.inv-table td.desc{max-width:380px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inv-table input{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-size:13px;padding:6px 8px;width:100%}.inv-table tr.is-new{background:#f1f8e9}.inv-table tbody tr:nth-child(2n):not(.is-new):not(:hover){background:#f6f6f6}.inv-table td.changed{color:#d84315;font-weight:700}.inv-table-scroll{border:1px solid #eee;border-radius:4px;max-height:460px;overflow:auto}.inv-table.preview-items{table-layout:fixed}.inv-table.preview-items td.desc{max-width:none}.inv-table.preview-items th{overflow:hidden;text-overflow:ellipsis}.inv-sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.inv-sortable:hover{color:#1976d2}.inv-filter-cell{background:#fff;padding:4px 6px!important}.inv-filter-cell input{border:1px solid #ddd;border-radius:3px;box-sizing:border-box;font-size:12px;font-weight:400;padding:4px 6px;width:100%}.inv-clickable-row{cursor:pointer}.inv-clickable-row:hover{background:#e3f2fd}.inv-autocomplete-cell{position:relative}.inv-dropdown{background:#fff;border:1px solid #ddd;border-radius:4px;box-shadow:0 4px 12px #0000001f;left:0;max-height:240px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:30}.inv-dropdown-item{cursor:pointer;display:flex;flex-direction:column;gap:2px;padding:7px 10px}.inv-dropdown-item.active,.inv-dropdown-item:hover{background:#e3f2fd}.inv-dropdown-item strong{color:#1976d2;font-size:13px}.inv-dropdown-item span{color:#666;font-size:12px}.inv-section-title{border-bottom:1px solid #eee;color:#333;font-size:14px;font-weight:700;margin:20px 0 10px;padding-bottom:6px}.inv-kv{grid-gap:10px 20px;display:grid;gap:10px 20px;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}.inv-kv>div{display:flex;flex-direction:column;gap:2px}.inv-kv span{color:#888;font-size:12px}.inv-kv strong{color:#222;font-size:14px;word-break:break-word}.inv-kv strong.ok{color:#2e7d32}.inv-kv strong.warn{color:#ef6c00}.tag{border-radius:10px;display:inline-block;font-size:11px;font-weight:600;padding:2px 8px}.tag.new{background:#e8f5e9;color:#2e7d32}.tag.changed{background:#fff3e0;color:#e65100}.tag.same{background:#f0f0f0;color:#777}.inv-actions{display:flex;gap:10px;margin-top:16px}.inv-btn{background:#fff;border:1px solid #ccc;border-radius:4px;color:#333;cursor:pointer;font-size:14px;font-weight:600;padding:9px 20px}.inv-btn:hover:not(:disabled){background:#f5f5f5}.inv-btn.primary{background:#1976d2;border-color:#1976d2;color:#fff}.inv-btn.primary:hover:not(:disabled){background:#1565c0}.inv-btn:disabled{cursor:not-allowed;opacity:.55}.inv-note{color:#777;font-size:12px;font-style:italic;margin-top:10px}.inv-alert{background:#fff8e1;border-left:4px solid #ffa000;border-radius:4px;color:#6d4c41;font-size:13px;margin-top:14px;padding:10px 14px}.inv-message{background:#fafafa;border:1px solid #eee;border-radius:4px;font-family:inherit;font-size:13px;margin-top:16px;max-height:260px;overflow:auto;padding:12px;white-space:pre-wrap}.inv-result{margin-top:20px}.inv-modal-backdrop{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.inv-modal{background:#fff;border-radius:6px;box-shadow:0 10px 40px #0000004d;max-width:420px;padding:24px;width:100%}.inv-modal h3{color:#d32f2f;font-size:18px;margin:0 0 12px}.inv-modal p{color:#555;font-size:14px;line-height:1.5;margin:0 0 16px}.inv-modal input{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-size:14px;padding:10px;width:100%}.inv-conv-note{color:#6a5d00;font-size:11px;font-weight:600;margin-top:2px;white-space:nowrap}.inv-conv-edit{color:#444;display:flex;flex-direction:column;font-size:11.5px;font-weight:500;gap:4px;margin-top:4px}.inv-conv-edit label{align-items:center;display:flex;gap:6px;white-space:normal}.inv-conv-edit input[type=checkbox]{width:auto}.cam-panel{background:#111;border:1px solid #cfd8dc;border-radius:10px;margin:0 0 12px;overflow:hidden}.cam-view{background:#111;min-height:220px;position:relative}.cam-video{background:#111;display:block;max-height:60vh;object-fit:contain;width:100%}.cam-aim{border:2px solid #ffffff8c;border-radius:8px;bottom:25%;left:8%;pointer-events:none;position:absolute;right:8%;top:25%}.cam-overlay{font-size:14px;font-weight:600;left:0;padding:10px 14px;position:absolute;right:0;text-align:center}.cam-status{color:#eceff1;top:50%;transform:translateY(-50%)}.cam-error{background:#000000a6;color:#ffcdd2}.cam-feedback{bottom:0;color:#fff;font-size:15px}.cam-feedback.ok{background:#2e7d32eb}.cam-feedback.bad{background:#c62828eb}.cam-controls{align-items:center;background:#fff;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;padding:10px 12px}.cam-hint{color:#555;flex:1 1;font-size:12.5px;min-width:180px}.cam-buttons{display:flex;gap:8px}.stk-container{margin:0 auto;max-width:1100px;padding:20px 24px 40px}.stk-header h1{color:#222;font-size:24px;margin:0 0 4px}.stk-header p{color:#666;font-size:14px;margin:0 0 20px}.stk-start-panel{background:#fff;border:1px solid #e0e0e0;border-radius:8px;display:flex;flex-direction:column;gap:14px;max-width:420px;padding:24px}.stk-start-panel label{color:#444;display:flex;flex-direction:column;font-size:13px;font-weight:600;gap:6px}.stk-start-panel input{border:1px solid #ddd;border-radius:6px;font-size:15px;padding:10px 12px}.stk-btn{background:#fff;border:1px solid #ccc;border-radius:6px;color:#333;cursor:pointer;font-size:14px;font-weight:600;padding:10px 18px}.stk-btn.primary{background:#1976d2;border-color:#1976d2;color:#fff}.stk-btn.primary:hover:not(:disabled){background:#125ea3}.stk-btn:disabled{cursor:not-allowed;opacity:.6}.stk-scan-panel{background:#fff;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:30px;padding:20px}.stk-scan-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:14px}.stk-scan-location-label{color:#888;display:block;font-size:11px;font-weight:700;letter-spacing:.4px;text-transform:uppercase}.stk-scan-location{color:#1976d2;font-size:20px;font-weight:700}.stk-scan-stats{color:#555;font-size:13px;font-weight:600}.stk-scan-form{margin-bottom:8px}.stk-scan-input{border:2px solid #1976d2;border-radius:8px;box-sizing:border-box;font-size:20px;letter-spacing:.5px;padding:16px 14px;width:100%}.stk-scan-error{color:#c62828;font-size:13px;font-weight:600;margin:6px 0 12px}.stk-scan-table-wrap{border:1px solid #eee;border-radius:6px;margin-top:12px;max-height:320px;overflow-y:auto}.stk-actions{display:flex;justify-content:flex-end;margin-top:16px}.stk-section-title{color:#333;font-size:15px;font-weight:700;margin:0 0 10px}.stk-busy{color:#1976d2;font-size:13px;font-weight:400;margin-left:8px}.stk-table-wrap{border-radius:6px;overflow-x:auto}.stk-table{border-collapse:collapse;font-size:13.5px;width:100%}.stk-table th{background:#f5f5f5;border-bottom:2px solid #e0e0e0;color:#444;font-weight:600;padding:9px 10px;text-align:left;white-space:nowrap}.stk-table td{border-bottom:1px solid #eee;padding:7px 10px}.stk-table td.num,.stk-table th.num{text-align:right}.stk-table tbody tr:nth-child(2n){background:#fafafa}.stk-empty{color:#999;padding:20px;text-align:center}.stk-status{border-radius:12px;font-size:11px;font-weight:700;padding:3px 10px;text-transform:uppercase}.stk-status.open{background:#fff3e0;color:#e65100}.stk-status.done{background:#e8f5e9;color:#2e7d32}.stk-camera-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin:8px 0 10px}.stk-camera-btn{font-size:15px;padding:12px 18px}.stk-camera-note{background:#fff8e1;border-radius:6px;color:#8a6d00;font-size:12.5px;max-width:560px;padding:6px 10px}.stk-qty{align-items:center;display:inline-flex;gap:4px}.stk-qty-btn{background:#fff;border:1px solid #ccc;border-radius:6px;color:#333;cursor:pointer;font-size:18px;font-weight:700;height:32px;line-height:1;width:32px}.stk-qty-btn:disabled{cursor:not-allowed;opacity:.4}.stk-qty-input{border:1px solid #ccc;border-radius:6px;box-sizing:border-box;font-size:15px;font-weight:600;height:32px;text-align:center;width:64px}@media (max-width:600px){.stk-container{padding:12px 10px 30px}.stk-scan-panel{padding:12px}.stk-scan-header{align-items:flex-start;flex-direction:column;gap:6px}.stk-scan-input{font-size:17px;padding:13px 12px}.stk-camera-btn{width:100%}.stk-qty-btn{height:38px;width:34px}.stk-qty-input{height:38px;width:46px}.stk-scan-table-wrap{max-height:45vh}.stk-scan-table-wrap .stk-table td,.stk-scan-table-wrap .stk-table th{padding:6px 5px}.stk-scan-table-wrap .stk-table td{word-break:break-word}.stk-scan-table-wrap .stk-qty{gap:2px}}.stk-branch{color:#555;font-size:13px;margin:-12px 0 16px}.stk-branch strong{color:#1976d2}.stk-owner-banner{background:#e3f2fd;border-radius:6px;display:flex;flex-direction:column;gap:2px;padding:10px 12px}.stk-owner-branch{color:#0d47a1;font-size:18px;font-weight:700}.stk-scan-owner{align-items:flex-start;display:flex;flex-wrap:wrap;gap:28px}.stk-scan-owner-item{display:flex;flex-direction:column;gap:1px}.stk-change-loc{align-self:flex-start;font-size:12px;margin-top:4px;padding:4px 10px}@media (max-width:600px){.stk-scan-owner{gap:16px}.stk-scan-owner-item{min-width:0}}.dash-container{margin:0 auto;max-width:1200px;padding:20px}.dash-header h1{color:#222;font-size:24px;margin:0 0 4px}.dash-header p{color:#666;font-size:14px;margin:0 0 18px}.dash-tabs{border-bottom:2px solid #e0e0e0;display:flex;gap:4px;margin-bottom:20px}.dash-tab{background:none;border:none;border-bottom:3px solid #0000;color:#666;cursor:pointer;font-size:15px;font-weight:600;margin-bottom:-2px;padding:10px 20px;transition:color .15s,border-color .15s}.dash-tab:hover{color:#1976d2}.dash-tab.active{border-bottom-color:#1976d2;color:#1976d2}.dash-custom-range{align-items:center;background:#f9f9f9;border:1px solid #eee;border-radius:6px;display:flex;gap:18px;margin:-8px 0 20px;padding:12px 14px}.dash-custom-range label{align-items:center;color:#444;display:flex;font-size:13px;font-weight:600;gap:8px}.dash-custom-range input[type=date]{border:1px solid #ddd;border-radius:4px;font-size:13px;padding:6px 8px}.dash-custom-range-error{color:#c62828;font-size:12px;font-weight:600}.dash-loading{color:#999;padding:20px}.dash-cards{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:28px}.dash-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:16px 18px}.dash-card.muted{background:#fafafa}.dash-card-label{color:#888;font-size:12px;font-weight:600;letter-spacing:.4px;margin-bottom:6px;text-transform:uppercase}.dash-card-value{color:#222;font-size:22px;font-weight:700}.dash-card-value.profit{color:#2e7d32}.dash-card-value.labour{color:#1565c0}.dash-section-title{color:#333;font-size:15px;font-weight:700;margin:0 0 10px}.dash-collection-row{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:28px}.dash-collection-chip{align-items:center;background:#fff;border:1px solid #e0e0e0;border-radius:20px;display:flex;gap:8px;padding:8px 16px}.dash-collection-mode{color:#666;font-size:12px;font-weight:700;letter-spacing:.3px;text-transform:uppercase}.dash-collection-amount{color:#1565c0;font-size:15px;font-weight:700}.dash-empty-inline{color:#999;font-size:13px;margin:0 0 28px}.dash-table-wrap{border:1px solid #eee;border-radius:6px;max-height:480px;overflow:auto}.dash-table{border-collapse:collapse;font-size:14px;width:100%}.dash-table th{background:#f5f5f5;border-bottom:2px solid #e0e0e0;color:#444;font-weight:600;padding:10px 12px;position:-webkit-sticky;position:sticky;text-align:left;top:0;white-space:nowrap}.dash-table td{border-bottom:1px solid #eee;padding:9px 12px}.dash-table tbody tr:nth-child(2n){background:#f6f6f6}.dash-table td.num,.dash-table th.num{text-align:right}.dash-table td.profit{color:#2e7d32;font-weight:600}.dash-table td.labour{color:#1565c0;font-weight:600}.dash-empty{color:#999;padding:24px!important;text-align:center}.apt-container{margin:0 auto;max-width:1400px;padding:20px}.apt-header h1{color:#222;font-size:24px;margin:0 0 4px}.apt-header p{color:#666;font-size:14px;margin:0 0 18px}.apt-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:16px;margin-bottom:16px}.apt-btn{background:#fff;border:1px solid #ccc;border-radius:4px;color:#333;cursor:pointer;font-size:13px;font-weight:600;padding:9px 18px}.apt-btn:hover:not(:disabled){background:#f5f5f5}.apt-btn.primary{background:#1976d2;border-color:#1976d2;color:#fff}.apt-btn.primary:hover:not(:disabled){background:#1565c0}.apt-btn:disabled{cursor:not-allowed;opacity:.55}.apt-branch-select{align-items:center;color:#444;display:flex;font-size:13px;font-weight:600;gap:8px}.apt-branch-select select{border:1px solid #ddd;border-radius:4px;font-size:13px;padding:7px 10px}.apt-error{background:#ffebee;border-left:4px solid #c62828;color:#c62828}.apt-error,.apt-success{border-radius:4px;font-size:13px;margin-bottom:14px;padding:10px 14px}.apt-success{background:#e8f5e9;border-left:4px solid #2e7d32;color:#2e7d32}.apt-table-wrap{border-radius:4px;box-shadow:0 2px 8px #00000014;overflow-x:auto}.apt-table{background:#fff;border-collapse:collapse;font-size:12px;table-layout:fixed;width:100%}.apt-table thead{background:#f5f5f5}.apt-table th{border-bottom:2px solid #ddd;color:#444;font-size:10px;font-weight:600;line-height:1.2;padding:5px 4px;text-align:left;text-transform:uppercase;white-space:normal;word-break:break-word}.apt-table td{border-bottom:1px solid #eee;padding:5px 6px;white-space:nowrap}.apt-remarks-box,.apt-table input,.apt-table select{border:1px solid #ddd;border-radius:3px;box-sizing:border-box;font-size:11px;min-width:0;padding:3px 4px;width:100%}.apt-remarks-box{font-family:inherit;min-height:34px;resize:vertical}.apt-cell-truncate{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.apt-new-row{background:#e8f5e9}.apt-closed-row{background:#f5f5f5;color:#888}.apt-table tbody tr:nth-child(2n):not(.apt-new-row):not(.apt-closed-row){background:#f6f6f6}.apt-row-actions{white-space:nowrap}.apt-btn-cancel,.apt-btn-delete,.apt-btn-save,.apt-btn-whatsapp{border:none;border-radius:3px;cursor:pointer;font-size:10px;font-weight:600;margin-right:3px;padding:3px 6px}.apt-btn-save{background:#4caf50;color:#fff}.apt-btn-save:hover:not(:disabled){background:#45a049}.apt-btn-cancel{background:#9e9e9e;color:#fff}.apt-btn-cancel:hover:not(:disabled){background:#757575}.apt-btn-delete{background:#f44336;color:#fff}.apt-btn-delete:hover:not(:disabled){background:#da190b}.apt-btn-whatsapp{background:#25d366;color:#fff}.apt-btn-whatsapp:hover{background:#1ebe57}.apt-btn-whatsapp.sent{background:#128c4a}.apt-btn-whatsapp.sent:hover{background:#0f7a40}.apt-btn-cancel:disabled,.apt-btn-delete:disabled,.apt-btn-save:disabled{cursor:not-allowed;opacity:.55}.apt-autocomplete-cell{position:relative}.apt-dropdown{background:#fff;border:1px solid #ddd;border-radius:4px;box-shadow:0 4px 12px #0000001f;left:0;max-height:220px;min-width:260px;overflow-y:auto;position:absolute;top:100%;z-index:30}.apt-dropdown-item{cursor:pointer;display:flex;flex-direction:column;gap:2px;padding:7px 10px;white-space:normal}.apt-dropdown-item:hover{background:#e3f2fd}.apt-dropdown-item strong{color:#1976d2;font-size:13px}.apt-dropdown-item span{color:#666;font-size:12px}.apt-status{border-radius:9px;display:inline-block;font-size:10px;font-weight:700;padding:2px 6px;white-space:nowrap}.apt-status-recorded{background:#fff3e0;color:#e65100}.apt-status-inprogress{background:#e3f2fd;color:#1565c0}.apt-status-completed{background:#e8f5e9;color:#2e7d32}.apt-status-cancelled{background:#ffebee;color:#c62828}.apt-note{color:#777;font-size:12px;font-style:italic;margin-top:10px}.apt-filter-group{display:flex;flex-wrap:wrap;gap:6px}.apt-chip{background:#fff;border:1px solid #ddd;border-radius:16px;color:#555;cursor:pointer;font-size:12px;font-weight:600;padding:6px 14px}.apt-chip:hover{border-color:#1976d2;color:#1976d2}.apt-chip.active{background:#1976d2;border-color:#1976d2;color:#fff}.apt-custom-range{align-items:center;background:#f9f9f9;border:1px solid #eee;border-radius:6px;display:flex;gap:18px;margin-bottom:14px;padding:10px 14px}.apt-custom-range label{align-items:center;color:#444;display:flex;font-size:13px;font-weight:600;gap:8px}.apt-custom-range input[type=date]{border:1px solid #ddd;border-radius:4px;font-size:13px;padding:6px 8px}.apt-error-text{color:#c62828;font-size:13px;font-weight:600}.apt-th-sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.apt-th-sortable:hover{color:#1976d2}.apt-sort-arrow{font-size:10px;margin-left:3px}.apt-filter-row th{background:#fafafa;border-bottom:2px solid #ddd;padding:3px 4px;white-space:nowrap}.apt-filter-row input,.apt-filter-row select{border:1px solid #ddd;border-radius:3px;box-sizing:border-box;font-size:10px;font-weight:400;min-width:0;padding:3px 4px;text-transform:none;width:100%}.vt{--vtw:min(calc(100vw - 32px),2000px);box-sizing:border-box;color:#222;font-size:13px;margin-left:calc(50% - var(--vtw)/2);padding:14px 0 40px;width:var(--vtw)}.vt-head{align-items:flex-end;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:10px}.vt-head h2{font-size:22px;margin:0}.vt-sub{color:#555;margin-top:2px}.vt-tools{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.vt-search,.vt-tools select{background:#fff;border:1px solid #c9ced6;border-radius:4px;font-size:13px;padding:7px 9px}.vt-search{max-width:100%;width:250px}.vt-btn{background:#fff;border:1px solid #c4c9d1;border-radius:4px;color:#222;cursor:pointer;font-size:13px;padding:7px 14px}.vt-btn:hover:not(:disabled){background:#f1f3f6}.vt-btn:disabled{cursor:not-allowed;opacity:.5}.vt-btn.sm{font-size:11.5px;margin:0 4px 3px 0;padding:3px 8px}.vt-primary{background:#1f5fae;border-color:#1f5fae;color:#fff}.vt-primary:hover:not(:disabled){background:#194f92}.vt-danger{border-color:#e0b4b0;color:#b3261e}.vt-grow{flex:1 1}.vt-tabs{align-items:center;border-bottom:2px solid #dde1e7;display:flex;flex-wrap:wrap;gap:4px;margin-bottom:10px}.vt-tabs>button{background:none;border:0;border-bottom:3px solid #0000;color:#555;cursor:pointer;font-size:13px;margin-bottom:-2px;padding:8px 14px}.vt-tabs>button.on{border-bottom-color:#1f5fae;color:#1f5fae;font-weight:600}.vt-legend{align-items:center;color:#555;display:flex;flex-wrap:wrap;font-size:11.5px;gap:6px;margin-left:auto}.vt-dot{border:1px solid #0003;border-radius:3px;display:inline-block;height:12px;margin-left:8px;width:12px}.vt-received{background:#fff}.vt-progress{background:#fff176}.vt-complete{background:#ffc266}.vt-ready{background:#a5d56e}.vt-red{background:#ff6f61}.vt-delivered{background:#f2f3f5;color:#555}.vt-dot.vt-received{background:#fff}.vt-notice{border-left:4px solid;border-radius:4px;display:flex;gap:12px;justify-content:space-between;margin-bottom:10px;padding:9px 12px}.vt-notice.error{background:#fdecea;border-color:#d93025;color:#8a1c14}.vt-notice.ok{background:#e6f4ea;border-color:#2e9d4b;color:#1b5e2c}.vt-notice button{background:none;border:0;color:inherit;cursor:pointer;font-size:18px;line-height:1}.vt-tablewrap{background:#fff;border:1px solid #d5d9e0;border-radius:4px;overflow-x:auto}.vt-table{border-collapse:collapse;min-width:1180px;width:100%}.vt-table th{background:#eef1f5;border-bottom:2px solid #cfd5de;color:#444;font-size:10.5px;letter-spacing:.03em;padding:7px 8px;text-align:left;text-transform:uppercase;white-space:nowrap}.vt-table td{border-bottom:1px solid #0000001f;padding:6px 8px;vertical-align:top}.vt-table tbody tr:hover td{box-shadow:inset 0 0 0 9999px rgba(0,0,0,.045)}.vt-table td.vt-nowrap{white-space:nowrap}.vt-empty{background:#fff;color:#666;padding:28px;text-align:center}.vt-small{color:#555;font-size:11px;font-weight:400}.vt-redtext{color:#b3261e;font-weight:600}.vt-red .vt-redtext,.vt-red .vt-small{color:#4a0d08}.vt-jc{font-weight:600;white-space:nowrap}.vt-remarks{max-width:220px;white-space:pre-wrap;word-break:break-word}.vt-pill-warn{background:#f3d9a4;color:#5c3b00}.vt-hint{color:#666;font-size:11px;font-weight:400}.vt-kind{border:1px solid #c4c9d1;border-radius:4px;font-size:12px;margin-left:12px;padding:4px 6px}.vt-pill{background:#dfe3e8;border-radius:10px;display:inline-block;font-size:11.5px;padding:2px 8px}.vt-jobs{min-width:170px}.vt-chipwrap{display:inline-block;margin:0 4px 4px 0;position:relative}.vt-chip{background:#ffffffbf;border:1px solid #5d6673;border-radius:12px;color:#1d232b;cursor:pointer;font-size:11.5px;padding:3px 9px}.vt-chip:hover:not(:disabled){background:#fff;border-color:#1f5fae}.vt-chip.done{background:#2f7d32;border-color:#2f7d32;color:#fff}.vt-chip:disabled{cursor:default;opacity:.8}.vt-menu{background:#fff;border:1px solid #b9c0ca;border-radius:6px;box-shadow:0 6px 18px #0003;color:#222;max-height:260px;min-width:170px;overflow:auto;padding:4px;position:fixed;z-index:500}.vt-menu button{background:none;border:0;border-radius:4px;cursor:pointer;display:block;font-size:12.5px;padding:6px 9px;text-align:left;width:100%}.vt-menu button:hover{background:#e8f0fb}.vt-menu .vt-muted{border-radius:0 0 4px 4px;border-top:1px solid #e3e6ea;color:#666;margin-top:3px}.vt-menutitle{font-size:12px;font-weight:600;padding:5px 9px}.vt-addjob{background:#0000;border:1px dashed #7d8794;border-radius:12px;color:#333;font-size:11px;padding:2px;width:62px}.vt-table select{background:#fff;border:1px solid #aeb5bf;border-radius:4px;font-size:12px;padding:3px 4px}.vt-pay{background:#dfe3e8;border-radius:10px;color:#333;display:inline-block;font-size:11px;font-weight:600;margin-right:6px;padding:1px 7px}.vt-pay.paid{background:#1e7e34;color:#fff}.vt-pay.unpaid{background:#b3261e;color:#fff}.vt-pay.partial{background:#b86e00;color:#fff}.vt-link{background:none;border:0;color:#0d47a1;cursor:pointer;font-size:11.5px;padding:0 6px 0 0;text-decoration:underline}.vt-actions{min-width:200px}.vt-overlay{align-items:flex-start;background:#14181e80;display:flex;inset:0;justify-content:center;overflow:auto;padding:40px 12px;position:fixed;z-index:1000}.vt-modal{background:#fff;border-radius:8px;box-shadow:0 12px 40px #00000059;max-width:480px;width:100%}.vt-modal.wide{max-width:760px}.vt-modalhead{align-items:center;border-bottom:1px solid #e3e6ea;display:flex;justify-content:space-between;padding:12px 18px}.vt-modalhead h3{font-size:16px;margin:0}.vt-modalhead button{background:none;border:0;color:#555;cursor:pointer;font-size:24px;line-height:1}.vt-form{grid-gap:12px 16px;display:grid;gap:12px 16px;grid-template-columns:1fr 1fr;padding:16px 18px 18px}.vt-form.single{gap:12px}.vt-form label,.vt-form.single{display:flex;flex-direction:column}.vt-form label{color:#444;font-size:12px;font-weight:600;gap:4px}.vt-form input,.vt-form select,.vt-form textarea{border:1px solid #c4c9d1;border-radius:4px;font-family:inherit;font-size:13px;font-weight:400;padding:7px 9px}.vt-form fieldset{border:1px solid #dde1e7;border-radius:6px;grid-column:1/-1;margin:0;padding:8px 12px 10px}.vt-form legend{color:#444;font-size:12px;font-weight:600;padding:0 6px}.vt-full{grid-column:1/-1}.vt-checks{display:flex;flex-wrap:wrap;gap:6px 16px}.vt-form .vt-check{align-items:center;color:#222;flex-direction:row;font-size:13px;font-weight:400;gap:6px}.vt-relative{position:relative}.vt-suggest{background:#fff;border:1px solid #b9c0ca;border-radius:4px;box-shadow:0 6px 18px #0000002e;left:0;list-style:none;margin:2px 0 0;max-height:220px;overflow:auto;padding:0;position:absolute;right:0;top:100%;z-index:20}.vt-suggest button{background:none;border:0;cursor:pointer;font-size:12.5px;padding:7px 10px;text-align:left;width:100%}.vt-suggest button:hover{background:#e8f0fb}.vt-formerr{color:#b3261e;font-weight:600;grid-column:1/-1}.vt-modalfoot{align-items:center;display:flex;flex-wrap:wrap;gap:8px;grid-column:1/-1;margin-top:4px}.vt-log{color:#444;font-size:12px}.vt-log ul{margin:6px 0 0;padding-left:18px}.vt-invlist{gap:3px}.vt-block,.vt-invlist{display:flex;flex-direction:column}.vt-block{background:#fdecea;border-left:4px solid #d93025;border-radius:4px;color:#6b1810;gap:8px;padding:10px 12px}.vt-jobtable{border-collapse:collapse;width:100%}.vt-jobtable th{border-bottom:1px solid #dde1e7;color:#555;font-size:11px;padding:4px 6px;text-align:left;text-transform:uppercase}.vt-jobtable td{border-bottom:1px solid #eef0f3;padding:5px 6px}.vt-jobtable input:not([type]),.vt-jobtable input[type=text]{width:100%}.vt-jobtable tr.off{opacity:.5}.vt-addrow{display:flex;flex-wrap:wrap;gap:8px}.vt-addrow input{flex:1 1;min-width:180px}@media (max-width:720px){.vt{padding:10px 0 40px}.vt-form{grid-template-columns:1fr}.vt-legend{margin-left:0}.vt-search{width:100%}}@media (prefers-reduced-motion:reduce){.vt *{transition:none!important}}.vt-warnchip{background:#fff4e0;border:1px solid #b86e00;border-radius:10px;color:#7a4a00;cursor:pointer;font-size:10.5px;margin-top:3px;padding:1px 7px}.vt-warnchip:hover{background:#ffe8c2}.vt-okhint{color:#1b6e32}.vt-warnhint{color:#8a4f00}.vt-overlay-top{z-index:1100}.vt-hold{background:#d9cfee}.vt-wfp{background:#bcdcf5}.vt-wfa{background:#ecc9e6}.vt-vehicle{min-width:150px}.vt-custline{background:#e9f5e9;border-radius:4px;color:#1f3d1f;font-size:11.5px;font-weight:400;padding:3px 7px}.vt-jobcell{min-width:108px}.vt-jsel{background:#fff;border:1px solid #aeb5bf;border-radius:4px;font-size:12px;max-width:130px;padding:3px 4px;width:100%}.vt-jsel.na{background:#ffffff80;color:#777}.vt-jsel.done{background:#2f7d32;border-color:#2f7d32;color:#fff;font-weight:600}.vt-jsel.done option{background:#fff;color:#222;font-weight:400}.vt-techchip{align-items:center;background:#fffc;border:1px solid #5d6673;border-radius:12px;display:inline-flex;font-size:11.5px;gap:3px;margin:0 4px 3px 0;padding:1px 4px 1px 8px}.vt-techchip button{background:none;border:0;color:#555;cursor:pointer;font-size:14px;line-height:1;padding:0 2px}.vt-stage{background:#ffffffbf;border:1px solid #5d6673;border-radius:10px;display:inline-block;font-size:11px;font-weight:600;margin-top:3px;padding:1px 7px}.vt-invoicecell{min-width:120px}.vt-total{font-size:13px;font-weight:700}.vt-remarks textarea{background:#ffffffd9;border:1px solid #aeb5bf;border-radius:4px;font-family:inherit;min-width:150px;padding:4px 6px;resize:vertical;width:100%}.vt-actionsel{font-size:12px;margin-bottom:4px;max-width:150px;padding:3px 4px;width:100%}.vt-btnrow{display:flex;flex-wrap:wrap;gap:0 4px}.vt-statuscell select{max-width:170px}.vt-queue{align-items:center;display:flex;flex-wrap:wrap;gap:6px;margin:0 0 10px}.vt-queuelabel{color:#444;font-size:12px;font-weight:600;margin-right:2px}.vt-qchip{background:#fff;border:1px solid #9fb0c8;border-radius:14px;color:#1d2b40;cursor:pointer;font-size:12.5px;padding:4px 11px}.vt-qchip b{background:#1f5fae;border-radius:9px;color:#fff;font-size:11.5px;margin-left:4px;padding:0 6px}.vt-qchip.zero b{background:#9aa4b3}.vt-qchip.on,.vt-qchip:hover{border-color:#1f5fae}.vt-qchip.on{background:#1f5fae;color:#fff}.vt-qchip.on b{background:#fff;color:#1f5fae}.vt-next select{outline:2px solid #1f5fae;outline-offset:1px}.vt-notinflow{color:#8a8a8a;text-align:center}.vt-nextline{font-weight:600}.vt-flowline{background:#eef3fa;border-radius:6px;color:#23364f;font-size:12px;padding:7px 10px}.vt-cellbox{align-items:center;border:2px solid #0000;border-radius:7px;display:flex;gap:6px;padding:3px}.vt-cellbox.vt-active{background:#22c55e29;border-color:#1e9e45}.vt-light{background:#fff;border:2px solid #7a8794;border-radius:50%;cursor:pointer;flex:0 0 auto;height:16px;padding:0;width:16px}.vt-light:hover:not(:disabled){border-color:#1e9e45}.vt-light.on{background:#22c55e;border-color:#15803d;box-shadow:0 0 7px 2px #22c55ebf}.vt-notserviced{align-items:center;cursor:pointer;display:inline-flex;font-size:12px;gap:5px;margin-top:2px}.vt-availtable{border-collapse:collapse;width:100%}.vt-availtable th{border-bottom:2px solid #dde1e7;color:#555;font-size:11px;padding:5px 8px;text-align:left;text-transform:uppercase}.vt-availtable td{border-bottom:1px solid #eef0f3;font-size:13.5px;padding:7px 8px}.vt-table td{padding:4px 8px;vertical-align:middle;white-space:nowrap}.vt-table td.vt-remarks{white-space:normal}.vt-ellip{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vt-vehicle .vt-ellip{max-width:190px}.vt-invnos{max-width:150px}.vt-invnos .vt-link{padding-right:6px}.vt-warnchip{margin-top:1px;white-space:nowrap}.vt-remarks textarea{height:38px;line-height:1.25;resize:none}.vt-clamp2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;max-width:220px;overflow:hidden;white-space:normal}.vt-btnrow{align-items:center;flex-wrap:nowrap}.vt-btnrow .vt-btn.sm{margin-bottom:2px}.vt-notserviced{margin:0 0 2px 4px;white-space:nowrap}.vt-small{line-height:1.25}.vt-jsel.assigned{background:#1f5fae;border-color:#1f5fae;color:#fff;font-weight:600}.vt-jsel.assigned option{background:#fff;color:#222;font-weight:400}.vt-tick{background:#fff;border:2px solid #7a8794;border-radius:50%;color:#9aa4b3;cursor:pointer;flex:0 0 auto;font-size:11px;height:20px;line-height:1;padding:0;width:20px}.vt-tick:hover:not(:disabled){border-color:#2f7d32;color:#2f7d32}.vt-tick.on{background:#2f7d32;border-color:#2f7d32;color:#fff}.vt-tick:disabled{cursor:not-allowed;opacity:.35}.vt-jobcell .vt-ellip{max-width:170px}.vt-btn.vt-soft{opacity:.55}.vt-table{font-size:12px;min-width:1240px;table-layout:fixed}.vt-table th{padding:6px 5px}.vt-table td,.vt-table th{overflow:hidden;text-overflow:ellipsis}.vt-table td{padding:3px 5px}.vt-jobcell{min-width:0}.vt-jobcell .vt-ellip{max-width:100%}.vt-actions,.vt-vehicle{min-width:0}.vt-invnos,.vt-vehicle .vt-ellip{max-width:100%}.vt-remarks textarea{font-size:12px;min-width:0;padding:3px 5px}.vt-cellbox{gap:3px;padding:1px 2px}.vt-light{border-width:2px;height:12px;width:12px}.vt-tick{border-width:1.5px;font-size:10px;height:16px;width:16px}.vt-pick{background:none;border:1px solid #0000;border-radius:10px;color:inherit;cursor:pointer;display:inline-block;font:inherit;font-size:12px;max-width:100%;overflow:hidden;padding:1px 7px;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.vt-pick:focus-visible,.vt-pick:hover{background:#ffffffbf;border-color:#1f5fae;outline:none}.vt-pick.na{color:#777}.vt-pick.pending{background:#ffffffa6;border-color:#9aa4b3}.vt-pick.assigned{background:#1f5fae;color:#fff;font-weight:600}.vt-pick.done{background:#2f7d32;color:#fff;font-weight:600}.vt-pick.status{background:#fffc;border-color:#5d6673;font-weight:700;min-width:36px;text-align:center}.vt-pick.static{cursor:default;opacity:.7}.vt-pickselect{background:#fff;border:1px solid #1f5fae;border-radius:4px;color:#222;font-size:12px;max-width:100%;padding:2px 3px}.vt-iconrow{align-items:center;display:flex;gap:4px}.vt-ibtn{align-items:center;background:#fff;border:1px solid #b6bdc8;border-radius:6px;color:#2c3e57;cursor:pointer;display:inline-flex;height:26px;justify-content:center;padding:0;width:26px}.vt-ibtn:focus-visible,.vt-ibtn:hover:not(:disabled){background:#e8f0fb;border-color:#1f5fae;outline:none}.vt-ibtn.primary{background:#1f5fae;border-color:#1f5fae;color:#fff}.vt-ibtn.primary:focus-visible,.vt-ibtn.primary:hover:not(:disabled){background:#194f92}.vt-ibtn.soft{color:#7b8794}.vt-ibtn.warn{color:#9a4b00}.vt-ibtn:disabled{cursor:not-allowed;opacity:.4}.vt-tip{background:#1d2733;border-radius:6px;box-shadow:0 4px 12px #0000004d;color:#fff;display:flex;flex-direction:column;font-size:12px;gap:1px;line-height:1.35;max-width:250px;padding:6px 10px;pointer-events:none;position:fixed;transform:translateX(-50%);z-index:3000}.vt-tip span{color:#c9d3e0;font-size:11px}.vt-table{min-width:1250px}.vt-table th{line-height:1.15;vertical-align:bottom;white-space:normal}.vt-table{min-width:1236px}.lab-container{margin:0 auto;max-width:1300px;padding:20px}.lab-header h1{color:#222;font-size:24px;margin:0 0 4px}.lab-header p{color:#666;font-size:14px;margin:0 0 18px}.lab-tabs{border-bottom:2px solid #e0e0e0;display:flex;gap:4px;margin-bottom:20px}.lab-tab{background:none;border:none;border-bottom:3px solid #0000;color:#666;cursor:pointer;font-size:15px;font-weight:600;margin-bottom:-2px;padding:10px 20px}.lab-tab:hover{color:#1976d2}.lab-tab.active{border-bottom-color:#1976d2;color:#1976d2}.lab-panel{background:#fff;border:1px solid #e0e0e0;border-radius:6px;padding:18px}.lab-error{background:#ffebee;border-left:4px solid #c62828;color:#c62828}.lab-error,.lab-success{border-radius:4px;font-size:13px;margin-bottom:14px;padding:10px 14px}.lab-success{background:#e8f5e9;border-left:4px solid #2e7d32;color:#2e7d32}.lab-controls{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}.lab-search{border:1px solid #ddd;border-radius:4px;flex:1 1;font-size:14px;min-width:260px;padding:9px 12px}.lab-btn-add{background:#1976d2;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:9px 18px}.lab-btn-add:hover:not(:disabled){background:#1565c0}.lab-btn-add:disabled{cursor:not-allowed;opacity:.55}.lab-table-wrap{border-radius:4px;box-shadow:0 2px 8px #00000014;overflow-x:auto}.lab-table{background:#fff;border-collapse:collapse;font-size:14px;width:100%}.lab-table thead{background:#f5f5f5}.lab-table th{border-bottom:2px solid #ddd;color:#444;font-size:12px;font-weight:600;padding:10px 14px;text-align:left;text-transform:uppercase}.lab-table td{border-bottom:1px solid #eee;padding:9px 14px}.lab-table tbody tr:nth-child(2n){background:#f6f6f6}.lab-table td.num,.lab-table th.num{text-align:right}.lab-table input,.lab-table select{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-size:13px;padding:6px 8px;width:100%}.lab-num-input{text-align:right}.lab-new-row{background:#e8f5e9}.lab-row-actions{white-space:nowrap}.lab-btn-cancel,.lab-btn-delete,.lab-btn-save{border:none;border-radius:4px;cursor:pointer;font-size:12px;font-weight:600;margin-right:6px;padding:6px 12px}.lab-btn-save{background:#4caf50;color:#fff}.lab-btn-save:hover:not(:disabled){background:#45a049}.lab-btn-cancel{background:#9e9e9e;color:#fff}.lab-btn-cancel:hover:not(:disabled){background:#757575}.lab-btn-delete{background:#f44336;color:#fff}.lab-btn-delete:hover:not(:disabled){background:#da190b}.lab-btn-cancel:disabled,.lab-btn-delete:disabled,.lab-btn-save:disabled{cursor:not-allowed;opacity:.55}.lab-autocomplete-cell{position:relative}.lab-dropdown{background:#fff;border:1px solid #ddd;border-radius:4px;box-shadow:0 4px 12px #0000001f;left:0;max-height:220px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:30}.lab-dropdown-item{cursor:pointer;display:flex;flex-direction:column;gap:2px;padding:7px 10px}.lab-dropdown-item:hover{background:#e3f2fd}.lab-dropdown-item strong{color:#1976d2;font-size:13px}.lab-dropdown-item span{color:#666;font-size:12px}.lab-note{color:#777;font-size:12px;font-style:italic;margin-top:10px}.vi-container{padding:4px 0}.vi-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:16px;margin-bottom:12px}.vi-filter-group{display:flex;flex-wrap:wrap;gap:6px}.vi-chip{background:#fff;border:1px solid #ddd;border-radius:16px;color:#555;cursor:pointer;font-size:13px;font-weight:600;padding:6px 14px}.vi-chip:hover{border-color:#1976d2;color:#1976d2}.vi-chip.active{background:#1976d2;border-color:#1976d2;color:#fff}.vi-custom-range{align-items:center;background:#f9f9f9;border:1px solid #eee;border-radius:6px;display:flex;gap:18px;margin-bottom:14px;padding:10px 14px}.vi-custom-range label{align-items:center;color:#444;display:flex;font-size:13px;font-weight:600;gap:8px}.vi-custom-range input[type=date]{border:1px solid #ddd;border-radius:4px;font-size:13px;padding:6px 8px}.vi-points-total{color:#444;font-size:13px;white-space:nowrap}.vi-points-total strong{color:#1976d2;font-size:15px}.vi-search-row{display:flex;gap:8px;margin-bottom:16px}.vi-search-row input{border:1px solid #ddd;border-radius:4px;flex:1 1;font-size:14px;max-width:420px;padding:8px 10px}.vi-btn{background:#fff;border:1px solid #ccc;border-radius:4px;color:#333;cursor:pointer;font-size:13px;font-weight:600;padding:8px 18px}.vi-btn:hover:not(:disabled){background:#f5f5f5}.vi-btn.primary{background:#1976d2;border-color:#1976d2;color:#fff}.vi-btn.primary:hover:not(:disabled){background:#1565c0}.vi-btn:disabled{cursor:not-allowed;opacity:.55}.vi-table-wrap{border:1px solid #eee;border-radius:6px;margin-bottom:16px;max-height:480px;overflow:auto}.vi-table{border-collapse:collapse;font-size:14px;width:100%}.vi-table th{background:#f5f5f5;border-bottom:2px solid #e0e0e0;color:#444;font-weight:600;padding:10px 12px;position:-webkit-sticky;position:sticky;text-align:left;top:0;white-space:nowrap;z-index:1}.vi-table td{border-bottom:1px solid #eee;padding:9px 12px}.vi-table.compact td,.vi-table.compact th{font-size:13px;padding:7px 10px}.vi-table td.num,.vi-table th.num{text-align:right}.vi-empty{color:#999;padding:24px!important;text-align:center}.vi-sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.vi-sortable:hover{color:#1976d2}.vi-filter-cell{background:#fff;padding:4px 6px!important;top:37px}.vi-filter-cell input,.vi-filter-cell select{border:1px solid #ddd;border-radius:3px;box-sizing:border-box;font-size:12px;font-weight:400;padding:4px 6px;width:100%}.vi-table tbody tr:nth-child(2n):not(:hover){background:#f6f6f6}.vi-row{cursor:pointer}.vi-row:hover{background:#e3f2fd}.vi-status{border-radius:10px;display:inline-block;font-size:12px;font-weight:700;padding:3px 10px}.vi-status.paid{background:#e8f5e9;color:#2e7d32}.vi-status.unpaid{background:#fff3e0;color:#e65100}.vi-payment-branch{align-items:center;color:#444;display:flex;font-size:13px;font-weight:600;gap:8px;margin-bottom:14px}.vi-payment-branch select{border:1px solid #ddd;border-radius:4px;font-size:13px;padding:7px 10px}.vi-modal-backdrop{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000}.vi-modal{background:#fff;border-radius:8px;box-shadow:0 10px 40px #0000004d;max-height:90vh;max-width:500px;overflow-y:auto;padding:24px;width:100%}.vi-modal-wide{max-width:900px}.vi-modal-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.vi-modal-header h3{color:#222;font-size:18px;margin:0}.vi-close{background:none;border:none;color:#666;cursor:pointer;font-size:24px;line-height:1}.vi-kv{grid-gap:10px 20px;display:grid;gap:10px 20px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));margin-bottom:8px}.vi-kv>div{display:flex;flex-direction:column;gap:2px}.vi-kv span{color:#888;font-size:12px}.vi-kv strong{color:#222;font-size:14px;word-break:break-word}.vi-kv strong.ok{color:#2e7d32}.vi-kv strong.warn{color:#ef6c00}.vi-section-title{border-bottom:1px solid #eee;color:#333;font-size:14px;font-weight:700;margin:18px 0 8px;padding-bottom:6px}.vi-discount-input{border:1px solid #ddd;border-radius:4px;font-size:13px;padding:4px 6px;text-align:right;width:60px}.vi-total-after-discount{color:#1976d2;font-weight:700}.vi-payment-footer{border-top:1px solid #eee;margin-top:8px;padding-top:14px}.vi-payment-grand-total{color:#333;font-size:14px;margin-bottom:12px}.vi-payment-grand-total strong{color:#2e7d32;font-size:16px}.vi-payment-fields{display:flex;flex-wrap:wrap;gap:20px;margin-bottom:12px}.vi-payment-fields label{color:#444;display:flex;flex-direction:column;font-size:13px;font-weight:600;gap:6px}.vi-payment-fields select,.vi-payment-fields textarea{border:1px solid #ddd;border-radius:4px;font-family:inherit;font-size:13px;padding:8px}.vi-notes-label{flex:1 1;min-width:220px}.vi-notes-label textarea{resize:vertical}.vi-actions{display:flex;gap:10px}.vi-error-text{color:#c62828}.vi-error-text,.vi-ok-text{font-size:13px;font-weight:600}.vi-ok-text{color:#2e7d32}.vi-deductions{background:#fafafa;border:1px solid #eee;border-radius:6px;margin:12px 0;padding:12px}.vi-deduction-row{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.vi-deduction-row input{border:1px solid #ddd;border-radius:4px;font-size:13px;padding:6px 8px}.vi-deduction-row .vi-amount-input{text-align:right;width:110px}.vi-hint{color:#666;font-size:12px;margin:2px 0 6px}.vi-net-payable{font-size:14px;margin-top:10px}.vi-check-cell{padding-left:8px!important;padding-right:8px!important;text-align:center!important;width:36px}.vi-check-cell input{cursor:pointer;height:16px;width:16px}.vi-table .vi-totals-cell{background:#fff;border-bottom:1px solid #e0e0e0;box-sizing:border-box;height:34px;padding:6px 12px;top:0}.vi-table .vi-totals-label{color:#666;font-size:13px;font-weight:600;text-align:right}.vi-table .vi-totals-amount{color:#1565c0;font-size:16px;font-weight:800}.vi-table .vi-head-cell{top:34px}.vi-table .vi-filter-cell{top:74px}.vi-table tbody tr.vi-row-checked{background:#e8f1fc!important}.bank-container{margin:0 auto;max-width:1200px;padding:20px}.bank-header h1{color:#222;font-size:24px;margin:0 0 4px}.bank-header p{color:#666;font-size:14px;margin:0 0 18px;max-width:70ch}.bank-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:16px;margin-bottom:16px}.bank-btn{background:#fff;border:1px solid #ccc;border-radius:4px;color:#333;cursor:pointer;font-size:13px;font-weight:600;padding:9px 18px}.bank-btn:hover:not(:disabled){background:#f5f5f5}.bank-btn.primary{background:#1976d2;border-color:#1976d2;color:#fff}.bank-btn.primary:hover:not(:disabled){background:#1565c0}.bank-btn:disabled{cursor:not-allowed;opacity:.55}.bank-branch-select{align-items:center;color:#444;display:flex;font-size:13px;font-weight:600;gap:8px}.bank-branch-select select{border:1px solid #ddd;border-radius:4px;font-size:13px;padding:7px 10px}.bank-error{background:#ffebee;border-left:4px solid #c62828;color:#c62828}.bank-error,.bank-success{border-radius:4px;font-size:13px;margin-bottom:14px;padding:10px 14px}.bank-success{background:#e8f5e9;border-left:4px solid #2e7d32;color:#2e7d32}.bank-table-wrap{border-radius:4px;box-shadow:0 2px 8px #00000014;overflow-x:auto}.bank-table{background:#fff;border-collapse:collapse;font-size:14px;width:100%}.bank-table thead{background:#f5f5f5}.bank-table th{border-bottom:2px solid #ddd;color:#444;font-size:12px;font-weight:600;padding:10px 14px;text-align:left;text-transform:uppercase;white-space:nowrap}.bank-table td{border-bottom:1px solid #eee;padding:10px 14px}.bank-muted{color:#999;font-style:italic}.bank-active-row{background:#f1f8f1}.bank-table tbody tr:nth-child(2n):not(.bank-active-row){background:#f6f6f6}.bank-status{border-radius:10px;display:inline-block;font-size:11px;font-weight:700;padding:3px 9px;white-space:nowrap}.bank-status-active{background:#e8f5e9;color:#2e7d32}.bank-status-inactive{background:#f5f5f5;color:#888}.bank-row-actions{white-space:nowrap}.bank-btn-activate,.bank-btn-delete,.bank-btn-edit{border:none;border-radius:4px;cursor:pointer;font-size:11px;font-weight:600;margin-right:5px;padding:5px 10px}.bank-btn-activate{background:#1976d2;color:#fff}.bank-btn-activate:hover:not(:disabled){background:#1565c0}.bank-btn-edit{background:#9e9e9e;color:#fff}.bank-btn-edit:hover:not(:disabled){background:#757575}.bank-btn-delete{background:#f44336;color:#fff}.bank-btn-delete:hover:not(:disabled){background:#da190b}.bank-btn-activate:disabled,.bank-btn-delete:disabled,.bank-btn-edit:disabled{cursor:not-allowed;opacity:.55}.bank-note{color:#777;font-size:12px;line-height:1.5;margin-top:12px;max-width:80ch}.bank-modal-backdrop{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000}.bank-modal{background:#fff;border-radius:8px;box-shadow:0 10px 40px #0000004d;max-height:90vh;max-width:560px;overflow-y:auto;padding:24px;width:100%}.bank-modal h3{color:#222;font-size:18px;margin:0 0 16px}.bank-form-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:1fr 1fr;margin-bottom:8px}.bank-form-grid>div{display:flex;flex-direction:column;gap:5px}.bank-form-full{grid-column:1/-1}.bank-form-grid span{color:#555;font-size:12px;font-weight:600}.bank-form-grid input{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:8px 10px}.bank-form-grid small{color:#888;font-size:11.5px;line-height:1.4}.bank-actions{display:flex;gap:10px;margin-top:18px}.payroll-container{margin:0 auto;max-width:1600px;padding:20px}.payroll-header h1{color:#222;font-size:24px;margin:0 0 4px}.payroll-header p{color:#666;font-size:14px;margin:0 0 18px;max-width:70ch}.payroll-tabs{border-bottom:2px solid #eee;display:flex;gap:4px;margin-bottom:18px}.payroll-tabs button{background:none;border:none;border-bottom:3px solid #0000;color:#666;cursor:pointer;font-size:14px;font-weight:600;margin-bottom:-2px;padding:10px 18px}.payroll-tabs button:hover{color:#1976d2}.payroll-tabs button.active{border-bottom-color:#1976d2;color:#1976d2}.payroll-panel{display:flex;flex-direction:column;gap:14px}.payroll-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:16px}.payroll-select{align-items:center;color:#444;display:flex;font-size:13px;font-weight:600;gap:8px}.payroll-select input,.payroll-select select{border:1px solid #ddd;border-radius:4px;font-size:13px;padding:7px 10px;width:110px}.payroll-select select{width:auto}.payroll-btn{background:#fff;border:1px solid #ccc;border-radius:4px;color:#333;cursor:pointer;font-size:13px;font-weight:600;padding:9px 18px}.payroll-btn:hover:not(:disabled){background:#f5f5f5}.payroll-btn.primary{background:#1976d2;border-color:#1976d2;color:#fff}.payroll-btn.primary:hover:not(:disabled){background:#1565c0}.payroll-btn:disabled{cursor:not-allowed;opacity:.55}.payroll-error{background:#ffebee;border-left:4px solid #c62828;color:#c62828}.payroll-error,.payroll-success{border-radius:4px;font-size:13px;padding:10px 14px}.payroll-success{background:#e8f5e9;border-left:4px solid #2e7d32;color:#2e7d32}.payroll-note{color:#888;font-size:13px;font-style:italic}.payroll-period-box{align-items:center;background:#f8f9fa;border-radius:6px;display:flex;flex-wrap:wrap;gap:20px;padding:14px 16px}.payroll-period-box label{align-items:center;color:#444;display:flex;font-size:13px;font-weight:600;gap:8px}.payroll-period-box input[type=number]{border:1px solid #ddd;border-radius:4px;font-size:13px;padding:7px 10px;width:90px}.payroll-checkbox{align-items:center;display:flex;gap:6px}.payroll-print-row{display:flex;flex-wrap:wrap;gap:10px}.payroll-table-wrap{border-radius:4px;box-shadow:0 2px 8px #00000014;overflow-x:auto}.payroll-table{background:#fff;border-collapse:collapse;font-size:13px;width:100%}.payroll-table thead{background:#f5f5f5}.payroll-table th{border-bottom:2px solid #ddd;color:#444;font-size:11.5px;font-weight:600;padding:9px 12px;text-align:left;text-transform:uppercase;white-space:nowrap}.payroll-table td{border-bottom:1px solid #eee;padding:8px 12px;white-space:nowrap}.payroll-table input[type=number]{width:70px}.payroll-note-input,.payroll-table input[type=number]{border:1px solid #ddd;border-radius:4px;font-size:13px;padding:5px 7px}.payroll-note-input{width:160px!important}.payroll-table tbody tr:nth-child(2n){background:#f6f6f6}.payroll-total-row td{background:#f0f4f8;border-bottom:none;border-top:2px solid #ccc;color:#222;font-weight:700}.payroll-summary-table td,.payroll-summary-table th{text-align:right}.payroll-summary-table td:nth-child(2),.payroll-summary-table th:nth-child(2){text-align:left}.payroll-summary-table td:first-child,.payroll-summary-table th:first-child{text-align:center}.payroll-summary-table th{font-size:10px;line-height:1.25;padding:7px 6px;vertical-align:bottom;white-space:normal}.payroll-summary-table td{font-size:12px;padding:6px;white-space:nowrap}.payroll-row-actions{white-space:nowrap}.payroll-btn-edit{background:#1976d2;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:11px;font-weight:600;margin-right:5px;padding:5px 10px}.payroll-btn-edit:hover{background:#1565c0}.payroll-modal-backdrop{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000}.payroll-modal{background:#fff;border-radius:8px;box-shadow:0 10px 40px #0000004d;max-height:90vh;max-width:560px;overflow-y:auto;padding:24px;width:100%}.payroll-modal h3{color:#222;font-size:18px;margin:0 0 16px}.payroll-form-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:1fr 1fr;margin-bottom:8px}.payroll-form-grid>div{display:flex;flex-direction:column;gap:5px}.payroll-form-grid span{color:#555;font-size:12px;font-weight:600}.payroll-form-grid input{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:8px 10px}.payroll-actions{display:flex;gap:10px;margin-top:18px}.payroll-chip{border-radius:10px;display:inline-block;font-size:11.5px;font-weight:600;padding:2px 9px;white-space:nowrap}.payroll-chip.pending{background:#fff3e0;color:#e65100}.payroll-chip.counted{background:#e3f2fd;color:#1565c0}.payroll-chip.locked{background:#eceff1;color:#455a64}.payroll-period-box input[type=date]{border:1px solid #ddd;border-radius:4px;font-size:13px;padding:6px 9px}.payroll-ledger-cell{display:inline-flex;flex-direction:column;font-weight:600;gap:2px}.payroll-ledger-cell small{color:#666;font-size:11px;font-weight:400}.payroll-log-grid{grid-gap:18px;align-items:start;display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(420px,1fr))}.payroll-log-card{display:flex;flex-direction:column;gap:12px;min-width:0}.payroll-log-card h3{color:#333;font-size:15px;margin:0}.payroll-log-form{grid-gap:10px;background:#f8f9fa;border-radius:6px;display:grid;gap:10px;grid-template-columns:repeat(3,1fr);padding:12px}.payroll-log-form label{color:#444;display:flex;flex-direction:column;font-size:12px;font-weight:600;gap:4px}.payroll-log-form label.wide{grid-column:1/-1}.payroll-log-form input{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-size:13px;padding:7px 9px;width:100%}.payroll-log-buttons{display:flex;gap:8px;grid-column:1/-1}.payroll-table td.payroll-row-actions{display:flex;gap:6px}.payroll-multiselect{position:relative}.payroll-multiselect-btn{align-items:center;background:#fff;border:1px solid #ddd;border-radius:4px;color:#333;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:8px;justify-content:space-between;min-width:170px;padding:7px 10px;text-align:left}.payroll-multiselect-btn:hover{border-color:#999}.payroll-caret{color:#666;font-size:11px}.payroll-multiselect-menu{background:#fff;border:1px solid #ddd;border-radius:4px;box-shadow:0 4px 14px #00000026;left:0;margin-top:4px;max-height:280px;min-width:220px;overflow-y:auto;padding:6px 0;position:absolute;top:100%;z-index:40}.payroll-multiselect-actions{border-bottom:1px solid #eee;display:flex;gap:14px;margin-bottom:4px;padding:4px 12px 8px}.payroll-multiselect-actions button{background:none;border:none;color:#1976d2;cursor:pointer;font-size:12px;font-weight:600;padding:0}.payroll-multiselect-option{align-items:center;color:#333;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:8px;padding:6px 12px}.payroll-multiselect-option:hover{background:#f1f6fc}.payroll-summary-table tr.payroll-branch-row td{background:#e8eef6;color:#1f3a5f;font-size:12px;font-weight:700;padding:7px 8px;text-align:left}.payroll-summary-table tfoot .payroll-total-row td{font-size:12px;padding:8px 6px;text-align:right}.payroll-summary-table tfoot .payroll-total-row td:nth-child(2){text-align:left}.payroll-summary-table tr.payroll-subtotal-row td{background:#eef3f8;border-bottom:2px solid #c9d6e4;border-top:1px solid #c9d6e4;font-size:12px;font-weight:700;padding:7px 6px;text-align:right}.payroll-summary-table tr.payroll-subtotal-row td:nth-child(2){color:#1f3a5f;text-align:left}.payroll-ledger-cell input{width:78px}.payroll-table input.payroll-overridden{background-color:#fffacd;border-color:#ff9800;font-weight:600}.payroll-override-hint{background:none;border:none;color:#1976d2;cursor:pointer;font-size:11px;font-weight:600;padding:0;text-align:left}.payroll-override-hint:hover:not(:disabled){text-decoration:underline}.payroll-override-hint:disabled{color:#999;cursor:not-allowed}.cert-page{padding:20px 24px 40px}.cert-page-title{color:#14588f;margin:0 0 18px}.cert-layout{align-items:flex-start;display:flex;flex-wrap:wrap;gap:28px}.cert-form{background:#fff;border:1px solid #e2e8ec;border-radius:10px;box-shadow:0 2px 10px #14588f0f;display:flex;flex:0 0 300px;flex-direction:column;gap:14px;padding:20px}.cert-error{background:#fdecea;border:1px solid #f5c6c3;border-radius:6px;color:#b3261e;font-size:13px;padding:8px 10px}.cert-field{color:#3c4b54;display:flex;flex-direction:column;font-size:13px;font-weight:600;gap:5px}.cert-field em{color:#8a99a3;font-style:normal;font-weight:400}.cert-field input,.cert-field select{background:#fff;border:1px solid #cfd9df;border-radius:6px;color:#17232b;font-size:14px;outline:none;padding:8px 10px}.cert-field input:focus,.cert-field select:focus{border-color:#14588f;box-shadow:0 0 0 3px #14588f1f}.cert-actions{display:flex;gap:10px;margin-top:8px}.cert-btn{border:none;border-radius:7px;cursor:pointer;flex:1 1;font-size:14px;font-weight:600;padding:10px 14px}.cert-btn-primary{background:#14588f;color:#fff}.cert-btn-primary:hover:not(:disabled){background:#0c3a5e}.cert-btn-primary:disabled{cursor:not-allowed;opacity:.6}.cert-btn-secondary{background:#eef3f6;border:1px solid #cfd9df;color:#14588f}.cert-btn-secondary:hover{background:#e2eaf0}.cert-preview-wrap{flex:1 1 640px;max-width:1000px;min-width:320px}.cert-preview-inner{border-radius:6px;box-shadow:0 6px 24px #0c2a4229;overflow:hidden;position:relative;width:100%}.cert-preview-frame{background:#fff;border:none;left:0;position:absolute;top:0;transform-origin:top left}@media (max-width:900px){.cert-layout{flex-direction:column}.cert-form{flex:1 1 auto;width:100%}.cert-preview-wrap{width:100%}}.cert-history{background:#fff;border:1px solid #e2e8ec;border-radius:10px;box-shadow:0 2px 10px #14588f0f;margin-top:28px;padding:18px 20px}.cert-history-title{color:#14588f;font-size:16px;margin:0 0 12px}.cert-history-empty{color:#8a99a3;font-size:13px;margin:0}.cert-history-table-wrap{overflow-x:auto}.cert-history-table{border-collapse:collapse;font-size:13px;width:100%}.cert-history-table td,.cert-history-table th{border-bottom:1px solid #e2e8ec;padding:8px 10px;text-align:left;white-space:nowrap}.cert-history-table th{background:#f7fafc;color:#3c4b54;font-weight:600}.cert-btn-link{background:none;border:none;color:#14588f;cursor:pointer;font-size:13px;font-weight:600;padding:0}.cert-btn-link:hover{text-decoration:underline}.rt-container{margin:0 auto;max-width:1500px;padding:20px}.rt-header h1{color:#222;font-size:24px;margin:0 0 4px}.rt-header p{color:#666;font-size:14px;margin:0 0 18px}.rt-toolbar{gap:16px;margin-bottom:16px}.rt-toolbar,.rt-toolbar label{align-items:center;display:flex}.rt-toolbar label{color:#444;font-size:13px;font-weight:600;gap:8px}.rt-toolbar select{border:1px solid #ddd;border-radius:4px;font-size:13px;min-width:260px;padding:8px 10px}.rt-busy{color:#1976d2;font-size:13px;font-weight:600}.rt-error{background:#ffebee;border-left:4px solid #c62828;border-radius:4px;color:#c62828;font-size:13px;margin-bottom:14px;padding:10px 14px}.rt-table-wrap{border:1px solid #eee;border-radius:4px;margin-bottom:12px;max-height:560px;overflow:auto}.rt-table{border-collapse:collapse;font-size:12px;white-space:nowrap}.rt-table th{background:#f5f5f5;border-bottom:2px solid #ddd;color:#444;font-weight:600;padding:8px 10px;position:-webkit-sticky;position:sticky;text-align:left;top:0;z-index:1}.rt-table td{border-bottom:1px solid #eee;max-width:220px;overflow:hidden;padding:6px 10px;text-overflow:ellipsis}.rt-table tbody tr:nth-child(2n){background:#f6f6f6}.rt-sortable{cursor:pointer}.rt-sortable:hover{color:#1976d2}.rt-filter-cell{background:#fff;padding:4px 6px!important}.rt-filter-cell input{font-size:11px;font-weight:400}.rt-filter-cell input,.rt-table input{border:1px solid #ddd;border-radius:3px;box-sizing:border-box;padding:4px 6px;width:100%}.rt-table input{font-size:12px}.rt-empty{color:#999;padding:24px!important;text-align:center}.rt-row-actions{white-space:nowrap}.rt-btn-cancel,.rt-btn-save{border:none;border-radius:4px;cursor:pointer;font-size:11px;font-weight:600;margin-right:5px;padding:5px 10px}.rt-btn-save{background:#4caf50;color:#fff}.rt-btn-save:hover:not(:disabled){background:#45a049}.rt-btn-cancel{background:#9e9e9e;color:#fff}.rt-btn-cancel:hover:not(:disabled){background:#757575}.rt-btn-cancel:disabled,.rt-btn-save:disabled{cursor:not-allowed;opacity:.55}.rt-pagination{align-items:center;color:#444;display:flex;font-size:13px;gap:14px}.rt-btn{background:#fff;border:1px solid #ccc;border-radius:4px;cursor:pointer;font-size:13px;padding:8px 16px}.rt-btn:hover:not(:disabled){background:#f5f5f5}.rt-btn:disabled{cursor:not-allowed;opacity:.55}.bkp-container{margin:0 auto;max-width:1000px;padding:20px 24px 40px}.bkp-header h1{color:#222;font-size:24px;margin:0 0 4px}.bkp-header p{color:#666;font-size:14px;margin:0 0 20px}.bkp-panel{background:#fff;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:24px;padding:20px}.bkp-panel h2{color:#222;font-size:16px;margin:0 0 6px}.bkp-panel .bkp-desc{color:#666;font-size:13px;margin:0 0 16px}.bkp-btn{background:#fff;border:1px solid #ccc;border-radius:6px;color:#333;cursor:pointer;font-size:14px;font-weight:600;padding:10px 18px}.bkp-btn.primary{background:#1976d2;border-color:#1976d2;color:#fff}.bkp-btn.primary:hover:not(:disabled){background:#125ea3}.bkp-btn.danger{background:#c62828;border-color:#c62828;color:#fff}.bkp-btn.danger:hover:not(:disabled){background:#a01f1f}.bkp-btn:disabled{cursor:not-allowed;opacity:.6}.bkp-restore-warning{background:#fff3e0;border:1px solid #ffcc80;border-radius:6px;color:#7a4a00;font-size:13px;line-height:1.5;margin-bottom:16px;padding:14px 16px}.bkp-restore-warning strong{display:block;font-size:14px;margin-bottom:4px}.bkp-restore-form{display:flex;flex-direction:column;gap:12px;max-width:480px}.bkp-restore-form label{color:#444;display:flex;flex-direction:column;font-size:13px;font-weight:600;gap:6px}.bkp-restore-form input[type=text]{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:10px 12px}.bkp-restore-form input[type=text].confirm-match{border-color:#2e7d32}.bkp-table-wrap{border-radius:6px;overflow-x:auto}.bkp-table{border-collapse:collapse;font-size:13.5px;width:100%}.bkp-table th{background:#f5f5f5;border-bottom:2px solid #e0e0e0;color:#444;font-weight:600;padding:9px 10px;text-align:left;white-space:nowrap}.bkp-table td{border-bottom:1px solid #eee;padding:7px 10px}.bkp-table td.num,.bkp-table th.num{text-align:right}.bkp-table tbody tr:nth-child(2n){background:#fafafa}.bkp-empty{color:#999;padding:20px;text-align:center}.bkp-row-actions{display:flex;gap:8px}.bkp-link-btn{background:none;border:none;color:#1976d2;cursor:pointer;font-size:13px;font-weight:600;padding:0}.bkp-link-btn.danger{color:#c62828}.bkp-busy{color:#1976d2;font-size:13px;font-weight:400;margin-left:8px}.bulk-container{margin:0 auto;max-width:1100px;padding:20px 24px 40px}.bulk-header h1{color:#222;font-size:24px;margin:0 0 4px}.bulk-header p{color:#666;font-size:14px;margin:0 0 20px}.bulk-panel{background:#fff;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:20px;padding:20px}.bulk-panel h2{color:#222;font-size:16px;margin:0}.bulk-row{align-items:flex-end;display:flex;flex-wrap:wrap;gap:16px;margin-bottom:12px}.bulk-field{color:#444;display:flex;flex-direction:column;font-size:13px;font-weight:600;gap:6px}.bulk-field input[type=text],.bulk-field select{border:1px solid #ddd;border-radius:6px;font-size:14px;min-width:220px;padding:8px 10px}.bulk-hint{color:#666;font-size:13px;margin:0 0 14px}.bulk-file{color:#444;font-size:13px}.bulk-error{background:#ffebee;border:1px solid #ef9a9a;border-radius:6px;color:#b71c1c;font-size:13px;margin-bottom:12px;padding:10px 14px}.bulk-btn{background:#fff;border:1px solid #ccc;border-radius:6px;color:#333;cursor:pointer;font-size:14px;font-weight:600;padding:9px 16px}.bulk-btn.primary{background:#1976d2;border-color:#1976d2;color:#fff}.bulk-btn:disabled{cursor:not-allowed;opacity:.6}.bulk-summary{align-items:center;gap:12px;justify-content:space-between;margin-bottom:12px}.bulk-chips,.bulk-summary{display:flex;flex-wrap:wrap}.bulk-chips{gap:8px}.bulk-chip{background:#fff;border:1px solid #ccc;border-radius:16px;cursor:pointer;font-size:12.5px;padding:5px 12px}.bulk-chip.active{background:#1976d2;border-color:#1976d2;color:#fff}.bulk-chip.err.active{background:#c62828;border-color:#c62828}.bulk-table-wrap{border:1px solid #eee;border-radius:6px;max-height:480px;overflow:auto}.bulk-table{border-collapse:collapse;font-size:13px;width:100%}.bulk-table th{background:#f5f5f5;border-bottom:2px solid #e0e0e0;padding:8px 10px;position:-webkit-sticky;position:sticky;text-align:left;top:0;white-space:nowrap}.bulk-table td{border-bottom:1px solid #eee;padding:6px 10px}.bulk-table .num{text-align:right}.bulk-table tr.row-err{background:#fff5f5}.bulk-empty{color:#999;padding:20px;text-align:center}.bulk-status{border-radius:10px;font-size:11px;font-weight:700;margin-right:6px;padding:2px 8px}.s-NEW{background:#e3f2fd;color:#0d47a1}.s-PRICE_UPDATE{background:#fff3e0;color:#e65100}.s-UNCHANGED{background:#f5f5f5;color:#555}.s-POINTS_UPDATE{background:#e8f5e9;color:#1b5e20}.s-NOT_UPDATED{background:#fff8e1;color:#8d6e00}.bulk-table tr.row-warn{background:#fffdf3}.bulk-similar{color:#6d5a00;font-size:12px;margin-top:2px}.bulk-notice{background:#fff8e1;border:1px solid #ffe082;border-radius:6px;color:#5d4a00;font-size:13px;margin-top:14px;padding:10px 14px}.bulk-notice code{background:#0000000f;border-radius:4px;padding:1px 5px}.bulk-tabs{display:flex;gap:6px;margin-bottom:14px}.bulk-tab{background:#fff;border:1px solid #ccc;border-radius:6px;color:#444;cursor:pointer;font-size:14px;font-weight:600;padding:8px 18px}.bulk-tab.active{background:#1976d2;border-color:#1976d2;color:#fff}.s-ERROR{background:#ffebee;color:#b71c1c}.bulk-actions{display:flex;justify-content:flex-end;margin-top:14px}.rp-page{margin:0 auto;max-width:1180px;padding:20px 24px 40px}.rp-header h1{color:#222;font-size:24px;margin:0 0 4px}.rp-header p{color:#666;font-size:14px;margin:0 0 16px}.rp-filters{align-items:flex-end;gap:12px 18px;margin-bottom:18px}.rp-filters,.rp-periods{display:flex;flex-wrap:wrap}.rp-periods{gap:6px}.rp-pill{background:#fff;border:1px solid #c9ced6;border-radius:20px;color:#444;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px}.rp-pill:hover{border-color:#1976d2;color:#1976d2}.rp-pill.active{background:#1976d2;border-color:#1976d2;color:#fff}.rp-btn:focus-visible,.rp-name:focus-visible,.rp-pill:focus-visible{outline:2px solid #1976d2;outline-offset:2px}.rp-custom{display:flex;flex-wrap:wrap;gap:12px}.rp-branch,.rp-custom label{color:#555;display:flex;flex-direction:column;font-size:12px;font-weight:600;gap:4px}.rp-branch select,.rp-custom input{background:#fff;border:1px solid #ccc;border-radius:6px;font-size:14px;padding:7px 9px}.rp-range{align-self:center;color:#333;font-size:14px;font-weight:600;margin-left:auto}.rp-stats{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));margin-bottom:18px}.rp-stat{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:12px 14px}.rp-stat-value{font-feature-settings:"tnum";color:#1a1a1a;font-size:22px;font-variant-numeric:tabular-nums;font-weight:700}.rp-stat-label{color:#555;font-size:13px;margin-top:2px}.rp-stat-hint{color:#888;font-size:11.5px;margin-top:3px}.rp-stat.good .rp-stat-value{color:#1b7a3a}.rp-stat.warn .rp-stat-value{color:#b45309}.rp-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:18px;padding:16px 18px}.rp-card h2{color:#222;font-size:16px;margin:0 0 10px}.rp-card-head{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:10px}.rp-card-head h2{margin:0}.rp-grid{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(380px,1fr))}.rp-grid .rp-card{margin-bottom:0}.rp-grid{margin-bottom:18px}.rp-btn{background:#fff;border:1px solid #c9ced6;border-radius:6px;color:#333;cursor:pointer;font-size:13px;font-weight:600;padding:7px 14px}.rp-btn:hover{border-color:#1976d2;color:#1976d2}.rp-table-wrap{overflow-x:auto}.rp-table{border-collapse:collapse;font-size:13.5px;width:100%}.rp-table th{background:#f5f6f8;border-bottom:2px solid #e0e0e0;color:#444;font-size:12.5px;padding:8px 10px;text-align:left;white-space:nowrap}.rp-table td{border-bottom:1px solid #eee;padding:8px 10px;vertical-align:top}.rp-table .num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.rp-table tfoot td{background:#fafafa;border-bottom:none;border-top:2px solid #e0e0e0;font-weight:700}.rp-table tr.rp-open td{background:#f3f8ff}.rp-detail-row>td{background:#f9fbff;border-bottom:1px solid #dbe7f7;padding:0 0 12px 24px}.rp-detail th{background:#eef3fb}.rp-detail td,.rp-detail th{font-size:12.5px}.rp-name{align-items:center;background:none;border:none;color:#0d47a1;cursor:pointer;display:inline-flex;font-size:14px;font-weight:700;gap:6px;padding:2px 0;text-align:left}.rp-caret{color:#6b7a90;font-size:12px;width:12px}.rp-chips{display:flex;flex-wrap:wrap;gap:5px}.rp-chip{align-items:center;border-radius:12px;display:inline-flex;font-size:12.5px;gap:5px;padding:2px 9px;white-space:nowrap}.rp-chip b{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.rp-chip.service{background:#e3effd;color:#0d3f82}.rp-chip.role{background:#eef0f3;color:#4a525e}.rp-steps{align-items:center;margin-top:12px}.rp-pay{border-radius:10px;font-size:11.5px;font-weight:700;padding:1px 8px}.rp-pay.paid{background:#e6f4ea;color:#1b7a3a}.rp-pay.partial{background:#fff3e0;color:#b45309}.rp-pay.unpaid{background:#fdecea;color:#b3261e}.rp-flow{align-items:flex-end;display:flex;flex-wrap:wrap;gap:10px 26px}.rp-flow>div{display:flex;flex-direction:column}.rp-flow b{font-feature-settings:"tnum";color:#1a1a1a;font-size:22px;font-variant-numeric:tabular-nums}.rp-flow span{color:#666;font-size:12.5px}.rp-flow .rp-sep{align-self:stretch;background:#e0e0e0;width:1px}.rp-flow .rp-bad b{color:#b3261e}.rp-notes{color:#666;font-size:12.5px;line-height:1.6;margin:14px 0 0;padding-left:18px}.rp-muted{color:#8a8f98}.rp-small{font-size:12px;margin:10px 0 0}.rp-empty{background:#fff;border:1px dashed #d0d4da;border-radius:8px;color:#888;margin-bottom:18px;padding:28px;text-align:center}.rp-error{background:#fdecea;border:1px solid #f2b8b5;border-radius:6px;color:#b3261e;font-size:14px;padding:12px 14px}.rp-loading{color:#777;padding:24px}.rp-stale{opacity:.55;transition:opacity .15s}@media (max-width:720px){.rp-page{padding:14px 12px 30px}.rp-range{margin-left:0;width:100%}.rp-grid{grid-template-columns:1fr}.rp-stat-value{font-size:19px}}@media (prefers-reduced-motion:reduce){.rp-stale{transition:none}}.App{background:linear-gradient(180deg,#f8fafc,#eef2f7);color:#102a43;display:flex;flex-direction:column;min-height:100vh}.navbar{background:linear-gradient(90deg,#1f3b57,#2d5d86);box-shadow:0 8px 24px #102a4333;color:#fff;padding:0;position:-webkit-sticky;position:sticky;top:0;z-index:100}.navbar-container{align-items:center;display:flex;gap:.75rem;justify-content:space-between;margin:0 auto;max-width:1280px;padding:.55rem 1rem;width:100%}.navbar-title{font-size:1.05rem;font-weight:700;letter-spacing:.2px;white-space:nowrap}.nav-menu{flex-wrap:wrap;gap:.6rem;list-style:none;margin:0;padding:0}.nav-menu,.nav-menu li{display:flex}.nav-menu a{border:1px solid #0000;border-radius:999px;color:#fff;font-size:.84rem;font-weight:500;padding:.35rem .8rem;text-decoration:none;transition:background-color .2s,border-color .2s,transform .2s}.nav-menu a:hover{background-color:#ffffff2e;border-color:#ffffff52;transform:translateY(-1px)}.nav-menu a.active{background-color:#fff3;border-color:#ffffff73;box-shadow:inset 0 0 0 1px #ffffff24}.nav-menu button{background:none;border:1px solid #0000;border-radius:999px;color:#fff;cursor:pointer;font-family:inherit;font-size:.84rem;font-weight:500;padding:.35rem .8rem;transition:background-color .2s,border-color .2s}.nav-menu button:hover{background-color:#ffffff2e;border-color:#ffffff52}.nav-menu button.active{background-color:#fff3;border-color:#ffffff73}.nav-caret{font-size:.7rem;opacity:.8}.subnav{background:#0000002e;border-top:1px solid #ffffff1f}.subnav-container{display:flex;gap:.4rem;margin:0 auto;max-width:1280px;overflow-x:auto;padding:.35rem 1rem}.subnav-container a{border-radius:6px;color:#e7edf5;font-size:.83rem;padding:.3rem .85rem;text-decoration:none;white-space:nowrap}.subnav-container a:hover{background:#ffffff24;color:#fff}.subnav-container a.active{background:#ffffff3d;color:#fff;font-weight:600}@media (max-width:980px){.nav-menu button{border-radius:10px;width:100%}}.menu-toggle{align-items:center;background:#ffffff1f;border:1px solid #ffffff59;border-radius:8px;cursor:pointer;display:none;flex-direction:column;gap:4px;height:30px;justify-content:center;width:34px}.menu-toggle span{background:#fff;border-radius:2px;height:2px;width:16px}.user-info{align-items:center;display:flex;flex-wrap:wrap;gap:.6rem;justify-content:flex-end;margin-left:auto}.user-name{color:#ecf0f1;font-size:.82rem;font-weight:500;white-space:nowrap}.logout-button{background-color:#d93025;border:none;border-radius:999px;color:#fff;cursor:pointer;font-size:.82rem;font-weight:600;padding:.36rem .8rem;transition:background-color .2s,transform .2s}.logout-button:hover{background-color:#b3261e;transform:translateY(-1px)}.container{flex:1 1;margin:.8rem auto;max-width:1280px;padding:.2rem 1rem 1rem;width:100%}.footer{background-color:#1f3b57;color:#d9e2ec;font-size:.76rem;margin-top:auto;padding:.45rem;text-align:center}.footer p{margin:0}@media (max-width:980px){.navbar-container{flex-wrap:wrap;justify-content:space-between}.navbar-title{text-align:left;width:auto}.menu-toggle{display:flex}.nav-menu{display:none;flex-direction:column;gap:.45rem;margin-top:.2rem;width:100%}.nav-menu.open{display:flex}.nav-menu li{width:100%}.nav-menu a{border-radius:10px;text-align:center;width:100%}.user-info{justify-content:center;margin-left:0;width:100%}}.branch-switcher{background:#ffffff1f;border:1px solid #ffffff80;border-radius:6px;color:#fff;font-size:.82rem;font-weight:600;padding:.3rem .5rem}.branch-switcher option{color:#102a43}.acting-banner{background:#ffb300;color:#3e2700;font-size:.85rem;padding:.35rem 1rem;text-align:center}.acting-banner button{background:#0000;border:1px solid #3e2700;border-radius:999px;color:#3e2700;cursor:pointer;font-weight:700;margin-left:12px;padding:2px 10px}*{box-sizing:border-box;margin:0;padding:0}body{background-color:#f5f5f5;color:#333;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.2}#root,body,html{height:100%;width:100%}.no-spinner::-webkit-inner-spin-button,.no-spinner::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.no-spinner{-moz-appearance:textfield}