:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.allocation-manager{padding:20px;max-width:1400px;margin:0 auto}.page-header{margin-bottom:30px;text-align:center}.page-header h1{color:#2c3e50;margin-bottom:10px}.page-header p{color:#7f8c8d;font-size:16px}.controls{margin-bottom:20px;display:flex;flex-wrap:wrap;gap:20px;align-items:center;background-color:#f8f9fa;padding:15px;border-radius:8px;border:1px solid #e9ecef}.search-controls{display:flex;gap:15px;align-items:center;flex:1;min-width:300px}.date-controls{display:flex;gap:15px;align-items:center;flex-wrap:wrap}.date-filter{display:flex;align-items:center;gap:8px}.date-filter label{font-size:14px;font-weight:500;color:#495057;white-space:nowrap}.date-input{padding:8px 12px;border:1px solid #ddd;border-radius:5px;font-size:14px;width:150px}.clear-filters-btn{padding:8px 16px;background-color:#6c757d;color:#fff;border:none;border-radius:5px;cursor:pointer;font-size:13px;white-space:nowrap}.action-controls{display:flex;gap:10px}.search-input{flex:1;padding:10px;border:1px solid #ddd;border-radius:5px;font-size:14px}.refresh-btn{padding:10px 20px;background-color:#3498db;color:#fff;border:none;border-radius:5px;cursor:pointer;font-size:14px}.refresh-btn:hover{background-color:#2980b9}.refresh-btn:disabled{background-color:#bdc3c7;cursor:not-allowed}.tab-navigation{display:flex;border-bottom:2px solid #ecf0f1;margin-bottom:20px}.tab{padding:12px 20px;background:none;border:none;cursor:pointer;font-size:14px;color:#7f8c8d;border-bottom:3px solid transparent;transition:all .3s ease}.tab:hover{color:#2c3e50;background-color:#f8f9fa}.tab.active{color:#2c3e50;border-bottom-color:#3498db;background-color:#f8f9fa}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin-bottom:30px}.summary-card{background:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 10px #0000001a;border-left:4px solid #3498db}.summary-card h3{margin:0 0 15px;color:#2c3e50;font-size:18px}.stats{display:flex;flex-direction:column;gap:10px}.stat{display:flex;justify-content:space-between;align-items:center}.stat-label{color:#7f8c8d;font-size:14px}.stat-value{font-weight:700;color:#2c3e50;font-size:16px}.quick-actions{display:flex;flex-direction:column;gap:10px}.product-select{padding:8px;border:1px solid #ddd;border-radius:4px;font-size:14px}.manual-note{color:#7f8c8d;font-style:italic;font-size:12px}.allocation-form{background:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 10px #0000001a;margin-bottom:20px}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;margin-bottom:15px}.form-group{display:flex;flex-direction:column}.form-group label{margin-bottom:5px;color:#2c3e50;font-weight:500;font-size:14px}.form-group input,.form-group select{padding:8px;border:1px solid #ddd;border-radius:4px;font-size:14px}.allocate-btn{padding:12px 24px;background-color:#e74c3c;color:#fff;border:none;border-radius:5px;cursor:pointer;font-size:16px;font-weight:500}.allocate-btn:hover{background-color:#c0392b}.allocate-btn:disabled{background-color:#95a5a6;cursor:not-allowed}.allocate-quick-btn{background-color:#27ae60!important;color:#fff!important;font-weight:600;font-size:12px;padding:6px 10px;border-radius:4px;transition:all .3s ease}.allocate-quick-btn:hover{background-color:#219a52!important;transform:translateY(-1px);box-shadow:0 2px 4px #27ae604d}.table-container{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 10px #0000001a}.table-container table{width:100%;border-collapse:collapse}.table-container th{background-color:#2c3e50;color:#fff;padding:15px 10px;text-align:left;font-weight:600;font-size:14px;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #34495e}.table-container td{padding:12px 10px;border-bottom:1px solid #ecf0f1;font-size:14px;color:#2c3e50;font-weight:500;line-height:1.4}.table-container td:nth-child(1),.table-container td:nth-child(2),.table-container td:nth-child(3),.table-container td:nth-child(4),.table-container td:nth-child(5){color:#1a252f;font-weight:600;background-color:#fefefe}.table-container td:nth-child(3){font-family:Courier New,monospace;font-weight:700;color:#2c3e50;background-color:#f8f9fa;border-left:3px solid #3498db}.table-container th:nth-child(5),.table-container td:nth-child(5){max-width:180px;min-width:140px;width:180px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px;padding:10px 8px}.table-container td:nth-child(5):hover{white-space:normal;overflow:visible;position:relative;z-index:10;background-color:#fff;box-shadow:0 2px 8px #00000026;border-radius:4px}.table-container tr:hover{background-color:#f1f3f4;transform:translate(2px);transition:all .2s ease}.table-container tr:hover td{color:#1a252f;font-weight:600}.table-container tr.insufficient{background-color:#fdf2f2}.table-container tr.insufficient:hover{background-color:#fbeaea}.committed{color:#d35400;font-weight:600;background-color:#fef5e7;padding:2px 6px;border-radius:4px;border:1px solid #f39c12}.available{color:#27ae60;font-weight:600;background-color:#eafaf1;padding:2px 6px;border-radius:4px;border:1px solid #2ecc71}.allocated{color:#2980b9;font-weight:600;background-color:#ebf3fd;padding:2px 6px;border-radius:4px;border:1px solid #3498db}.need-allocate{color:#c0392b;font-weight:600;background-color:#fadbd8;padding:2px 6px;border-radius:4px;border:1px solid #e74c3c}.on-hand{color:#8e44ad;font-weight:600;background-color:#f4ecf7;padding:2px 6px;border-radius:4px;border:1px solid #9b59b6}.status{padding:4px 8px;border-radius:12px;font-size:12px;font-weight:500;text-transform:uppercase}.status.complete{background-color:#d5f4e6;color:#27ae60}.status.partial{background-color:#fef9e7;color:#f39c12}.small-btn{padding:5px 10px;font-size:12px;border:none;border-radius:3px;cursor:pointer;background-color:#3498db;color:#fff}.small-btn:hover{background-color:#2980b9}.small-btn:disabled{background-color:#bdc3c7;cursor:not-allowed}.deallocate-btn{background-color:#e74c3c}.deallocate-btn:hover{background-color:#c0392b}.allocation-summary-table{margin-top:20px}.allocation-summary-table h3{margin-bottom:15px;color:#2c3e50}.filters{display:flex;gap:15px;align-items:center;margin-bottom:20px;flex-wrap:wrap}.filter-input{padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px}.date-filters{display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid #ddd;border-radius:4px;background-color:#f8f9fa}.date-filters label{font-weight:500;color:#495057;font-size:13px}.date-input{padding:4px 8px;border:1px solid #ced4da;border-radius:3px;font-size:13px;min-width:140px}.clear-filters-btn{padding:8px 12px;background-color:#6c757d;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:13px}.clear-filters-btn:hover{background-color:#5a6268}.date-presets{display:flex;align-items:center;gap:5px;font-size:13px}.date-presets span{color:#6c757d;font-weight:500}.preset-btn{padding:4px 8px;background-color:#e9ecef;color:#495057;border:1px solid #ced4da;border-radius:3px;cursor:pointer;font-size:12px;white-space:nowrap}.preset-btn:hover{background-color:#dee2e6}.filter-section{background:#f8f9fa;padding:15px;border-radius:8px;margin-bottom:15px;border:1px solid #e9ecef}.filter-row{display:flex;gap:15px;align-items:end;flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;min-width:150px}.filter-group label{font-size:12px;font-weight:600;color:#495057;margin-bottom:5px}.filter-group input{padding:8px 12px;border:1px solid #ced4da;border-radius:4px;font-size:14px;background:#fff;color:#495057;font-family:inherit}.filter-group input[type=date]{color:#495057;background-color:#fff;border:2px solid #ced4da;font-weight:500}.filter-group input[type=date]::-webkit-calendar-picker-indicator{background-color:#007bff;border-radius:3px;cursor:pointer}.filter-group input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 .2rem #007bff40}.filter-btn{padding:8px 16px;background-color:#007bff;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;height:fit-content;margin-left:10px}.filter-btn:hover{background-color:#0056b3}.filter-btn:disabled{background-color:#6c757d;cursor:not-allowed}.clear-btn{background-color:#6c757d!important;margin-left:5px!important}.clear-btn:hover{background-color:#5a6268!important}.table-container td.available,.table-container td.need-allocate,.table-container td.allocated,.table-container td.committed,.table-container td.on-hand{text-align:center;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.negative-value{color:#fff!important;background-color:#e74c3c!important;padding:3px 8px;border-radius:4px;font-weight:700;border:1px solid #c0392b}.zero-value{color:#7f8c8d;background-color:#ecf0f1;padding:2px 6px;border-radius:4px;font-weight:500}.high-value{color:#155724;background-color:#d4edda;padding:2px 6px;border-radius:4px;font-weight:600;border:1px solid #c3e6cb}.medium-value{color:#856404;background-color:#fff3cd;padding:2px 6px;border-radius:4px;font-weight:500;border:1px solid #ffeaa7}@media (max-width: 768px){.allocation-manager{padding:10px}.summary-cards,.form-row{grid-template-columns:1fr}.search-controls{flex-direction:column;align-items:stretch}.tab-navigation{flex-wrap:wrap}.tab{flex:1;min-width:120px}.table-container{overflow-x:auto}.table-container table{min-width:800px}}.loading{opacity:.6;pointer-events:none}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.summary-card,.table-container,.allocation-form{animation:fadeIn .3s ease-in-out}.table-container tbody tr:nth-child(2n){background-color:#fafbfc}.table-container tbody tr:nth-child(2n) td:nth-child(1),.table-container tbody tr:nth-child(2n) td:nth-child(2),.table-container tbody tr:nth-child(2n) td:nth-child(3),.table-container tbody tr:nth-child(2n) td:nth-child(4),.table-container tbody tr:nth-child(2n) td:nth-child(5){background-color:#f5f6f7}.table-container td:nth-child(5){font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-weight:600;color:#5d4037}.table-container td:nth-child(1){font-family:Courier New,monospace;font-weight:700;color:#1565c0;border-left:3px solid #2196f3;background-color:#e3f2fd}.no-pos-message,.select-product-message{padding:10px;border-radius:5px;background-color:#f8f9fa;border:1px solid #dee2e6;margin-top:5px}.selected-po-details{margin:15px 0;padding:15px;background-color:#f0f8ff;border-radius:8px;border:1px solid #b0d4f1}.po-info-card h4{margin:0 0 10px;color:#2c3e50;font-size:16px}.po-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:8px;font-size:14px}.po-details span{color:#444;padding:4px 0}.po-details strong{color:#2c3e50}.form-group select{min-width:300px}.form-group select option{padding:8px}.form-group select:focus{outline:none;border-color:#3498db;box-shadow:0 0 5px #3498db4d}.allocation-form .form-row{gap:20px}.allocation-form .form-group label{font-weight:600;color:#2c3e50;margin-bottom:8px}.form-group select[required]{border:2px solid #3498db}.form-group select[required]:invalid{border-color:#e74c3c}.form-group select[required]:valid{border-color:#27ae60}.allocation-actions{display:flex;flex-direction:column;gap:5px;min-width:200px}.allocate-onhand-btn{background-color:#27ae60!important;color:#fff!important;font-weight:600;font-size:11px;padding:5px 8px;border-radius:4px;transition:all .3s ease;white-space:nowrap}.allocate-onhand-btn:hover{background-color:#219a52!important;transform:translateY(-1px);box-shadow:0 2px 4px #27ae604d}.allocate-incoming-btn{background-color:#3498db!important;color:#fff!important;font-weight:600;font-size:11px;padding:5px 8px;border-radius:4px;transition:all .3s ease;white-space:nowrap}.allocate-incoming-btn:hover{background-color:#2980b9!important;transform:translateY(-1px);box-shadow:0 2px 4px #3498db4d}.no-availability{font-size:11px;color:#e74c3c;font-weight:600;text-align:center;padding:5px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:12px;width:90%;max-width:800px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 25px;border-bottom:1px solid #dee2e6;background-color:#f8f9fa;border-radius:12px 12px 0 0}.modal-header h3{margin:0;color:#2c3e50;font-size:18px}.modal-close{background:none;border:none;font-size:24px;cursor:pointer;color:#6c757d;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .3s ease}.modal-close:hover{background-color:#e9ecef;color:#dc3545}.modal-body{padding:25px}.order-info{background-color:#f8f9fa;padding:15px;border-radius:8px;margin-bottom:20px;border-left:4px solid #007bff}.order-info h4{margin:0 0 10px;color:#2c3e50;font-size:16px}.order-info p{margin:5px 0;color:#495057;font-size:14px}.po-selection h4{margin:0 0 15px;color:#2c3e50;font-size:16px}.po-list{display:flex;flex-direction:column;gap:15px}.po-option{border:1px solid #dee2e6;border-radius:8px;padding:15px;background-color:#fff;transition:all .3s ease}.po-option:hover{border-color:#007bff;box-shadow:0 4px 12px #007bff1a}.po-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.po-header h5{margin:0;color:#2c3e50;font-size:16px}.po-status{padding:4px 8px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase}.po-status.o,.po-status.dr{background-color:#e3f2fd;color:#1976d2}.po-status.p{background-color:#fff3e0;color:#f57c00}.po-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;margin-bottom:15px;font-size:13px}.po-info-grid span{color:#495057}.po-allocation{display:flex;align-items:center;gap:15px;padding-top:15px;border-top:1px solid #dee2e6}.allocation-input{display:flex;align-items:center;gap:10px;flex:1}.allocation-input label{font-weight:600;color:#495057;white-space:nowrap}.allocation-input input{width:80px;padding:6px 8px;border:1px solid #ced4da;border-radius:4px;font-size:14px}.allocation-input input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.max-qty{font-size:12px;color:#6c757d;white-space:nowrap}.allocate-from-po-btn{background-color:#28a745;color:#fff;border:none;padding:8px 16px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .3s ease;white-space:nowrap}.allocate-from-po-btn:hover{background-color:#218838;transform:translateY(-1px);box-shadow:0 4px 8px #28a7454d}.allocate-from-po-btn:disabled{background-color:#6c757d;cursor:not-allowed;transform:none;box-shadow:none}.no-pos{text-align:center;padding:30px;color:#6c757d;font-style:italic}.inventory-allocation-modal{max-width:500px;width:90%}.allocation-details{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;padding:15px;margin-bottom:20px}.allocation-details .detail-row{margin-bottom:8px;display:flex;align-items:center;font-size:14px}.allocation-details .detail-row strong{min-width:140px;color:#2c3e50}.allocation-form .form-group{margin-bottom:15px}.allocation-form .form-group label{display:block;margin-bottom:5px;font-weight:600;color:#2c3e50}.allocation-form input[type=number],.allocation-form textarea{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;font-size:14px}.allocation-form input[type=number]:focus,.allocation-form textarea:focus{outline:none;border-color:#8e44ad;box-shadow:0 0 0 2px #8e44ad33}.allocation-warning{background-color:#fff3cd;border:1px solid #ffeaa7;border-radius:6px;padding:12px 15px;margin-top:15px;color:#856404;font-size:13px;line-height:1.4}.allocation-warning strong{color:#856404}.modal-footer .allocate-btn{background-color:#8e44ad;color:#fff}.modal-footer .allocate-btn:hover{background-color:#7d3c98}.modal-footer .allocate-btn:disabled{background-color:#bdc3c7;cursor:not-allowed}.allocation-actions{display:flex;flex-direction:column;gap:5px;align-items:stretch}.print-module{padding:20px;max-width:1200px;margin:0 auto}.print-controls.no-print{margin-bottom:30px}.controls-header{text-align:center;margin-bottom:30px}.controls-header h2{color:#2c3e50;margin-bottom:10px}.controls-header p{color:#7f8c8d;font-size:16px}.report-selector{margin-bottom:30px}.report-selector h3{color:#2c3e50;margin-bottom:15px}.report-types{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:15px}.report-type{background:#fff;border:2px solid #ecf0f1;border-radius:8px;padding:15px;cursor:pointer;transition:all .3s ease}.report-type:hover{border-color:#3498db;box-shadow:0 4px 12px #3498db1a}.report-type.active{border-color:#3498db;background-color:#f8f9fa;box-shadow:0 4px 12px #3498db26}.report-type h4{color:#2c3e50;margin:0 0 8px;font-size:16px}.report-type p{color:#7f8c8d;margin:0;font-size:14px;line-height:1.4}.report-filters{margin-bottom:30px}.report-filters h3{color:#2c3e50;margin-bottom:15px}.print-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;background:#f8f9fa;padding:20px;border-radius:8px;border:1px solid #e9ecef}.filter-group{display:flex;flex-direction:column}.filter-group label{font-weight:600;color:#495057;margin-bottom:5px;font-size:14px}.filter-group input,.filter-group select{padding:8px 12px;border:1px solid #ced4da;border-radius:4px;font-size:14px;background:#fff}.filter-group input:focus,.filter-group select:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 .2rem #007bff40}.print-actions{display:flex;gap:15px;justify-content:center}.generate-btn{background-color:#28a745;color:#fff;border:none;padding:12px 24px;border-radius:6px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease}.generate-btn:hover:not(:disabled){background-color:#218838;transform:translateY(-1px);box-shadow:0 4px 8px #28a7454d}.generate-btn:disabled{background-color:#6c757d;cursor:not-allowed;transform:none}.reprint-btn{background-color:#007bff;color:#fff;border:none;padding:12px 24px;border-radius:6px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease}.reprint-btn:hover{background-color:#0056b3;transform:translateY(-1px);box-shadow:0 4px 8px #007bff4d}.print-content{margin-top:30px}.worksheet,.report{background:#fff;padding:30px;margin:20px 0;border:1px solid #ddd;border-radius:8px;box-shadow:0 2px 10px #0000001a;font-family:Arial,sans-serif;color:#000;line-height:1.4}.worksheet-header,.report-header{border-bottom:3px solid #2c3e50;margin-bottom:25px;padding-bottom:15px}.worksheet-header h1,.report-header h1{margin:0 0 15px;color:#2c3e50;font-size:24px;text-align:center;text-transform:uppercase;font-weight:700}.header-info,.header-details{display:flex;justify-content:space-between;align-items:flex-start;margin-top:15px}.po-info,.po-details,.print-info{flex:1}.vendor-details{text-align:right;flex:1}.po-info strong,.po-details h2{font-size:18px;color:#2c3e50}.vendor-details h3{margin:0 0 10px;color:#2c3e50;font-size:16px}.receiving-instructions,.instructions{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;padding:15px;margin:20px 0}.receiving-instructions h3,.instructions h3{margin:0 0 10px;color:#495057;font-size:16px}.receiving-instructions ol,.instructions ol{margin:0;padding-left:20px}.receiving-instructions li,.instructions li{margin:5px 0;color:#495057}.worksheet-table,.report-table,.allocation-table,.verification-table,.schedule-table,.status-table{width:100%;border-collapse:collapse;margin:20px 0;font-size:12px}.worksheet-table th,.report-table th,.allocation-table th,.verification-table th,.schedule-table th,.status-table th{background-color:#2c3e50;color:#fff;padding:10px 8px;text-align:left;font-weight:600;font-size:11px;text-transform:uppercase;border:1px solid #34495e}.worksheet-table td,.report-table td,.allocation-table td,.verification-table td,.schedule-table td,.status-table td{padding:8px;border:1px solid #ddd;font-size:11px;vertical-align:top}.worksheet-table tbody tr:nth-child(2n),.report-table tbody tr:nth-child(2n),.allocation-table tbody tr:nth-child(2n),.verification-table tbody tr:nth-child(2n),.schedule-table tbody tr:nth-child(2n),.status-table tbody tr:nth-child(2n){background-color:#f8f9fa}.qty{text-align:center;font-weight:600}.currency{text-align:right;font-weight:600}.fill-in{text-align:center;border-bottom:1px solid #000;min-height:20px;background:#fff}.status{text-align:center;font-weight:600;text-transform:uppercase;font-size:10px}.allocations{max-width:200px;font-size:10px;line-height:1.2}.allocation-summary{font-weight:600;color:#2c3e50;margin-bottom:2px}.allocation-details{font-size:9px;color:#666;line-height:1.1;word-wrap:break-word}.status.complete,.status.allocated{color:#28a745}.status.pending,.status.partial{color:#ffc107}.status.not_started{color:#dc3545}.status.overdue{color:#dc3545;background-color:#ffe6e6}.worksheet-footer,.verification-footer{display:flex;justify-content:space-between;align-items:flex-end;margin-top:30px;padding-top:20px;border-top:2px solid #eee}.totals{flex:1}.totals p{margin:5px 0;font-weight:600}.signatures{display:flex;gap:30px;flex:1;justify-content:flex-end}.signature-box{text-align:center;min-width:200px}.signature-box p{margin:10px 0;border-bottom:1px solid #000;padding-bottom:5px}.summary-stats{display:flex;justify-content:space-around;background-color:#f8f9fa;padding:15px;border-radius:6px;margin:20px 0}.stat{text-align:center}.stat .label{display:block;font-size:12px;color:#6c757d;margin-bottom:5px}.stat .value{display:block;font-size:16px;font-weight:600;color:#2c3e50}.date-group{margin:30px 0;page-break-inside:avoid}.date-group h3{background-color:#e9ecef;padding:10px 15px;margin:0 0 15px;border-radius:4px;color:#495057;font-size:14px}.day-schedule{margin:30px 0;page-break-inside:avoid}.day-header{display:flex;justify-content:space-between;align-items:center;background-color:#2c3e50;color:#fff;padding:15px 20px;border-radius:6px;margin-bottom:15px}.day-header h2{margin:0;font-size:18px}.day-summary{display:flex;gap:20px;font-size:14px}.day-summary span{background-color:#ffffff1a;padding:5px 10px;border-radius:4px}.status-summary{display:flex;justify-content:space-around;background-color:#f8f9fa;padding:15px;border-radius:6px;margin:20px 0}.summary-item{text-align:center}.summary-item .label{display:block;font-size:12px;color:#6c757d;margin-bottom:5px}.summary-item .value{display:block;font-size:16px;font-weight:600;color:#2c3e50}.allocation-detail{font-family:Courier New,monospace;font-size:10px;max-width:150px;word-break:break-all}.products{font-size:10px;max-width:200px;word-wrap:break-word}@media print{.no-print{display:none!important}.print-content{margin:0}.worksheet,.report{margin:0;padding:20px;border:none;box-shadow:none;page-break-after:always}.worksheet:last-child,.report:last-child{page-break-after:auto}.worksheet-table,.report-table,.allocation-table,.verification-table,.schedule-table,.status-table{font-size:10px}.worksheet-table th,.report-table th,.allocation-table th,.verification-table th,.schedule-table th,.status-table th{font-size:9px;padding:6px 4px}.worksheet-table td,.report-table td,.allocation-table td,.verification-table td,.schedule-table td,.status-table td{padding:4px;font-size:9px}.day-schedule,.date-group,.signatures{page-break-inside:avoid}.status.overdue{background-color:#f0f0f0!important;color:#000!important}}@media (max-width: 768px){.print-module{padding:10px}.report-types,.print-filters{grid-template-columns:1fr}.print-actions{flex-direction:column;align-items:center}.header-info,.header-details{flex-direction:column;gap:15px}.vendor-details{text-align:left}.summary-stats,.status-summary{flex-direction:column;gap:10px}.day-header{flex-direction:column;gap:10px;text-align:center}.day-summary{justify-content:center}.signatures{flex-direction:column;gap:15px}.worksheet-footer,.verification-footer{flex-direction:column;gap:20px}}.workstation-printer-config{max-width:1200px;margin:0 auto;padding:20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.config-header{margin-bottom:30px;text-align:center}.config-header h2{color:#2c3e50;margin-bottom:10px;font-size:2rem;font-weight:600}.config-description{color:#7f8c8d;font-size:1.1rem;line-height:1.5;max-width:600px;margin:0 auto}.workstation-config-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.loading-spinner{width:40px;height:40px;border:4px solid #ecf0f1;border-top:4px solid #3498db;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}.alert{display:flex;align-items:center;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-weight:500}.alert-error{background-color:#fee;color:#c53030;border:1px solid #fed7d7}.alert-success{background-color:#f0fff4;color:#22543d;border:1px solid #c6f6d5}.current-workstation-info{background:#f8f9fa;border-radius:12px;padding:20px;margin-bottom:30px}.current-workstation-info h3{margin-top:0;margin-bottom:15px;color:#2c3e50}.global-settings{background:#fff;border:1px solid #e1e8ed;border-radius:12px;padding:25px;margin-bottom:30px}.global-settings h3{margin-top:0;margin-bottom:20px;color:#2c3e50;border-bottom:2px solid #ecf0f1;padding-bottom:10px}.setting-group{margin-bottom:20px}.setting-group label{display:block;margin-bottom:8px;font-weight:600;color:#34495e}.checkbox-label{display:flex!important;align-items:center;cursor:pointer}.checkbox-label input[type=checkbox]{margin-right:10px;transform:scale(1.2)}.workstation-assignments{background:#fff;border:1px solid #e1e8ed;border-radius:12px;padding:25px;margin-bottom:30px}.workstation-assignments h3{margin-top:0;margin-bottom:20px;color:#2c3e50;border-bottom:2px solid #ecf0f1;padding-bottom:10px}.add-workstation{margin-bottom:25px;padding:20px;background:#f8f9fa;border-radius:8px;border:2px dashed #dee2e6}.add-workstation-form{display:flex;gap:12px;align-items:center}.workstation-input{flex:1;padding:12px 16px;border:1px solid #ced4da;border-radius:6px;font-size:1rem;transition:border-color .2s}.workstation-input:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 3px #3498db1a}.workstation-list{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.workstation-card{border:1px solid #e1e8ed;border-radius:8px;padding:20px;background:#fff;transition:box-shadow .2s,transform .2s}.workstation-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.workstation-card.current{border-color:#3498db;background:#f8fbff}.workstation-header{display:flex;justify-content:between;align-items:center;margin-bottom:15px}.workstation-header h4{margin:0;color:#2c3e50;font-size:1.1rem;font-weight:600}.workstation-body{display:flex;flex-direction:column;gap:12px}.printer-assignment{display:flex;flex-direction:column;gap:8px}.printer-assignment label{font-weight:500;color:#495057}.printer-select{padding:10px 12px;border:1px solid #ced4da;border-radius:6px;font-size:1rem;background:#fff;transition:border-color .2s}.printer-select:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 3px #3498db1a}.status{padding:4px 8px;border-radius:12px;font-size:.85rem;font-weight:600;text-transform:uppercase}.status.configured{background:#d4edda;color:#155724}.status.unconfigured{background:#f8d7da;color:#721c24}.no-workstations{text-align:center;padding:40px 20px;color:#6c757d;font-style:italic}.available-printers{background:#fff;border:1px solid #e1e8ed;border-radius:12px;padding:25px;margin-bottom:30px}.available-printers h3{margin-top:0;margin-bottom:20px;color:#2c3e50;border-bottom:2px solid #ecf0f1;padding-bottom:10px}.printer-list{display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.printer-card{display:flex;justify-content:space-between;align-items:center;padding:15px;border:1px solid #e9ecef;border-radius:8px;background:#f8f9fa}.printer-info{flex:1}.printer-info strong{color:#2c3e50;font-size:1rem}.printer-info small{color:#6c757d;font-size:.85rem}.badge{background:#28a745;color:#fff;padding:2px 6px;border-radius:10px;font-size:.75rem;font-weight:600;margin-left:8px}.btn{padding:10px 20px;border:none;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;min-height:44px}.btn-primary{background:#3498db;color:#fff}.btn-primary:hover:not(:disabled){background:#2980b9;transform:translateY(-1px)}.btn-secondary{background:#6c757d;color:#fff}.btn-secondary:hover:not(:disabled){background:#5a6268;transform:translateY(-1px)}.btn-danger{background:#e74c3c;color:#fff}.btn-danger:hover:not(:disabled){background:#c0392b;transform:translateY(-1px)}.btn-small{padding:6px 12px;font-size:.875rem;min-height:32px}.btn-large{padding:15px 30px;font-size:1.1rem;min-height:52px}.config-actions{text-align:center;padding:30px 20px}.setup-note{margin-top:15px;color:#6c757d;font-style:italic}@media (max-width: 768px){.workstation-printer-config{padding:15px}.add-workstation-form{flex-direction:column;align-items:stretch}.workstation-list,.printer-list{grid-template-columns:1fr}.printer-card{flex-direction:column;align-items:stretch;gap:10px}}@media (max-width: 480px){.config-header h2{font-size:1.5rem}.workstation-header{flex-direction:column;align-items:stretch;gap:10px}}.unified-printer-config{max-width:1200px;margin:0 auto;padding:20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.config-header{text-align:center;margin-bottom:30px;padding:20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:12px}.config-header h1{margin:0 0 10px;font-size:2.2rem;font-weight:600}.config-subtitle{font-size:1.1rem;margin:0 0 20px;opacity:.9}.workstation-info{background:#ffffff1a;padding:15px;border-radius:8px;margin-top:15px}.workstation-info h3{margin:0 0 5px;font-size:1.2rem}.workstation-info p{margin:0;opacity:.9}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px}.loading-spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.alert{padding:15px 20px;margin:20px 0;border-radius:8px;display:flex;align-items:center;font-weight:500}.alert-icon{margin-right:10px;font-size:1.2rem}.alert-error{background-color:#fee;color:#c53030;border:1px solid #feb2b2}.alert-success{background-color:#f0fff4;color:#2f855a;border:1px solid #9ae6b4}.printer-discovery{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;background:#f8f9fa;border-radius:8px;margin:20px 0}.printer-count{font-weight:500;color:#666}.printer-category{margin:30px 0;background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;box-shadow:0 2px 4px #0000001a}.category-title{background:#f7fafc;padding:20px;margin:0;border-bottom:1px solid #e2e8f0;font-size:1.4rem;font-weight:600;color:#2d3748;display:flex;align-items:center}.category-icon{margin-right:12px;font-size:1.6rem}.printer-assignments{padding:20px}.printer-assignment-row{display:flex;justify-content:space-between;align-items:center;padding:15px 0;border-bottom:1px solid #f0f0f0}.printer-assignment-row:last-child{border-bottom:none}.printer-info{flex:1;margin-right:20px}.printer-label{font-weight:600;color:#2d3748;font-size:1.1rem;display:block;margin-bottom:5px}.printer-description{color:#666;font-size:.9rem;margin:0;line-height:1.4}.printer-controls{display:flex;align-items:center;gap:10px;min-width:300px}.printer-select{flex:1;padding:8px 12px;border:2px solid #e2e8f0;border-radius:6px;font-size:14px;background:#fff;cursor:pointer;transition:border-color .2s}.printer-select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.printer-select:hover{border-color:#cbd5e0}.btn{padding:8px 16px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:#667eea;color:#fff}.btn-primary:hover:not(:disabled){background:#5a67d8;transform:translateY(-1px)}.btn-secondary{background:#e2e8f0;color:#4a5568}.btn-secondary:hover:not(:disabled){background:#cbd5e0}.btn-test{background:#48bb78;color:#fff;padding:6px 12px;font-size:12px}.btn-test:hover:not(:disabled){background:#38a169}.btn-large{padding:15px 30px;font-size:16px}.global-settings{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px;margin:30px 0}.global-settings h2{margin:0 0 20px;color:#2d3748;font-size:1.4rem}.setting-row{margin:15px 0}.checkbox-label{display:flex;align-items:center;cursor:pointer;font-weight:500;color:#4a5568}.checkbox-label input[type=checkbox]{margin-right:10px;width:18px;height:18px;cursor:pointer}.available-printers-summary{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px;margin:30px 0}.available-printers-summary h3{margin:0 0 20px;color:#2d3748}.printer-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:15px}.printer-card{border:1px solid #e2e8f0;border-radius:8px;padding:15px;background:#f8f9fa}.printer-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.printer-name{font-weight:600;color:#2d3748}.badge{padding:2px 8px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase}.badge.default{background:#4299e1;color:#fff}.badge.category{background:#48bb78;color:#fff}.printer-details{font-size:12px;color:#666;line-height:1.4}.printer-details div{margin:2px 0}.config-actions{text-align:center;padding:30px 20px;background:#f8f9fa;border-radius:12px;margin:30px 0}.save-note{margin:15px 0 0;color:#666;font-size:14px;line-height:1.5}@media (max-width: 768px){.unified-printer-config{padding:10px}.printer-assignment-row{flex-direction:column;align-items:flex-start;gap:15px}.printer-controls{width:100%;min-width:auto}.printer-grid{grid-template-columns:1fr}.printer-discovery{flex-direction:column;gap:10px;text-align:center}}.printer-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000001a;transition:all .2s}.printer-assignment-row:hover{background:#f8f9fa;margin:0 -20px;padding-left:20px;padding-right:20px;transition:all .2s}
