body{margin:0}.auth-page{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:20px}.auth-container{background:#fff;border-radius:10px;box-shadow:0 10px 25px #0003;max-width:450px;padding:40px;width:100%}.auth-header{margin-bottom:30px;text-align:center}.auth-header h1{color:#333;font-size:2rem;margin-bottom:10px}.auth-header p{color:#666;font-size:.9rem}.auth-form h2{color:#333;margin-bottom:20px;text-align:center}.form-group input{border:2px solid #ddd;border-radius:5px;box-sizing:border-box;font-size:16px;padding:12px;transition:border-color .3s;width:100%}.form-group input:disabled{background-color:#f5f5f5;cursor:not-allowed}button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:16px;font-weight:500;padding:12px;transition:transform .2s,box-shadow .2s;width:100%}button:hover:not(:disabled){box-shadow:0 5px 15px #0003;transform:translateY(-2px)}button:disabled{cursor:not-allowed;opacity:.7;transform:none}.link-button{background:none;color:#667eea;font-size:inherit;padding:0;text-decoration:underline;width:auto}.link-button:hover{box-shadow:none;color:#764ba2;transform:none}.error-message{padding:10px}.auth-form p{color:#666;margin-top:20px;text-align:center}.form-group input.error{border-color:#dc3545;box-shadow:0 0 0 .2rem #dc354540}.field-error{color:#dc3545;display:block;font-size:.875rem;font-weight:500;margin-top:.25rem}.form-group{position:relative}.modal-overlay{background-color:#00000080}.modal-content{border-radius:8px;box-shadow:0 4px 20px #00000026}.new-supplier-modal{max-width:800px;padding:0;width:90%}.modal-header{background:#f9fafb;border-radius:8px 8px 0 0}.modal-header h3{color:#111827;font-weight:600}.btn-close{background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;font-size:24px;line-height:1;padding:4px;transition:all .2s}.btn-close:hover{background:#f3f4f6;color:#111827}.new-supplier-form{padding:24px}.new-supplier-form .form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr;margin-bottom:16px}.new-supplier-form .form-group{margin-bottom:0}.new-supplier-form .form-group:last-child{grid-column:1/-1}.new-supplier-form label{color:#374151;display:block;font-size:.875rem;font-weight:500;margin-bottom:4px}.new-supplier-form input,.new-supplier-form select,.new-supplier-form textarea{border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;padding:8px 12px;transition:border-color .2s,box-shadow .2s;width:100%}.new-supplier-form input:focus,.new-supplier-form select:focus,.new-supplier-form textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.new-supplier-form textarea{min-height:60px;resize:vertical}.modal-actions{margin-top:24px;padding-top:20px}.btn-primary{background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:10px 20px;transition:background-color .2s}.btn-primary:hover:not(:disabled){background:#2563eb}.btn-primary:disabled{background:#9ca3af;cursor:not-allowed}.btn-secondary{border:1px solid #d1d5db;color:#374151;padding:10px 20px}.btn-secondary:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.btn-secondary:disabled{color:#9ca3af;cursor:not-allowed}.error-message{background:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:#dc2626;font-size:.875rem;margin-bottom:16px;padding:12px 16px}@media (max-width:768px){.new-supplier-modal{margin:20px;max-width:none;width:95%}.new-supplier-form .form-row{gap:12px;grid-template-columns:1fr}.modal-actions{flex-direction:column-reverse}.btn-primary,.btn-secondary{width:100%}}.collection-document-form{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;margin-bottom:30px;padding:30px}.form-header h2{margin:0 0 20px;text-align:center}.step-indicator{justify-content:center;margin-bottom:20px}.step,.step-indicator{align-items:center;display:flex}.step{flex-direction:column;position:relative}.step span{align-items:center;background:#e9ecef;border-radius:50%;color:#6c757d;display:flex;font-weight:700;height:40px;justify-content:center;margin-bottom:8px;transition:all .3s;width:40px}.step.active span{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.supplier-search-container{align-items:flex-start;display:flex;gap:12px;position:relative}.supplier-search-container input{border:2px solid #d1d5db;border-radius:8px;flex:1 1;font-size:1rem;min-width:300px;padding:12px 16px;transition:border-color .2s,box-shadow .2s}.supplier-search-container input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.btn-add-supplier{background:#28a745;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;padding:10px 16px;transition:background-color .2s;white-space:nowrap}.btn-add-supplier:hover:not(:disabled){background:#218838}.btn-add-supplier:disabled{background:#6c757d;cursor:not-allowed}.supplier-dropdown{background:#fff;border:2px solid #3b82f6;border-radius:8px;box-shadow:0 8px 25px #0003;left:0;margin-top:4px;max-height:400px;min-width:100%;overflow-y:auto;position:absolute;right:0;top:100%;z-index:1000}.supplier-option{border-bottom:1px solid #e5e7eb;cursor:pointer;padding:16px 20px;transition:all .2s ease}.supplier-option:hover{background:#f0f9ff;border-left:4px solid #3b82f6}.supplier-option:last-child{border-bottom:none}.supplier-name{color:#111827;font-size:1rem;font-weight:600;margin-bottom:6px}.supplier-details{color:#6b7280;display:flex;flex-wrap:wrap;font-size:.875rem;gap:12px;line-height:1.4}.supplier-details span{background:#f3f4f6;border-radius:4px;font-size:.75rem;padding:2px 6px}.form-row.single{grid-template-columns:1fr}.form-group input,.form-group select,.form-group textarea{font-size:.875rem}.radio-label{align-items:center;cursor:pointer;display:flex;font-weight:400;gap:6px}.radio-label input[type=radio]{margin:0;width:auto}.form-actions-inline{display:flex;justify-content:flex-end;margin-top:16px}.btn-secondary-small{background:#fff;border:1px solid #d1d5db;border-radius:4px;color:#6b7280;cursor:pointer;font-size:.75rem;padding:6px 12px;transition:all .2s}.btn-secondary-small:hover:not(:disabled){background:#f9fafb;color:#374151}@media (max-width:768px){.form-row{gap:16px;grid-template-columns:1fr}.supplier-search-container{flex-direction:column}.btn-add-supplier{width:100%}}.step label{color:#6c757d;font-size:12px;max-width:120px;text-align:center}.step.active label{color:#333;font-weight:500}.step-separator{background:#e9ecef;height:2px;margin:0 20px;position:relative;top:-12px;width:80px}.document-step1-form .form-section{margin-bottom:30px}.document-step1-form h3{border-bottom:2px solid #f0f0f0;color:#333;margin-bottom:20px;padding-bottom:10px}.add-breakdown-form .form-group{margin-bottom:0}.add-breakdown-form .form-group label{align-items:flex-end;display:flex;min-height:40px}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{background-color:#f5f5f5;cursor:not-allowed}.document-step2-form h3{color:#333;margin-bottom:15px}.form-description{background:#f8f9fa;border-left:4px solid #667eea;border-radius:5px;margin-bottom:25px;padding:15px}.add-breakdown-section{background:#f8f9fa;border-radius:8px;margin-bottom:25px;padding:20px}.add-breakdown-section h4{color:#333;margin:0 0 15px}.input-mode-toggle{margin-bottom:20px}.input-mode-toggle label{color:#555;display:block;font-weight:500;margin-bottom:10px}.toggle-buttons{display:flex;gap:10px}.mode-btn{align-items:center;background:#fff;border:2px solid #ddd;border-radius:5px;cursor:pointer;display:flex;font-size:14px;gap:5px;padding:8px 16px;transition:all .3s}.mode-btn.active,.mode-btn:hover:not(:disabled){border-color:#667eea}.mode-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.mode-btn:disabled{cursor:not-allowed;opacity:.6}.add-breakdown-form{grid-gap:15px;align-items:end;display:grid;gap:15px;grid-template-columns:2fr 2fr .8fr auto}.form-group-row{display:flex;gap:15px}.form-group-row .form-group{flex:1 1;margin-bottom:0}.form-group-row .form-group input{box-sizing:border-box;height:42px;padding:10px}.form-group input,.form-group select{box-sizing:border-box;height:42px}.add-btn{border-radius:5px;font-weight:500;height:42px;padding:10px 20px;transition:transform .2s,box-shadow .2s;width:auto}.add-btn:hover:not(:disabled){box-shadow:0 5px 15px #28a7454d}.add-btn:disabled{transform:none}.breakdown-list h4{color:#333;margin-bottom:15px}.breakdown-table{margin-bottom:20px;overflow-x:auto}.breakdown-table table{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.breakdown-table td,.breakdown-table th{border-bottom:1px solid #e9ecef;padding:12px}.breakdown-table th{background:#f8f9fa}.organization-select{border:1px solid #dee2e6;cursor:pointer;font-size:13px;padding:6px 8px;width:100%}.organization-select:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff1a;outline:none}.deee-info strong{color:#333;display:block}.deee-info small{color:#6c757d;font-size:11px}.percentage-input,.weight-input{padding:5px!important;text-align:center;transition:all .2s ease;width:80px!important}.primary-input{background-color:#f8fff9!important;border-left:4px solid #28a745!important;font-weight:600}.calculated-input{background-color:#f8f9fa!important;border-left:4px solid #6c757d!important;font-style:italic}.pieces-cell,.weight-cell{color:#28a745;font-weight:500}.weight-cell.editable-weight{position:relative}.weight-input{background:#f8fff8!important;border:1px solid #28a745!important;border-radius:3px!important;box-sizing:border-box;color:#28a745!important;font-size:13px!important;font-weight:500!important;padding:4px 6px!important;width:80px!important}.weight-input:focus{border-color:#20c997!important;box-shadow:0 0 0 2px #28a7451a!important;outline:none!important}.weight-unit{color:#6c757d;font-size:12px;margin-left:4px}.pieces-input{border:1px solid #dee2e6!important;border-radius:3px!important;font-size:13px!important;padding:4px 6px!important;text-align:center;width:60px!important}.remove-btn{border:none;border-radius:3px;cursor:pointer;font-size:12px;padding:5px 10px;width:auto}.remove-btn:hover{box-shadow:none;transform:none}.associations{display:flex;flex-wrap:wrap;gap:4px}.assoc-tag{border-radius:3px;color:#fff;display:inline-block;font-size:11px;font-weight:500;padding:2px 6px}.assoc-tag.ecotic{background:#007bff}.assoc-tag.ecopositive{background:#28a745}.no-association{color:#6c757d;font-size:12px;font-style:italic}.breakdown-summary{background:#fff;border:2px solid #e9ecef;border-radius:8px;padding:15px}.total-percentage{font-size:18px;font-weight:700}.total-percentage.complete{color:#28a745}.total-percentage.incomplete{color:#ffc107}.remaining-percentage{color:#6c757d;font-style:italic}.no-breakdown{background:#f8f9fa;border:2px dashed #dee2e6;border-radius:8px;color:#6c757d;padding:40px;text-align:center}.error-message{background-color:#fee;border:1px solid #fcc;border-radius:5px;color:#c33;margin-bottom:20px;padding:15px}@media (max-width:768px){.form-row{grid-template-columns:1fr}.add-breakdown-form,.form-group-row{gap:10px;grid-template-columns:1fr}.toggle-buttons{flex-direction:column;gap:8px}.mode-btn{justify-content:center}.add-btn,.mode-btn{width:100%}.step-indicator{flex-direction:column;gap:20px}.step-separator{height:30px;margin:0;top:0;width:2px}.breakdown-summary{gap:10px;text-align:center}.breakdown-summary,.form-actions{flex-direction:column}.form-actions button{width:100%}}.acquisition-export-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.acquisition-export-modal{animation:slideIn .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:800px;overflow-y:auto;width:100%}@keyframes slideIn{0%{opacity:0;transform:translateY(-30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.close-btn{background:#fff3;border-radius:8px;height:40px;width:40px}.close-btn:hover{background:#ffffff4d;transform:scale(1.05)}.export-options h3{color:#374151;font-size:1.25rem;font-weight:600;margin:0 0 20px}.export-type-selection{margin-bottom:30px}.radio-group{grid-gap:16px;display:grid;gap:16px}.export-option{align-items:flex-start;background:#fff;border:2px solid #e5e7eb;border-radius:12px;cursor:pointer;display:flex;padding:20px;transition:all .2s ease}.export-option:hover{background:#f9fafb;border-color:#d1d5db;box-shadow:0 4px 12px #0000000d;transform:translateY(-1px)}.export-option input[type=radio]{accent-color:#667eea;margin-right:15px;margin-top:2px;transform:scale(1.2)}.export-option input[type=radio]:checked{accent-color:#667eea}.export-option:has(input:checked){background:linear-gradient(135deg,#667eea0d,#764ba20d);border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.option-content{display:flex;flex-direction:column;gap:4px}.option-content strong{color:#111827;font-size:1rem;font-weight:600}.option-content span{color:#6b7280;font-size:.875rem;line-height:1.4}.month-selection,.organization-selection{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin:20px 0;padding:20px}.month-selection label,.organization-selection label{color:#374151;display:block;font-weight:600;margin-bottom:8px}.month-selection select,.organization-selection select{background:#fff;border:1px solid #d1d5db;border-radius:8px;font-size:1rem;padding:12px 16px;transition:all .2s ease;width:100%}.month-selection select:focus,.organization-selection select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.export-summary{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-left:4px solid #0284c7;border-radius:8px;margin:30px 0;padding:20px}.export-summary h4{color:#0f172a;font-size:1.1rem;font-weight:600;margin:0 0 12px}.summary-details p{color:#475569;font-size:.9rem;margin:6px 0}.summary-details strong{color:#334155}.preview-section{border:1px solid #e5e7eb;border-radius:8px;margin:30px 0;overflow:hidden}.preview-section h4{background:#f8fafc;border-bottom:1px solid #e5e7eb;color:#374151;font-size:1rem;font-weight:600;margin:0;padding:16px 20px}.preview-table{overflow-x:auto}.preview-table table{border-collapse:collapse;width:100%}.preview-table td,.preview-table th{border-bottom:1px solid #f3f4f6;padding:12px 16px;text-align:left}.preview-table th{font-size:.875rem;letter-spacing:.025em;text-transform:uppercase}.preview-table td{color:#6b7280}.preview-table .more-rows{color:#9ca3af;font-style:italic;text-align:center}.modal-actions{border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;padding-top:24px}.modal-actions button{border:1px solid #0000;border-radius:8px;cursor:pointer;font-size:.925rem;font-weight:600;padding:12px 24px;transition:all .2s ease}.cancel-btn{background:#fff;border-color:#d1d5db;color:#6b7280}.cancel-btn:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.preview-btn{background:#fff;border-color:#0284c7;color:#0284c7}.preview-btn:hover:not(:disabled){background:#f0f9ff;transform:translateY(-1px)}.export-btn.nir{background:linear-gradient(135deg,#dc3545,#c82333);border:none;box-shadow:0 4px 12px #dc35454d;color:#fff}.export-btn.nir:hover:not(:disabled){box-shadow:0 6px 20px #dc354566;transform:translateY(-2px)}.export-btn.primary{background:linear-gradient(135deg,#667eea,#764ba2);border:none;box-shadow:0 4px 12px #667eea4d;color:#fff}.export-btn.primary:hover:not(:disabled){box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.modal-actions button:disabled{cursor:not-allowed;opacity:.5;transform:none!important}@media (max-width:640px){.acquisition-export-overlay{padding:10px}.acquisition-export-modal{max-height:95vh}.modal-content,.modal-header{padding:20px}.modal-actions{flex-direction:column}.modal-actions button{width:100%}.export-option{padding:16px}.radio-group{gap:12px}}.declaration-modal{max-width:600px;width:90%}.declaration-modal .modal-body{padding:20px}.form-group{margin-bottom:15px}.form-group label{color:#333}.form-group select{background:#fff;border:1px solid #ddd;border-radius:4px;font-size:14px;padding:8px 12px;width:100%}.form-row{grid-gap:15px;gap:15px}.preview-section{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;margin-top:20px;padding:15px}.preview-section h4{color:#495057;font-size:16px;margin:0 0 15px}.stats{grid-gap:8px;display:grid;gap:8px}.stat-item{align-items:center;display:flex;justify-content:space-between;padding:8px 0}.stat-value{color:#212529}.export-btn.declaration{align-items:center;background:linear-gradient(135deg,#6f42c1,#5a2d91);border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:14px;gap:6px;padding:8px 16px;transition:all .2s}.export-btn.declaration:hover{background:linear-gradient(135deg,#5a2d91,#4c2573);box-shadow:0 4px 12px #6f42c14d;transform:translateY(-1px)}.btn-generate{background:linear-gradient(135deg,#28a745,#20c997);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s}.btn-generate:hover:not(:disabled){background:linear-gradient(135deg,#20c997,#17a2b8);box-shadow:0 4px 12px #28a7454d;transform:translateY(-1px)}.btn-generate:disabled{background:#6c757d;box-shadow:none;cursor:not-allowed;transform:none}.btn-generate-all{background:linear-gradient(135deg,#dc3545,#c82333);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s}.btn-generate-all:hover:not(:disabled){background:linear-gradient(135deg,#c82333,#b21f2d);box-shadow:0 4px 12px #dc35454d;transform:translateY(-1px)}.btn-generate-all:disabled{background:#6c757d;box-shadow:none;cursor:not-allowed;transform:none}.modal-footer{border-top:1px solid #e9ecef;gap:10px;padding:15px 20px}.btn-cancel{background:#6c757d;border:none;border-radius:4px;color:#fff;font-size:14px;padding:10px 20px}.btn-cancel:hover{background:#5a6268}.invoice-generator-modal{max-width:700px;width:90%}.invoice-generator-modal .modal-body{max-height:70vh;overflow-y:auto;padding:20px}.invoice-generator-modal .form-section{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;margin-bottom:25px;padding:20px}.invoice-generator-modal .form-section h3{border-bottom:2px solid #007bff;color:#495057;font-size:16px;margin:0 0 15px;padding-bottom:8px}.invoice-generator-modal .form-row{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr 1fr;margin-bottom:15px}.invoice-generator-modal .form-group{display:flex;flex-direction:column}.invoice-generator-modal .form-group label{color:#495057;font-size:14px;font-weight:600;margin-bottom:6px}.invoice-generator-modal .form-group input,.invoice-generator-modal .form-group select{border:1px solid #ced4da;border-radius:4px;font-size:14px;padding:10px 12px;transition:border-color .2s ease}.invoice-generator-modal .form-group input:focus,.invoice-generator-modal .form-group select:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff26;outline:none}.invoice-generator-modal .form-group input[type=number]{text-align:right}.invoice-generator-modal .info-box{background:#e7f3ff;border:1px solid #b3d9ff;border-radius:6px;margin-top:20px;padding:15px}.invoice-generator-modal .info-box p{color:#0056b3;font-size:13px;line-height:1.5;margin:5px 0}.invoice-generator-modal .info-box strong{font-weight:600}.invoice-generator-modal .modal-footer{background:#f8f9fa;border-top:1px solid #dee2e6;display:flex;gap:10px;justify-content:flex-end;padding:15px 20px}.invoice-generator-modal .btn-primary{align-items:center;background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:6px;padding:10px 20px;transition:all .2s ease}.invoice-generator-modal .btn-primary:hover:not(:disabled){background-color:#0056b3;box-shadow:0 2px 8px #007bff4d;transform:translateY(-1px)}.invoice-generator-modal .btn-primary:disabled{background-color:#6c757d;cursor:not-allowed;opacity:.6}.invoice-generator-modal .btn-secondary{background-color:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s ease}.invoice-generator-modal .btn-secondary:hover:not(:disabled){background-color:#545b62;transform:translateY(-1px)}.invoice-generator-modal .btn-secondary:disabled{cursor:not-allowed;opacity:.6}@media (max-width:768px){.invoice-generator-modal{max-width:none;width:95%}.invoice-generator-modal .form-row{gap:10px;grid-template-columns:1fr}.invoice-generator-modal .modal-footer{flex-direction:column}.invoice-generator-modal .btn-primary,.invoice-generator-modal .btn-secondary{justify-content:center;width:100%}}.collection-document-list{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;padding:30px}.modal-overlay{background:#000000b3;padding:20px}.modal-content.document-edit-modal{background:#fff;border-radius:10px;box-shadow:0 4px 20px #0000004d;max-height:90vh;max-width:90vw;overflow-y:auto;position:relative}.modal-header{background:#f8f9fa;border-bottom:1px solid #eee;border-radius:10px 10px 0 0}.modal-header h3{color:#333;font-size:1.25rem}.close-btn{color:#666;transition:all .2s ease}.close-btn:hover{background:#e9ecef;color:#333}.stock-validation-cell{min-width:120px;text-align:center}.stock-status{border-radius:4px;display:inline-block;font-size:12px;font-weight:600;padding:4px 8px;text-align:center}.stock-status.available{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.stock-status.unavailable{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.stock-status.checking{background-color:#fff3cd;border:1px solid #ffeaa7;color:#856404}.organization-select{background:#fff;border:1px solid #ddd;border-radius:4px;font-size:12px;min-width:100px;padding:4px 8px}.edit-actions{gap:6px}.cancel-btn,.edit-actions,.edit-btn,.save-btn{align-items:center;display:flex;justify-content:center}.cancel-btn,.edit-btn,.save-btn{background:none;border:none;border-radius:4px;cursor:pointer;font-size:14px;height:28px;padding:6px;position:relative;transition:all .2s ease;width:28px}.edit-btn{background:linear-gradient(135deg,#ffc107,#ff9800);color:#fff}.edit-btn:hover{background:linear-gradient(135deg,#ffb300,#f57c00);box-shadow:0 3px 8px #ffc1074d}.save-btn{background:linear-gradient(135deg,#4caf50,#388e3c)}.save-btn:hover{background:linear-gradient(135deg,#388e3c,#2e7d32);box-shadow:0 3px 8px #4caf504d;transform:translateY(-1px)}.cancel-btn{background:linear-gradient(135deg,#f44336,#d32f2f)}.cancel-btn:hover{background:linear-gradient(135deg,#d32f2f,#c62828);box-shadow:0 3px 8px #f443364d;transform:translateY(-1px)}.actions{align-items:center;gap:6px;min-width:120px;white-space:nowrap}.document-allocation-edit{align-items:center;display:flex;gap:4px}.organization-select.small{font-size:11px;min-width:80px;padding:2px 4px}.allocate-btn{align-items:center;background:linear-gradient(135deg,#007bff,#0056b3);border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:14px;height:28px;justify-content:center;padding:6px;position:relative;transition:all .2s ease;width:28px}.allocate-btn:hover{background:linear-gradient(135deg,#0056b3,#004085);box-shadow:0 3px 8px #007bff4d;transform:translateY(-1px)}.header-actions{gap:15px}.view-toggle{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;display:flex;gap:5px;padding:4px}.toggle-btn{background:#0000;border:none;border-radius:6px;color:#666;cursor:pointer;font-size:13px;font-weight:500;padding:8px 16px;transition:all .2s}.toggle-btn.active{background:#007bff;box-shadow:0 2px 4px #007bff4d;color:#fff}.toggle-btn:hover:not(.active){background:#e9ecef;color:#333}.reference-toggle.active{background:#28a745!important;box-shadow:0 2px 4px #28a7454d!important;color:#fff!important}.export-actions{gap:10px}.export-btn{border:none;border-radius:5px;color:#fff;transition:transform .2s,box-shadow .2s;width:auto}.export-btn.acquisition{background:linear-gradient(135deg,#667eea,#764ba2);margin-right:8px}.export-btn.csv{background:linear-gradient(135deg,#28a745,#20c997)}.export-btn.excel{background:linear-gradient(135deg,#17a2b8,#138496)}.export-btn.pdf{background:linear-gradient(135deg,#dc3545,#c82333)}.export-btn:hover{transform:translateY(-2px)}.export-btn.acquisition:hover{box-shadow:0 5px 15px #667eea4d}.export-btn.csv:hover{box-shadow:0 5px 15px #28a7454d}.export-btn.excel:hover{box-shadow:0 5px 15px #17a2b84d}.export-btn.pdf:hover{box-shadow:0 5px 15px #dc35454d}.summary-cards{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:30px}.documents-table table{background:#fff;border-collapse:collapse;width:100%}.documents-table td,.documents-table th{border-bottom:1px solid #e9ecef;padding:12px;text-align:left}.documents-table th{background-color:#f8f9fa;color:#495057;font-weight:600;position:sticky;top:0}.document-row{transition:background-color .2s}.document-row:hover{background-color:#f8f9fa}.expand-btn{background:none;border:none;color:#6c757d;cursor:pointer;font-size:12px;min-width:20px;padding:5px;width:auto}.expand-btn:hover{box-shadow:none;color:#495057;transform:none}.supplier-info strong{color:#333}.document-number{color:#495057;font-weight:500}.document-number,.hg-code{font-family:Courier New,monospace}.hg-code{color:#6c757d;font-size:13px}.weight-cell{color:#28a745;font-weight:600}.deee-count{color:#6c757d;font-style:italic}.actions{flex-wrap:wrap}.delete-btn{align-items:center;background:linear-gradient(135deg,#dc3545,#c82333);border-radius:4px;display:flex;height:28px;justify-content:center;padding:6px;position:relative;transition:all .2s ease;width:28px}.delete-btn:hover{background:linear-gradient(135deg,#c82333,#b71c1c);box-shadow:0 3px 8px #dc35454d}.actions .export-btn.nir{align-items:center;background:linear-gradient(135deg,#17a2b8,#138496);border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:12px;font-weight:500;height:28px;justify-content:center;padding:6px;position:relative;transition:all .2s ease;width:28px}.actions .export-btn.nir:hover{background:linear-gradient(135deg,#138496,#0f6674);box-shadow:0 3px 8px #17a2b84d;transform:translateY(-1px)}.actions .export-btn.nir:after,.allocate-btn:after,.delete-btn:after,.edit-btn:after{word-wrap:break-word;background:#000000f2;border-radius:6px;box-shadow:0 4px 12px #0006;color:#fff;content:attr(title);font-size:12px;left:50%;line-height:1.3;max-width:250px;min-width:150px;opacity:0;padding:8px 12px;pointer-events:none;position:absolute;text-align:center;top:-50px;transform:translateX(-50%);transition:all .2s ease;visibility:hidden;white-space:normal;z-index:10000}.actions .export-btn.nir:last-child:after,.delete-btn:after{left:auto;right:-100px;transform:translateX(0)}.actions .export-btn.nir:before,.allocate-btn:before,.delete-btn:before,.edit-btn:before{border-left:6px solid #0000;border-right:6px solid #0000;border-top:6px solid #000000f2;content:"";height:0;left:50%;opacity:0;pointer-events:none;position:absolute;top:-42px;transform:translateX(-50%);transition:all .2s ease;visibility:hidden;width:0;z-index:10001}.actions .export-btn.nir:last-child:before,.delete-btn:before{left:auto;right:25px;transform:none}.actions .export-btn.nir:hover:after,.actions .export-btn.nir:hover:before,.allocate-btn:hover:after,.allocate-btn:hover:before,.delete-btn:hover:after,.delete-btn:hover:before,.edit-btn:hover:after,.edit-btn:hover:before{opacity:1;visibility:visible}.actions{z-index:100}.actions,.document-row{overflow:visible;position:relative}.documents-table{overflow-x:auto;overflow-y:visible}.breakdown-row{background-color:#f8f9fa}.breakdown-details{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin:10px;padding:20px}.breakdown-details h4{border-bottom:2px solid #e9ecef;color:#333;margin:0 0 15px;padding-bottom:10px}.document-notes{background:#fff3cd;border-left:4px solid #ffc107;border-radius:5px;font-size:14px;padding:10px}.breakdown-table,.document-notes{margin-bottom:15px}.breakdown-table table{border-collapse:collapse;font-size:14px;width:100%}.breakdown-table td,.breakdown-table th{border-bottom:1px solid #dee2e6;padding:8px 12px;text-align:left}.breakdown-table th{background-color:#e9ecef;color:#495057;font-weight:600}.deee-code{color:#495057;font-family:Courier New,monospace;font-weight:700}.category{color:#6c757d;font-size:12px}.percentage{color:#fd7e14}.weight{color:#28a745;font-weight:600}.pieces{color:#17a2b8;font-weight:600}.breakdown-summary{align-items:center;background:#f8f9fa;border:1px solid #dee2e6;border-radius:5px;color:#495057;font-size:14px;justify-content:space-between;padding:10px 15px}.no-documents{color:#6c757d;padding:50px;text-align:center}.no-documents h3{color:#495057;margin-bottom:10px}.filters-section{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px}.filters-row{align-items:end;display:flex;flex-wrap:wrap}.filter-group{gap:5px}.filter-group label{color:#495057;font-size:12px;letter-spacing:.5px;text-transform:uppercase}.filter-select{border:1px solid #ced4da;border-radius:4px;color:#495057;min-width:150px;padding:8px 12px}.search-input{min-width:320px;position:relative}.search-input::placeholder{color:#6c757d;font-style:italic}.filter-select:focus,.search-input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.clear-filters-btn{background:#6c757d;border:none;border-radius:4px;color:#fff;font-size:12px;font-weight:500;height:fit-content;padding:8px 12px;transition:background-color .2s}.clear-filters-btn:hover{background:#5a6268;box-shadow:none;transform:none}.sortable{cursor:pointer;transition:background-color .2s;-webkit-user-select:none;user-select:none}.sortable:hover{background-color:#e9ecef}.sorted-asc{background-color:#e3f2fd}.sorted-desc{background-color:#e8f5e8}.month-cell{white-space:nowrap}.month-badge{background:linear-gradient(135deg,#007bff,#0056b3);border-radius:12px;color:#fff;font-size:11px;font-weight:600;padding:4px 8px;text-transform:capitalize}@media (max-width:768px){.list-header{align-items:flex-start;flex-direction:column;gap:15px}.summary-cards{grid-template-columns:repeat(2,1fr)}.filters-row{align-items:stretch;flex-direction:column;gap:15px}.filter-select{min-width:auto;width:100%}.documents-table{font-size:14px}.documents-table td,.documents-table th{padding:8px}.month-badge{font-size:10px;padding:2px 6px}.breakdown-details{margin:5px;padding:15px}.breakdown-summary{flex-direction:column;gap:5px;text-align:center}}@media (max-width:480px){.summary-cards{grid-template-columns:1fr}.documents-table td,.documents-table th{font-size:12px;padding:6px}.breakdown-table td,.breakdown-table th{font-size:12px;padding:6px 8px}.equipment-table td,.equipment-table th{font-size:12px;padding:6px}}.equipment-table{margin-top:20px;overflow-x:auto}.equipment-table table{background:#fff;border-collapse:collapse;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden;width:100%}.equipment-table th{background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:2px solid #5a67d8;color:#fff;font-size:13px;font-weight:600;padding:12px 10px;text-align:left}.equipment-table td{border-bottom:1px solid #e2e8f0;font-size:13px;padding:10px;vertical-align:middle}.equipment-table tr:hover{background-color:#f7fafc}.equipment-table tr:last-child td{border-bottom:none}.equipment-table .association{color:#666;font-style:italic;text-align:center}.equipment-table .deee-code{background:#edf2f7;border-radius:4px;color:#4a5568;font-family:monospace;font-weight:700;min-width:80px;padding:4px 8px;text-align:center}.equipment-table .weight{color:#2d3748;font-weight:600;text-align:right}.equipment-table .pieces{color:#4a5568;text-align:right}.equipment-table .percentage{color:#805ad5;font-weight:500;text-align:center}.equipment-table .category{color:#2b6cb0;font-weight:500}@media (max-width:1200px){.equipment-table{font-size:12px}.equipment-table td,.equipment-table th{padding:8px 6px}}.fraction-sales-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.fraction-sales-modal{background:#fff;border-radius:12px;box-shadow:0 10px 30px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:1200px;overflow:hidden;width:95%}.modal-header{border-bottom:3px solid #0056b3}.close-btn{border-radius:50%;height:35px;width:35px}.modal-content{flex:1 1}.sales-actions{align-items:center;border-bottom:2px solid #f0f0f0;display:flex;justify-content:space-between;margin-bottom:25px;padding-bottom:15px}.add-btn{background:linear-gradient(135deg,#28a745,#20c997);border:none;border-radius:8px;box-shadow:0 2px 4px #0000001a;color:#fff;cursor:pointer;font-weight:600;padding:12px 20px;transition:all .2s}.add-btn:hover:not(:disabled){box-shadow:0 4px 8px #0003;transform:translateY(-2px)}.add-btn:disabled{cursor:not-allowed;opacity:.6}.sales-summary{align-items:center;display:flex;gap:20px}.summary-stat{color:#6c757d;font-size:14px}.summary-stat strong{color:#495057;font-weight:600}.add-form-section{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;padding:25px}.add-form-section h3{color:#495057;font-size:18px;font-weight:600;margin:0 0 20px}.form-group label{color:#495057}.form-group input,.form-group select{border:1px solid #ced4da;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group select:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.form-actions button{border:1px solid #ced4da}.form-actions button[type=button]{background:#f8f9fa;color:#6c757d}.form-actions button[type=button]:hover:not(:disabled){background:#e9ecef}.form-actions button.primary{background:linear-gradient(135deg,#007bff,#0056b3);border-color:#007bff}.form-actions button.primary:hover:not(:disabled){box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.sales-table-section h3{color:#495057;font-size:18px;font-weight:600;margin:0 0 20px}.no-sales{background:#f8f9fa;color:#6c757d;padding:40px;text-align:center}.no-sales,.sales-table{border:1px solid #dee2e6;border-radius:8px}.sales-table{background:#fff;box-shadow:0 2px 8px #0000001a;overflow:hidden}.sales-table table{border-collapse:collapse;margin:0;width:100%}.sales-table th{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-bottom:2px solid #007bff;border-top:1px solid #dee2e6;padding:15px 12px;text-align:left}.sales-table td{border-bottom:1px solid #f0f0f0;color:#495057;font-size:14px;padding:12px}.sales-table tbody tr:hover{background:#007bff0d}.sale-date{color:#495057;font-weight:600}.client-name{color:#333;font-weight:600}.fraction-name{color:#495057}.quantity{color:#28a745;font-weight:600;text-align:right}.invoice-number{color:#495057;font-family:Courier New,monospace;font-weight:600}.status .status-badge{border-radius:12px;font-size:11px;font-weight:600;letter-spacing:.5px;padding:4px 8px;text-transform:uppercase}.status-pending{background:#ffc10733;border:1px solid #ffc1074d}.status-allocated{background:#007bff33;border:1px solid #007bff4d;color:#0056b3}.status-sold{background:#28a74533;border:1px solid #28a7454d}.allocation .allocation-badge{border-radius:12px;font-size:11px;font-weight:600;letter-spacing:.5px;padding:4px 8px;text-transform:uppercase}.allocation-ecotic{background:#dc354533;border:1px solid #dc35454d;color:#721c24}.allocation-ecopositive{background:#0d6efd33;border:1px solid #0d6efd4d;color:#084298}.allocation-unallocated{background:#6c757d33;border:1px solid #6c757d4d;color:#495057}.allocation-none{color:#6c757d;font-size:12px;font-style:italic}.actions{gap:8px;justify-content:center}.delete-btn,.edit-btn{background:none;border:1px solid #dee2e6;border-radius:4px;cursor:pointer;font-size:14px;padding:6px 8px;transition:all .2s}.edit-btn:hover:not(:disabled){background:#007bff1a;border-color:#007bff}.delete-btn:hover:not(:disabled){background:#dc35451a;border-color:#dc3545}.delete-btn:disabled,.edit-btn:disabled{cursor:not-allowed;opacity:.5}.loading{height:200px}@media (max-width:1024px){.fraction-sales-modal{max-height:95vh;width:98%}.modal-content{padding:20px}.form-row{gap:15px;grid-template-columns:1fr}.sales-actions{align-items:stretch;flex-direction:column;gap:15px}.sales-summary{justify-content:space-around}}@media (max-width:768px){.modal-header{padding:15px 20px}.modal-header h2{font-size:18px}.sales-table{overflow-x:auto}.sales-table td,.sales-table th{font-size:12px;padding:8px 6px}.form-actions{flex-direction:column}.form-actions button{width:100%}}.organization-section{background-color:#f9fafb;border:1px solid #e5e7eb}.organization-type-selection>label{color:#374151;display:block;font-weight:600;margin-bottom:12px}.radio-group{flex-wrap:wrap}.split-section{background-color:#fff;border:1px solid #d1d5db;border-radius:6px;padding:20px}.split-header{margin-bottom:16px}.split-header h4{color:#374151;font-size:1rem;font-weight:600}.auto-split-btn:hover:not(:disabled){background-color:#2563eb}.auto-split-btn:disabled{background-color:#9ca3af}.split-inputs{grid-gap:16px;gap:16px;margin-bottom:16px}.split-input-group label{font-size:.85rem;margin-bottom:6px}.split-quantity-input{transition:border-color .2s,box-shadow .2s}.split-quantity-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.split-summary{font-size:.9rem;margin-bottom:12px;padding:12px 16px}@media (max-width:768px){.split-inputs{grid-template-columns:1fr}.radio-group,.split-header{flex-direction:column;gap:12px}.split-header{align-items:flex-start}.split-summary{flex-direction:column;gap:8px}}.stock-breakdown{background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;margin:16px 0;padding:16px}.stock-breakdown h4{color:#374151;font-size:.9rem;font-weight:600;margin:0 0 12px}.stock-organizations{grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.stock-org{background-color:#fff;border:1px solid #d1d5db;border-radius:4px;font-size:.85rem}.stock-org.ecotic{border-left:4px solid #10b981}.stock-org.ecopositive{border-left:4px solid #3b82f6}.stock-org.unallocated{border-left:4px solid #6b7280}.stock-org.total{background-color:#f0f9ff;border:1px solid #bae6fd;font-weight:600}.org-label{color:#374151}.org-stock{color:#059669;font-weight:600}.split-stock-info{background-color:#fefce8;border:1px solid #fde047;border-radius:6px;margin:16px 0;padding:16px}.split-stock-header{color:#92400e;font-size:.9rem;font-weight:600;margin-bottom:12px}.split-stock-details{display:flex;flex-direction:column;gap:8px}.split-stock-item{background-color:#fff;border:1px solid #fbbf24;border-radius:4px;display:flex;flex-direction:column;gap:4px;padding:8px 12px}.split-suggestion{color:#92400e;font-size:.75rem;font-style:italic}.split-warning{background-color:#fef2f2;border:1px solid #fecaca;color:#dc2626}.split-success,.split-warning{font-size:.85rem;font-weight:500}.split-success{background-color:#f0fdf4;border:1px solid #bbf7d0;color:#166534}@media (max-width:768px){.stock-organizations{grid-template-columns:1fr}.stock-org{font-size:.8rem}.split-stock-item{padding:6px 8px}.split-suggestion{font-size:.7rem}}.bulk-sales-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.bulk-sales-modal{background:#fff;border-radius:12px;box-shadow:0 10px 30px #0000004d;max-height:90vh;max-width:1000px;overflow:hidden;width:100%}.modal-header{background:linear-gradient(135deg,#28a745,#20c997)}.modal-header h2{font-size:20px}.general-info{background:#f8f9fa;border:2px solid #e9ecef;border-radius:8px;margin-bottom:25px;padding:20px}.general-info h3{color:#333;font-size:16px;margin:0 0 15px}.form-grid{grid-gap:15px;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:15px}.form-group input,.form-group select,.form-group textarea{border:2px solid #e2e8f0;padding:8px 10px}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#28a745;box-shadow:0 0 0 3px #28a7451a}.fractions-quantities{background:#fff;border:2px solid #e2e8f0;border-radius:8px;margin-bottom:25px;padding:20px}.fractions-quantities h3{color:#333;font-size:16px;margin:0 0 15px}.quantities-summary{align-items:center;background:linear-gradient(135deg,#e3f2fd,#f3e5f5);border-radius:6px;display:flex;font-size:14px;justify-content:space-between;margin-bottom:15px;padding:10px 15px}.quantities-summary strong{color:#1976d2}.quantities-table{border:1px solid #dee2e6;border-radius:8px;overflow:hidden}.quantities-table table{border-collapse:collapse;margin:0;width:100%}.quantities-table th{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-bottom:2px solid #28a745;color:#495057;font-size:13px;font-weight:600;letter-spacing:.5px;padding:12px 10px;text-align:left;text-transform:uppercase}.quantities-table td{border-bottom:1px solid #f0f0f0;color:#495057;font-size:14px;padding:12px 10px;vertical-align:middle}.quantities-table tbody tr:hover{background:#28a7450d}.fraction-code{padding:4px 6px}.available-stock{color:#17a2b8;text-align:right}.quantity-field,.quantity-input{text-align:center}.quantity-field{border:2px solid #e2e8f0;border-radius:4px;font-size:14px;font-weight:600;padding:6px 8px;width:100px}.quantity-field:focus{border-color:#28a745;box-shadow:0 0 0 2px #28a7451a;outline:none}.quantity-actions{text-align:center}.quantity-actions button{border:none;border-radius:4px;cursor:pointer;font-size:11px;font-weight:600;margin:0 2px;padding:4px 8px;transition:all .2s}.max-btn{background:#28a745;color:#fff}.max-btn:hover{background:#218838;transform:translateY(-1px)}.zero-btn{background:#6c757d;color:#fff}.zero-btn:hover{background:#5a6268;transform:translateY(-1px)}.form-actions{gap:10px}.cancel-btn{background:#6c757d;border:none;border-radius:8px;color:#fff;font-size:14px;font-weight:600;padding:12px 20px;transition:all .2s}.cancel-btn:hover:not(:disabled){background:#5a6268;transform:translateY(-1px)}.save-btn{background:linear-gradient(135deg,#28a745,#20c997);padding:12px 20px;transition:all .2s}.save-btn:hover:not(:disabled){box-shadow:0 4px 12px #28a7454d}.cancel-btn:disabled,.save-btn:disabled{transform:none}@media (max-width:768px){.bulk-sales-overlay{padding:10px}.modal-content{padding:20px}.form-grid{grid-template-columns:1fr}.quantities-summary{flex-direction:column;gap:5px;text-align:center}.quantities-table{font-size:12px}.quantities-table td,.quantities-table th{padding:8px 6px}.quantity-field{font-size:12px;width:80px}.form-actions{flex-direction:column;gap:10px}.cancel-btn,.save-btn{width:100%}}@media (max-width:480px){.bulk-sales-modal{border-radius:0;height:100%;width:100%}.modal-content{padding:15px}}.date-info{background:linear-gradient(135deg,#e8f5e8,#f0f8ff);border:1px solid #b8e6b8;border-radius:6px;padding:10px}.date-info small{color:#2d5a2d;line-height:1.4}.date-info small:last-child{color:#5a7c5a}.bulk-organization-split-overlay{align-items:center;background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.bulk-organization-split-modal{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:1200px;overflow:auto;position:relative;width:100%}.modal-header{background-color:#f8fafc;border-radius:12px 12px 0 0;padding:24px 30px}.close-btn{padding:8px}.close-btn:hover{background-color:#f3f4f6;color:#374151}.general-info{margin-bottom:30px}.general-info h3{color:#374151;font-size:1.25rem;font-weight:600;margin:0 0 20px}.form-group label{color:#374151;font-size:.9rem;margin-bottom:6px}.form-group input,.form-group select,.form-group textarea{border:1px solid #d1d5db;font-size:.9rem;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-group input.error,.form-group select.error{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.error-text{color:#ef4444;font-size:.8rem;margin-top:4px}.organization-configuration{margin-bottom:30px}.organization-configuration h3{color:#374151;font-size:1.25rem;font-weight:600;margin:0 0 20px}.configuration-summary{background-color:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;color:#0c4a6e;font-weight:500;margin-bottom:20px;padding:16px}.fractions-organization-table{border:1px solid #e5e7eb;border-radius:8px;overflow-x:auto}.fractions-organization-table table{background:#fff;border-collapse:collapse;width:100%}.fractions-organization-table th{background-color:#f8fafc;border-bottom:1px solid #e5e7eb;color:#374151;font-size:.9rem;font-weight:600;padding:16px 12px;text-align:left}.fractions-organization-table td{border-bottom:1px solid #f3f4f6;padding:16px 12px;vertical-align:top}.fractions-organization-table tr.error{background-color:#fef2f2}.fraction-info{min-width:180px}.fraction-code{color:#1f2937;margin-bottom:4px}.fraction-name{color:#6b7280}.available-stock{color:#059669;font-weight:600;min-width:120px}.sale-type{min-width:160px}.radio-group{flex-direction:column;gap:8px}.radio-group label{color:#374151;font-size:.9rem}.organization-config{min-width:300px}.single-organization{display:flex;flex-direction:column;gap:12px}.organization-select{background-color:#fff;border:1px solid #d1d5db}.organization-select,.quantity-display{border-radius:6px;font-size:.9rem;padding:8px 12px}.quantity-display{background-color:#f3f4f6;color:#374151;font-weight:500}.split-organization{display:flex;flex-direction:column;gap:12px}.split-controls{display:flex;justify-content:flex-end}.auto-split-btn{background-color:#3b82f6;font-size:.8rem;transition:background-color .2s}.auto-split-btn:hover{background-color:#2563eb}.split-inputs{grid-gap:12px;gap:12px}.split-input-group label{color:#374151;font-size:.8rem;font-weight:500;margin-bottom:4px}.split-quantity-input{border:1px solid #d1d5db;border-radius:4px;font-size:.9rem;padding:8px 10px}.split-summary{background-color:#f0f9ff;border:1px solid #bae6fd;border-radius:4px;color:#0c4a6e;font-size:.85rem;padding:8px 12px;text-align:center}.form-actions{border-top:1px solid #e5e7eb;gap:16px}.cancel-btn,.save-btn{border:none;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;padding:12px 24px;transition:all .2s}.cancel-btn{background-color:#f3f4f6}.cancel-btn:hover{background-color:#e5e7eb}.save-btn{background-color:#059669}.save-btn:hover{background-color:#047857}.cancel-btn:disabled,.save-btn:disabled{cursor:not-allowed;opacity:.6}@media (max-width:768px){.bulk-organization-split-overlay{padding:10px}.bulk-organization-split-modal{max-height:95vh}.modal-content{padding:20px}.form-grid,.split-inputs{grid-template-columns:1fr}.form-actions{flex-direction:column}.fractions-organization-table{font-size:.8rem}.fractions-organization-table td,.fractions-organization-table th{padding:12px 8px}}.fractions-overview{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;padding:30px}.fractions-overview.loading{min-height:300px}.fractions-loading,.fractions-overview.loading{align-items:center;display:flex;justify-content:center}.fractions-loading{background:#f8f9fa;border-radius:8px;margin-top:20px;min-height:200px}.fractions-header{border-bottom:2px solid #f0f0f0;flex-wrap:nowrap;gap:20px;justify-content:space-between;margin-bottom:30px;padding-bottom:15px}.fractions-header,.header-left{align-items:center;display:flex}.header-left{gap:15px}.fractions-header h2{color:#333;margin:0}.close-modal-btn{align-items:center;background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;color:#6c757d;cursor:pointer;display:flex;font-size:18px;height:35px;justify-content:center;transition:all .2s;width:35px}.close-modal-btn:hover{background:#e9ecef;color:#495057;transform:scale(1.05)}.organization-filter{border-bottom:1px solid #e9ecef;margin-bottom:20px;overflow:hidden;padding:15px 0;width:100%}.filter-controls{display:flex;flex-direction:column;gap:15px}.date-control{background:linear-gradient(135deg,#f0f8ff,#e8f5e8);border:1px solid #b8e6b8;border-radius:8px;flex-direction:column;gap:8px;padding:15px}.date-control label{align-items:center;color:#2d5a2d;display:flex;gap:6px}.date-input{border:1px solid #b8e6b8;color:#2d5a2d;max-width:200px}.date-input:focus{border-color:#28a745;box-shadow:0 0 0 2px #28a74533}.date-control small{color:#5a7c5a;line-height:1.4}.organization-buttons{flex-wrap:wrap;gap:8px;justify-content:flex-start;max-width:100%;width:100%}.org-btn,.organization-buttons{align-items:center;display:flex}.org-btn{background:#fff;border:2px solid #e2e8f0;border-radius:6px;color:#495057;cursor:pointer;flex:0 1 auto;font-size:12px;font-weight:600;gap:4px;max-width:150px;min-width:0;overflow:hidden;padding:8px 12px;text-overflow:ellipsis;transition:all .2s;white-space:nowrap}.org-btn:hover{box-shadow:0 2px 8px #0000001a;transform:translateY(-1px)}.org-btn.active{background:linear-gradient(135deg,#007bff,#0056b3);border-color:#007bff;box-shadow:0 2px 8px #007bff4d;color:#fff}.org-btn.ecotic.active{background:linear-gradient(135deg,#28a745,#20c997);border-color:#28a745;box-shadow:0 2px 8px #28a7454d}.org-btn.ecopositive.active{background:linear-gradient(135deg,#17a2b8,#138496);border-color:#17a2b8;box-shadow:0 2px 8px #17a2b84d}.fractions-actions{align-items:flex-end;display:flex;flex-direction:column;gap:10px}.selection-info{align-items:center;background:linear-gradient(135deg,#e3f2fd,#f3e5f5);border:1px solid #bbdefb;border-radius:6px;color:#1565c0;display:flex;font-size:12px;font-weight:500;gap:8px;padding:6px 10px}.bulk-sales-btn{background:linear-gradient(135deg,#28a745,#20c997);border:none;border-radius:4px;box-shadow:0 1px 3px #0000001a;color:#fff;cursor:pointer;font-size:11px;font-weight:600;padding:6px 10px;transition:all .2s;white-space:nowrap}.bulk-sales-btn:hover:not(:disabled){box-shadow:0 2px 6px #28a7454d;transform:translateY(-1px)}.organization-split-btn{background:linear-gradient(135deg,#007bff,#0056b3);border:none;border-radius:4px;box-shadow:0 1px 3px #0000001a;color:#fff;cursor:pointer;font-size:11px;font-weight:600;padding:6px 10px;transition:all .2s}.organization-split-btn:hover:not(:disabled){box-shadow:0 2px 6px #007bff4d;transform:translateY(-1px)}.clear-selection-btn{background:linear-gradient(135deg,#dc3545,#c82333);border:none;border-radius:4px;box-shadow:0 1px 3px #0000001a;color:#fff;cursor:pointer;font-size:11px;font-weight:600;padding:6px 10px;transition:all .2s;white-space:nowrap}.clear-selection-btn:hover:not(:disabled){background:linear-gradient(135deg,#c82333,#a71e2a);box-shadow:0 2px 6px #dc35454d;transform:translateY(-1px)}.fractions-summary{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:30px}.no-fractions{border:1px solid #dee2e6;border-radius:8px;padding:50px}.no-fractions h3{color:#495057;margin-bottom:10px}.fractions-stock-table{background:#fff;border:1px solid #dee2e6;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.fractions-stock-table table{border-collapse:collapse;margin:0;width:100%}.fractions-stock-table th{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-bottom:2px solid #007bff;border-top:1px solid #dee2e6;color:#495057;font-size:14px;font-weight:600;letter-spacing:.5px;padding:15px 12px;text-align:left;text-transform:uppercase}.fractions-stock-table tbody tr{display:table-row!important}.fractions-stock-table td{border-bottom:1px solid #f0f0f0;color:#495057;font-size:14px;padding:12px}.fractions-stock-table td,.fractions-stock-table th{display:table-cell!important}.fraction-row.selected{background:#28a7451a;border-left:4px solid #28a745}.fraction-row.selected:hover{background:#28a74526}.fraction-select{padding:8px!important;text-align:center}.fraction-checkbox,.select-all-checkbox{accent-color:#28a745;cursor:pointer;height:16px;width:16px}.fraction-organization{padding:8px!important;text-align:center}.organization-badge{border:1px solid;border-radius:12px}.organization-badge.ecotic{background:linear-gradient(135deg,#e8f5e8,#c8e6c9);border-color:#4caf50}.organization-badge.ecopositive{background:linear-gradient(135deg,#e3f2fd,#bbdefb);border-color:#2196f3}.organization-badge.unallocated{background:linear-gradient(135deg,#f5f5f5,#e0e0e0);border-color:#9e9e9e;color:#616161}.organization-badge.mixed{background:linear-gradient(135deg,#fff3e0,#ffe0b2);border-color:#ff9800;color:#e65100;font-size:14px}.fraction-row.expandable{cursor:pointer}.fraction-row.expandable:hover{background:#ff98000d}.expand-icon{color:#ff9800;display:inline-block;font-weight:700;margin-right:6px;transition:transform .2s}.fraction-detail-row{background:#007bff05;border-left:3px solid #007bff}.fraction-detail-row:hover{background:#007bff0d}.fraction-detail-row.selected{background:#28a74514;border-left:3px solid #28a745}.fraction-detail-row td.detail{color:#6c757d;font-size:13px;padding-left:20px}.fraction-detail-row .fraction-code.detail{background:#007bff0d;color:#007bff;font-family:Courier New,monospace}@media (max-width:768px){.fractions-header{align-items:stretch;flex-direction:column;gap:15px}.organization-buttons{gap:8px;justify-content:center}.org-btn{flex:1 1;font-size:12px;justify-content:center;padding:10px 12px}.fractions-actions{align-items:stretch}.selection-info{flex-direction:column;gap:8px;text-align:center}.selection-info>span{font-size:13px}.sales-btn{justify-content:center;width:100%}.fractions-stock-table{overflow-x:auto}.fractions-stock-table td,.fractions-stock-table th{font-size:12px;padding:8px 6px}.group-title{align-items:flex-start;flex-direction:column;gap:5px}.group-count{font-size:10px}}@media (max-width:480px){.fractions-overview{padding:20px}.fractions-summary{grid-template-columns:1fr}}.stock-overview{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;padding:30px}.stock-overview.loading{align-items:center;display:flex;justify-content:center;min-height:300px}.loading-spinner{color:#6c757d;text-align:center}.stock-header{align-items:center;border-bottom:2px solid #f0f0f0;display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:15px}.stock-header h2{color:#333;margin:0}.header-right{align-items:center;display:flex;gap:15px}.export-actions{display:flex;gap:8px}.export-btn{align-items:center;background:#fff;border:1px solid #dee2e6;border-radius:6px;color:#495057;cursor:pointer;display:flex;font-size:12px;font-weight:500;gap:5px;padding:8px 16px;transition:all .2s}.export-btn:hover:not(:disabled){background:#f8f9fa;border-color:#adb5bd;transform:translateY(-1px)}.export-btn:disabled{cursor:not-allowed;opacity:.6}.export-btn.excel:hover:not(:disabled){background:#e8f5e8;border-color:#28a745;color:#28a745}.export-btn.pdf:hover:not(:disabled){background:#fff3cd;border-color:#ffc107;color:#856404}.export-btn.print:hover:not(:disabled){background:#e2e3e5;border-color:#6c757d;color:#495057}.tab-navigation{display:flex;gap:10px}.tab-btn{background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;color:#495057;font-size:14px;padding:10px 20px}.tab-btn:hover{background:#e9ecef;transform:translateY(-1px)}.tab-btn.active{background:linear-gradient(135deg,#007bff,#0056b3);border-color:#007bff;color:#fff}.date-filter-section{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid #dee2e6;border-radius:10px;margin-bottom:20px;padding:16px 20px}.date-control{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.date-control label{color:#495057;font-size:14px;font-weight:600;white-space:nowrap}.date-input{border:2px solid #dee2e6;border-radius:6px;color:#495057;cursor:pointer;padding:8px 12px;transition:all .2s}.date-input:focus,.date-input:hover{border-color:#007bff}.date-input:focus{box-shadow:0 0 0 3px #007bff26}.date-control small{color:#6c757d;font-size:12px;font-style:italic}@media (max-width:768px){.date-control{align-items:flex-start;flex-direction:column}.date-input{width:100%}}.stock-summary{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:30px}.summary-card{border-radius:10px;padding:20px}.summary-value{font-size:24px}.summary-label{font-size:14px}.no-stock{padding:50px}.no-stock h3{color:#495057;margin-bottom:10px}.stock-categories{display:flex;flex-direction:column;gap:25px}.stock-category{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;padding:20px}.category-title{border-bottom:2px solid #dee2e6;color:#495057;font-size:18px;font-weight:600;margin:0 0 15px;padding-bottom:10px}.stock-items{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.stock-item{background:#fff;border:1px solid #dee2e6;box-shadow:0 2px 4px #0000000d;padding:15px}.stock-item:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.equipment-item{border-left:4px solid #28a745}.fraction-item{border-left:4px solid #17a2b8}.item-info{margin-bottom:10px}.item-name{align-items:center;display:flex;gap:10px;margin-bottom:5px}.item-name strong{color:#333;font-size:16px}.item-quantities{display:flex;gap:20px;margin-bottom:8px}.quantity-item{align-items:center;background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;display:flex;flex-direction:column;padding:8px 12px}.quantity-value{color:#495057;font-size:16px;font-weight:700}.quantity-label{color:#6c757d;font-size:11px;letter-spacing:.5px;text-transform:uppercase}.equipment-item .quantity-value{color:#28a745}.fraction-item .quantity-value{color:#17a2b8}.item-updated{color:#6c757d;font-size:11px;font-style:italic;text-align:right}@media (max-width:768px){.stock-header{align-items:flex-start;flex-direction:column;gap:15px}.tab-navigation{justify-content:center;width:100%}.tab-btn{flex:1 1;text-align:center}.stock-summary{grid-template-columns:repeat(2,1fr)}.stock-items{grid-template-columns:1fr}.item-quantities{justify-content:space-around}}@media (max-width:480px){.stock-overview{padding:20px}.stock-summary{grid-template-columns:1fr}.tab-btn{font-size:12px;padding:8px 12px}.stock-items{gap:10px}.stock-item{padding:12px}.item-name{align-items:flex-start;flex-direction:column;gap:5px}}.equipment-stock-table,.fractions-stock-table{background:#fff;border:1px solid #dee2e6;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.equipment-stock-table table,.fractions-stock-table table{border-collapse:collapse;margin:0;width:100%}.equipment-stock-table th,.fractions-stock-table th{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-bottom:2px solid #007bff;border-top:1px solid #dee2e6;color:#495057;font-size:14px;font-weight:600;letter-spacing:.5px;padding:15px 12px;text-align:left;text-transform:uppercase}.equipment-stock-table td,.fractions-stock-table td{border-bottom:1px solid #f0f0f0;color:#495057;font-size:14px;padding:12px}.group-header-row{background:linear-gradient(135deg,#f8f9fa,#e9ecef)!important}.group-header{border-bottom:2px solid #007bff!important;padding:15px 12px!important}.group-title{align-items:center;display:flex;justify-content:space-between}.group-code{color:#495057;font-size:16px;font-weight:700}.group-count{background:#007bff1a;border:1px solid #007bff33;border-radius:12px;color:#6c757d;font-size:12px;font-weight:500;padding:4px 8px}.separator-row{background:#0000!important;height:8px}.separator-cell{background:linear-gradient(90deg,#0000,#dee2e6 50%,#0000);border:none!important;height:2px;padding:0!important}.equipment-row:hover{background:#28a7450d;transform:translateX(2px);transition:all .2s ease}.equipment-code{background:#28a7451a;border-radius:4px;color:#28a745;font-family:Courier New,monospace;font-size:12px;font-weight:700;padding:4px 6px!important;text-align:center}.equipment-name{color:#333}.equipment-organization{margin-top:4px}.organization-badge{border-radius:4px;display:inline-block;font-size:11px;font-weight:600;letter-spacing:.5px;padding:4px 8px;text-transform:uppercase}.organization-badge.ecotic{background-color:#e8f5e8;border:1px solid #4caf50;color:#2e7d32}.organization-badge.ecopositive{background-color:#e3f2fd;border:1px solid #2196f3;color:#1565c0}.organization-badge.unallocated{background-color:#fafafa;border:1px solid #bdbdbd;color:#757575}.equipment-weight{color:#28a745;font-weight:600;text-align:right}.equipment-pieces{color:#007bff;font-weight:600;text-align:right}.equipment-date{color:#6c757d;font-size:12px;text-align:center}.fraction-row:hover{background:#17a2b80d;transform:translateX(2px);transition:all .2s ease}.fraction-code{background:#17a2b81a;border-radius:4px;color:#17a2b8;padding:4px 6px!important;text-align:center}.fraction-name{font-weight:600}.fraction-weight{color:#17a2b8;font-weight:600;text-align:right}.fraction-date{color:#6c757d;font-size:12px;text-align:center}@media (max-width:768px){.equipment-stock-table,.fractions-stock-table{overflow-x:auto}.equipment-stock-table td,.equipment-stock-table th,.fractions-stock-table td,.fractions-stock-table th{font-size:12px;padding:8px 6px}.group-title{align-items:flex-start;flex-direction:column;gap:5px}.group-count{font-size:10px}}.fraction-header{align-items:flex-start;display:flex;gap:20px;justify-content:space-between;margin-bottom:30px}.fraction-actions,.sales-btn{align-items:center;display:flex}.sales-btn{background:linear-gradient(135deg,#fd7e14,#e55353);border:none;border-radius:8px;box-shadow:0 2px 4px #0000001a;color:#fff;cursor:pointer;font-size:14px;font-weight:600;gap:8px;padding:12px 20px;transition:all .2s}.sales-btn:hover:not(:disabled){box-shadow:0 4px 8px #0003;transform:translateY(-2px)}.sales-btn:disabled{cursor:not-allowed;opacity:.6}@media (max-width:768px){.fraction-header{align-items:stretch;flex-direction:column}.fraction-actions{justify-content:center;margin-top:15px}.sales-btn{justify-content:center;width:100%}}.recipe-selector{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;margin:15px 0;padding:15px}.recipe-selector label{color:#495057;display:block;font-size:14px;margin-bottom:8px}.recipe-select-dropdown{background-color:#fff;border:1px solid #ced4da;border-radius:4px;font-size:14px;padding:8px 12px;width:100%}.recipe-select-dropdown:focus{border-color:#fd7e14;box-shadow:0 0 0 2px #fd7e1440;outline:none}.recipe-info{color:#6c757d;margin-top:10px}.recipe-info small{line-height:1.4}.dismantling-form{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;margin:0 10px 30px;padding:30px}.add-fraction-section{background:#f8f9fa;border-top:1px solid #e9ecef;padding:15px;text-align:center}.add-fraction-btn:hover{box-shadow:0 4px 8px #28a7454d;transform:translateY(-1px)}.fraction-suggestion-warning{background:linear-gradient(135deg,#f0f8ff,#e8f5e8);border:1px solid #b8e6b8;border-radius:8px;display:flex;flex-direction:column;gap:4px;margin-bottom:20px;padding:15px}.fraction-suggestion-warning small{color:#2d5a2d;font-size:12px;line-height:1.4}.organization-breakdown{display:flex;flex-wrap:wrap;gap:8px;margin-top:5px}.allocation-badge{border:1px solid;border-radius:12px;display:inline-block;font-size:11px;font-weight:600}.allocation-badge.ecotic{background-color:#d4edda;border-color:#28a745;color:#155724}.allocation-badge.ecopositive{background-color:#cce7ff;border-color:#007bff;color:#004085}.allocation-badge.unallocated{background-color:#f8f9fa;border-color:#6c757d;color:#495057}.individual-equipment-fractions{margin-bottom:30px}.equipment-fraction-section{border:1px solid #e9ecef;border-radius:8px;margin-bottom:25px;overflow:hidden}.equipment-header{background:linear-gradient(135deg,#f8f9fa,#e9ecef);padding:15px 20px}.equipment-header h5{font-size:16px;margin:0 0 8px}.equipment-allocation{margin-top:8px}.weight-input{border:2px solid #e9ecef;font-size:14px;text-align:center;width:80px}.weight-input:focus{border-color:#007bff;box-shadow:0 0 0 .2rem #007bff40}.fraction-suggestion-warning small:last-child{color:#5a7c5a}.manual-addition{background-color:#ffc1071a!important;border-left:4px solid #ffc107!important}.manual-addition .code-input,.manual-addition .name-input{background:#fff;border:1px solid #ffc107;border-radius:4px;font-size:12px;padding:4px 8px}.manual-addition .code-input:focus,.manual-addition .name-input:focus{border-color:#ff9800;box-shadow:0 0 0 2px #ffc10733;outline:none}.source-equipment{word-wrap:break-word;max-width:150px}.source-equipment small{color:#6c757d;font-size:11px;line-height:1.2}.remove-fraction-btn{background:linear-gradient(135deg,#dc3545,#c82333)}.remove-fraction-btn:hover{box-shadow:0 2px 6px #dc35454d}.status-badge.manual{background:linear-gradient(135deg,#ffc107,#ff9800);border-radius:12px;color:#212529;font-size:11px;font-weight:600;letter-spacing:.5px;padding:3px 8px;text-transform:uppercase}.individual-equipment-fractions{background-color:#f8f9fa;border:1px solid #e1e5e9;border-radius:8px;margin-bottom:20px;padding:20px}.equipment-fraction-section{background:#fff;border:1px solid #dee2e6;border-radius:6px;margin-bottom:30px;padding:15px}.equipment-header{border-bottom:1px solid #e9ecef;display:flex;flex-direction:column;gap:10px;margin-bottom:15px;padding-bottom:10px}.equipment-header h5{color:#495057;font-weight:600;margin:0}.equipment-totals{align-items:center;display:flex;justify-content:space-between}.equipment-totals-info{align-items:center;display:flex;font-size:14px;gap:15px}.total-fractions-weight{color:#007bff;font-weight:600}.total-fractions-percentage{color:#28a745;font-size:16px;font-weight:600}.equipment-allocation{align-items:center;display:flex;gap:10px}.allocation-badge{background:#e3f2fd;border-radius:4px;color:#1976d2;font-size:12px;font-weight:500;padding:4px 8px}.equipment-fractions-table{margin-top:10px}.equipment-fractions-table table{border-collapse:collapse;font-size:13px;width:100%}.equipment-fractions-table td,.equipment-fractions-table th{border-bottom:1px solid #dee2e6;padding:8px 12px;text-align:left}.equipment-fractions-table th{background-color:#f8f9fa;color:#495057;font-weight:600}.total-fractions-summary{border-top:2px solid #dee2e6;margin-top:30px;padding-top:20px}.total-fractions-summary h4{color:#495057;margin-bottom:15px}.form-header{border-bottom:2px solid #f0f0f0;margin-bottom:30px;padding-bottom:15px}.form-header h2{color:#333;font-size:24px;margin:0 0 10px}.form-header p{color:#6c757d;font-size:14px;margin:0}.form-section{margin-bottom:25px}.form-group input,.form-group select,.form-group textarea{border-radius:6px;padding:10px 12px}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#fd7e14}.equipment-selection{margin-bottom:30px}.equipment-selection h3{color:#495057;font-size:18px;margin-bottom:20px}.no-stock{background:#f8f9fa;border:1px solid #dee2e6;color:#6c757d;padding:30px}.stock-list{display:flex;flex-direction:column;gap:15px;max-height:500px;overflow-y:auto;padding:10px 0}.stock-item{align-items:center;background:#f8f9fa;border:2px solid #dee2e6;border-radius:8px;display:flex;justify-content:space-between;padding:20px;transition:all .2s}.stock-item:hover{background:#fff8f0;border-color:#fd7e14}.stock-item.selected{background:#f0f8f0;border-color:#28a745}.item-info{flex:1 1;margin-right:20px}.item-header{align-items:center;display:flex;gap:10px;margin-bottom:5px}.item-code{background:#495057;border-radius:3px;color:#fff;font-family:Courier New,monospace;font-size:11px;font-weight:700;padding:2px 6px}.item-name{color:#333;font-size:16px;font-weight:600}.item-category{color:#6c757d;font-size:12px;font-style:italic;margin-bottom:5px}.available-stock{color:#495057;font-size:13px}.available-stock strong{color:#28a745}.selection-controls{align-items:end;display:flex;gap:15px}.input-group{display:flex;flex-direction:column;gap:5px;min-width:100px}.input-group label{color:#6c757d;font-size:12px;font-weight:500}.input-group input{border:1px solid #ced4da;border-radius:4px;font-size:13px;padding:8px 10px}.input-group input:focus{border-color:#fd7e14;outline:none}.action-buttons{flex-direction:column}.remove-btn,.select-btn{border:none;border-radius:4px;cursor:pointer;font-size:12px;font-weight:500;padding:8px 12px;white-space:nowrap}.select-btn{background:#28a745;color:#fff}.select-btn:hover:not(:disabled){background:#218838}.select-btn:disabled{background:#6c757d;cursor:not-allowed}.remove-btn{background:#dc3545;color:#fff}.remove-btn:hover{background:#c82333}.selection-summary{background:#e8f5e9;border:1px solid #c3e6cb;border-radius:8px;margin-bottom:25px;padding:20px}.selection-summary h3{color:#155724;font-size:16px;margin:0 0 15px}.summary-stats{gap:30px;justify-content:center}.stat{text-align:center}.stat .value{color:#28a745;display:block;font-size:18px;font-weight:700}.stat .label{color:#6c757d;font-size:12px;letter-spacing:.5px;text-transform:uppercase}.input-summary{background:#fff3cd;border:1px solid #ffeaa7;border-radius:8px;margin-bottom:25px;padding:20px}.input-summary h3{color:#856404;font-size:16px;margin:0 0 15px}.fractions-section{margin-bottom:30px}.fractions-section h3{color:#495057;font-size:18px;margin-bottom:20px}.fractions-table{border:1px solid #dee2e6;overflow-x:auto}.fractions-table table{background:#fff}.fractions-table td,.fractions-table th{border-bottom:1px solid #dee2e6}.fractions-table th{background-color:#f8f9fa}.fraction-code{color:#495057}.fraction-code,.fraction-code .code-input{font-family:Courier New,monospace;font-size:12px;font-weight:700}.fraction-code .code-input{background:#fff;border:1px solid #ced4da;border-radius:4px;max-width:120px;padding:6px 8px;width:100%}.fraction-code .code-input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff33;outline:none}.fraction-name{color:#333;font-weight:500}.weight-input{border:1px solid #ced4da;border-radius:4px;font-size:13px;padding:6px 8px;width:120px}.weight-input:focus{border-color:#fd7e14;outline:none}.percentage{color:#17a2b8;font-weight:600}.status-badge.calculated{background:#d1ecf1;color:#0c5460}.status-badge.modified{background:#f8d7da;color:#721c24}.fraction-summary{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;margin-top:15px;padding:15px 20px}.summary-stat{color:#495057;font-size:16px;text-align:center}.form-actions{border-top:1px solid #dee2e6}.form-actions button{border-radius:6px;font-weight:500;transition:all .2s}.form-actions button[type=button]:not(.primary){background:#6c757d;color:#fff}.form-actions button[type=button]:not(.primary):hover{background:#5a6268}.form-actions button.primary{background:linear-gradient(135deg,#fd7e14,#e8590c);box-shadow:0 2px 10px #fd7e144d}.form-actions button.primary:hover:not(:disabled){box-shadow:0 4px 20px #fd7e1466}.form-actions button:disabled{background:#6c757d}@media (max-width:768px){.dismantling-form{margin:0 5px 20px;padding:20px}.form-row{grid-template-columns:1fr}.stock-item{align-items:stretch;flex-direction:column;gap:15px}.selection-controls{justify-content:space-between}.summary-stats{flex-direction:column;gap:15px}.form-actions{flex-direction:column-reverse}.fractions-table{font-size:12px}.fractions-table td,.fractions-table th{padding:8px}}@media (max-width:480px){.selection-controls{align-items:stretch;flex-direction:column;gap:10px}.input-group{min-width:auto}.action-buttons{flex-direction:row;justify-content:space-around}}.capacity-info{margin:20px 0}.capacity-info.capacity-exceeded{background-color:#f8d7da;border-left-color:#e74c3c}.capacity-info h3{font-size:16px}.capacity-stat{padding:8px 12px}.capacity-stat span{color:#34495e}.capacity-stat strong{color:#2c3e50}.capacity-bar{border-radius:6px;height:12px;position:relative}.capacity-used{background-color:#7f8c8d;left:0;transition:width .3s ease}.capacity-current,.capacity-used{height:100%;position:absolute;top:0}.capacity-current{background-color:#3498db;transition:width .3s ease,left .3s ease}.capacity-exceeded .capacity-current{background-color:#e74c3c}.capacity-warning .capacity-current{background-color:#f39c12}.capacity-warning-alert{background-color:#fff3cd;border:1px solid #ffeaa7;border-radius:6px;color:#856404;font-weight:500;line-height:1.4;margin:15px 0;padding:15px}.capacity-warning-alert:contains("ATENȚIE!"){background-color:#f8d7da;border-color:#f5c6cb;color:#721c24}.percentage-buttons{display:flex;flex-wrap:wrap;gap:4px;justify-content:center}.percentage-btn{background:#fff;border:1px solid #007bff;border-radius:4px;color:#007bff;cursor:pointer;font-size:11px;font-weight:600;min-width:40px;padding:4px 8px;text-align:center;transition:all .2s}.percentage-btn:hover{background:#007bff;box-shadow:0 2px 4px #007bff4d;color:#fff;transform:translateY(-1px)}.percentage-btn:active{box-shadow:0 1px 2px #007bff4d;transform:translateY(0)}.stock-date-info{background:linear-gradient(135deg,#e8f5e8,#f0f8ff);border:1px solid #b8e6b8;border-radius:8px;margin-bottom:20px;padding:15px}.stock-date-info p{color:#2d5a2d;font-size:14px;margin:0 0 8px}.stock-date-info small{color:#5a7c5a;font-size:12px;line-height:1.4}.no-stock{background:#fff3cd;border:1px solid #ffeaa7;border-radius:8px;color:#856404;padding:20px;text-align:center}.no-stock p{font-size:16px;margin:0 0 8px}.no-stock small{color:#6c5d03;font-size:13px}.fraction-summary .summary-stats{align-items:center;background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;display:flex;gap:20px;justify-content:center;margin-top:15px;padding:15px}.fraction-summary .summary-stat{align-items:center;display:flex;flex-direction:column;text-align:center}.fraction-summary .summary-stat .label{color:#6c757d;font-size:12px;margin-bottom:4px}.fraction-summary .summary-stat strong.balanced{color:#28a745}.fraction-summary .summary-stat strong.unbalanced{color:#dc3545}.capacity-dashboard{background:linear-gradient(135deg,#f8fafc,#e2e8f0);border:1px solid #cbd5e0;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a;margin:20px 0;padding:20px;transition:all .3s ease}.capacity-dashboard.warning{background:linear-gradient(135deg,#fef3cd,#fed7aa);border-color:#f59e0b}.capacity-dashboard.danger{background:linear-gradient(135deg,#fee2e2,#fecaca);border-color:#dc2626}.capacity-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:16px}.capacity-title h3{color:#1f2937;font-size:18px;font-weight:600;margin:0 0 4px}.capacity-date{color:#6b7280;font-size:13px;text-transform:capitalize}.capacity-percentage{text-align:right}.percentage-value{color:#059669;display:block;font-size:24px;font-weight:700;line-height:1}.capacity-dashboard.warning .percentage-value{color:#d97706}.capacity-dashboard.danger .percentage-value{color:#dc2626}.percentage-label{color:#6b7280;font-size:12px;letter-spacing:.5px;text-transform:uppercase}.capacity-visual{margin:20px 0}.progress-bar,.progress-container{position:relative}.progress-bar{background:#f1f5f9;border-radius:6px;box-shadow:inset 0 2px 4px #0000001a;height:12px}.progress-used{background:linear-gradient(90deg,#10b981,#059669);border-radius:6px 0 0 6px;height:100%;left:0;position:absolute;top:0;transition:width .5s ease}.capacity-dashboard.warning .progress-used{background:linear-gradient(90deg,#f59e0b,#d97706)}.capacity-dashboard.danger .progress-used{background:linear-gradient(90deg,#ef4444,#dc2626)}.progress-planned{background:linear-gradient(90deg,#3b82f6cc,#2563ebcc);border-left:2px solid #fff;border-radius:0 6px 6px 0;height:100%;position:absolute;top:0;transition:all .5s ease}.progress-labels{color:#6b7280;display:flex;font-size:11px;font-weight:500;justify-content:space-between;margin-top:6px}.capacity-details{margin-top:16px}.detail-row{display:flex;gap:20px;margin-bottom:12px}.detail-item{align-items:center;display:flex;flex:1 1;gap:8px}.detail-dot{border-radius:50%;flex-shrink:0;height:10px;width:10px}.detail-item.used .detail-dot{background:#10b981}.capacity-dashboard.warning .detail-item.used .detail-dot{background:#f59e0b}.capacity-dashboard.danger .detail-item.used .detail-dot{background:#ef4444}.detail-item.planned .detail-dot{background:#3b82f6}.detail-label{color:#4b5563;flex:1 1;font-size:13px}.detail-value{color:#1f2937;font-size:13px;font-weight:600}.remaining-capacity{align-items:center;background:#ffffffb3;border:1px solid #cbd5e080;border-radius:8px;display:flex;justify-content:space-between;padding:12px 16px}.remaining-label{color:#374151;font-size:14px;font-weight:500}.remaining-value{color:#059669;font-size:16px;font-weight:700}.capacity-dashboard.warning .remaining-value{color:#d97706}.capacity-dashboard.danger .remaining-value{color:#dc2626}.capacity-alert{align-items:flex-start;background:#dc26261a;border:1px solid #dc26264d;border-radius:8px;display:flex;gap:12px;margin-top:16px;padding:12px 16px}.alert-icon{font-size:18px}.alert-content{color:#991b1b;font-size:14px;line-height:1.4}.alert-content strong{font-weight:600}@media (max-width:768px){.capacity-header{align-items:flex-start;flex-direction:column;gap:12px}.capacity-percentage{text-align:left}.detail-row{flex-direction:column;gap:8px}.remaining-capacity{flex-direction:column;gap:4px;text-align:center}}.modal-overlay-edit{align-items:center;animation:fadeIn .2s ease-out;background:#000000bf;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.edit-modal-container{animation:slideUp .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0006;display:flex;flex-direction:column;max-height:90vh;max-width:1400px;width:95%}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.edit-modal-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:2px solid #e8edf2;border-radius:16px 16px 0 0;display:flex;justify-content:space-between;padding:24px 32px}.edit-modal-header h2{color:#fff;font-size:28px;font-weight:700;margin:0}.operation-subtitle{color:#ffffffe6;font-size:16px;font-weight:400;margin:6px 0 0}.close-btn-edit{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:32px;font-weight:300;height:48px;justify-content:center;transition:all .2s;width:48px}.close-btn-edit:hover{background:#ffffff4d;transform:rotate(90deg)}.edit-modal-body{background:#f7f9fc;flex:1 1;overflow-y:auto;padding:32px}.edit-section{background:#fff;border:1px solid #e8edf2;border-radius:12px;box-shadow:0 2px 8px #0000000f;margin-bottom:24px;padding:24px}.section-header-edit{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.section-header-edit h3{color:#2d3748;font-size:22px;font-weight:700;margin:0}.btn-add-new{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 4px 12px #667eea4d;color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:12px 24px;transition:all .2s}.btn-add-new:hover:not(:disabled){box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.btn-add-new:disabled{cursor:not-allowed;opacity:.5;transform:none}.btn-delete-small{background:#fee;border:1px solid #fcc;border-radius:6px;cursor:pointer;font-size:16px;padding:6px 12px;transition:all .2s}.btn-delete-small:hover{background:#fdd;transform:scale(1.1)}.table-container{border:1px solid #e8edf2;border-radius:8px}.edit-table-modern{background:#fff;border-collapse:collapse;width:100%}.edit-table-modern thead{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.edit-table-modern th{font-size:14px;font-weight:600;letter-spacing:.5px;padding:16px 20px;text-align:left;text-transform:uppercase}.edit-table-modern tbody tr{border-bottom:1px solid #e8edf2;transition:background .2s}.edit-table-modern tbody tr:hover{background:#f7f9fc}.edit-table-modern tbody tr:last-child{border-bottom:none}.edit-table-modern td{color:#4a5568;font-size:15px;padding:16px 20px}.editable-cell{border:2px dashed #0000;border-radius:6px;color:#667eea;cursor:pointer;display:inline-block;font-weight:500;min-width:100px;padding:8px 12px;transition:all .2s}.editable-cell:hover{background:#f0f4ff;border-color:#667eea}.editable-cell:empty:before{color:#cbd5e0;content:"(Click pentru a edita)";font-style:italic}.weight-cell{min-width:80px;text-align:right}.inline-edit-input{background:#f0f4ff;border:2px solid #667eea;border-radius:6px;font-family:inherit;font-size:15px;outline:none;padding:8px 12px;transition:all .2s;width:100%}.inline-edit-input:focus{border-color:#764ba2;box-shadow:0 0 0 3px #667eea33}.empty-state{background:#f7f9fc;border:2px dashed #cbd5e0;border-radius:8px;padding:48px 24px;text-align:center}.empty-state p{font-size:16px;margin:0}.empty-state.error{background:#fff5f5;border-color:#fc8181}.empty-state.error p{color:#c53030;font-weight:600}.totals-bar{background:linear-gradient(135deg,#667eea15,#764ba215);border:2px solid #e8edf2;border-radius:8px;display:flex;gap:24px;justify-content:space-between;margin-top:20px;padding:20px}.total-item{flex-direction:column;gap:4px}.total-label{color:#718096;font-size:13px;letter-spacing:.5px;text-transform:uppercase}.total-value{color:#2d3748;font-size:24px;font-weight:700}.total-value.success{color:#38a169}.total-value.warning{color:#e53e3e}.notes-textarea{border:2px solid #e8edf2;border-radius:8px;font-family:inherit;font-size:15px;line-height:1.6;min-height:100px;padding:16px;resize:vertical;transition:all .2s;width:100%}.notes-textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.edit-modal-footer{background:#fff;border-radius:0 0 16px 16px;border-top:2px solid #e8edf2;display:flex;gap:16px;justify-content:flex-end;padding:24px 32px}.btn-cancel-modern,.btn-save-modern{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:8px;padding:14px 32px;transition:all .2s}.btn-cancel-modern{background:#e2e8f0;color:#4a5568}.btn-cancel-modern:hover:not(:disabled){background:#cbd5e0;transform:translateY(-1px)}.btn-save-modern{background:linear-gradient(135deg,#48bb78,#38a169);box-shadow:0 4px 12px #48bb784d;color:#fff}.btn-save-modern:hover:not(:disabled){box-shadow:0 6px 20px #48bb7866;transform:translateY(-2px)}.btn-cancel-modern:disabled,.btn-save-modern:disabled{cursor:not-allowed;opacity:.6;transform:none!important}@media (max-width:1200px){.edit-modal-container{max-height:95vh;width:98%}.totals-bar{flex-direction:column;gap:12px}}@media (max-width:768px){.edit-modal-header{padding:20px}.edit-modal-header h2{font-size:22px}.edit-modal-body{padding:20px}.edit-section{padding:16px}.section-header-edit{align-items:flex-start;flex-direction:column;gap:12px}.btn-add-new{width:100%}.edit-table-modern td,.edit-table-modern th{font-size:13px;padding:12px}.edit-modal-footer{gap:12px;padding:16px 20px}.btn-cancel-modern,.btn-save-modern{flex:1 1;justify-content:center}}.edit-modal-body::-webkit-scrollbar{width:10px}.edit-modal-body::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}.edit-modal-body::-webkit-scrollbar-thumb{background:#667eea;border-radius:10px}.edit-modal-body::-webkit-scrollbar-thumb:hover{background:#764ba2}.dismantling-operations-list{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:20px}.organization-row{background-color:#f8f9fa!important;border-left:3px solid #e9ecef}.organization-row:hover{background-color:#f1f3f4!important}.organization-row td{font-style:italic;padding:6px 12px!important}.active-filter-tags .filter-tag{border-radius:4px;font-weight:700;margin-right:8px;padding:4px 8px}.filter-tag.internal{background-color:#e3f2fd;color:#1976d2}.filter-tag.ecotic{background-color:#f1f8e9;color:#388e3c}.filter-tag.ecopositive{background-color:#e8f5e8;color:#2e7d32}.filter-info-box{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;margin-bottom:15px;padding:15px}.filter-explanation{background-color:#fff3cd;border:1px solid #ffecb5;border-radius:4px;color:#856404;margin-top:10px;padding:10px}.filter-explanation p{font-size:14px;margin:0}.filter-explanation strong{color:#533f03}.operations-summary{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin-bottom:20px;padding:20px}.operations-summary h4{border-bottom:2px solid #4caf50;color:#2d5a2d;margin:0 0 15px;padding-bottom:8px}.summary-grid{grid-gap:15px;gap:15px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.summary-card{background:#fff;border-radius:6px;box-shadow:0 2px 4px #0000001a}.summary-card.total{border-left:4px solid #2196f3}.summary-card.ecotic{border-left:4px solid #4caf50}.summary-card.ecopositive{border-left:4px solid #2e7d32}.summary-card h5{color:#333;font-size:16px;margin:0 0 10px}.summary-stats{display:flex;flex-direction:column;gap:8px}.summary-stats .stat{align-items:center;display:flex;justify-content:space-between}.summary-stats .stat-label{color:#666;font-size:14px}.summary-stats .stat-value{color:#333;font-size:16px;font-weight:700}.operations-header{align-items:center;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:20px}.operations-header h2{color:#2c3e50;margin:0}.date-selector{align-items:center;display:flex;gap:10px}.date-selector label{color:#34495e;font-weight:500}.date-selector input[type=date]{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:8px 12px}.capacity-info{border-left:4px solid #3498db;border-radius:8px;margin-bottom:25px;padding:20px}.capacity-info.capacity-normal{background-color:#f8f9fa;border-left-color:#27ae60}.capacity-info.capacity-warning{background-color:#fff3cd;border-left-color:#f39c12}.capacity-info.capacity-critical{background-color:#f8d7da;border-left-color:#e74c3c}.capacity-info h3{color:#2c3e50;font-size:18px;margin:0 0 15px}.capacity-stats{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:15px}.capacity-stat{align-items:center;background:#ffffffb3;border-radius:4px;display:flex;justify-content:space-between;padding:10px}.stat-label{color:#34495e}.stat-value{color:#2c3e50}.capacity-bar{background-color:#ecf0f1;border-radius:4px;height:8px;margin-bottom:10px;overflow:hidden;width:100%}.capacity-fill{background:linear-gradient(90deg,#27ae60,#f39c12 75%,#e74c3c 90%);height:100%;transition:width .3s ease}.capacity-warning{align-items:center;background:#e74c3c1a;border-radius:4px;color:#c0392b;display:flex;font-weight:500;gap:8px;margin-top:10px;padding:10px}.operations-table{overflow-x:auto}.operations-table table{background:#fff;border-collapse:collapse;width:100%}.operations-table td,.operations-table th{border-bottom:1px solid #ecf0f1;padding:12px;text-align:left}.operations-table th{background-color:#f8f9fa;color:#2c3e50;position:sticky;top:0}.operation-row{cursor:pointer;transition:background-color .2s ease}.operation-row:hover{background-color:#f8f9fa}.operation-row.expanded{background-color:#e3f2fd}.operation-number{color:#3498db;font-weight:500}.operation-date{color:#34495e}.pieces,.weight{font-weight:500;text-align:right}.status-badge{font-size:12px;font-weight:500}.status-pending{background-color:#fff3cd}.status-in-progress{background-color:#cce5ff;color:#004085}.status-completed{background-color:#d4edda;color:#155724}.status-cancelled{background-color:#f8d7da;color:#721c24}.status-unknown{background-color:#e2e3e5;color:#6c757d}.created-by{color:#6c757d;font-style:italic}.details-btn{background-color:#3498db;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:6px 12px;transition:background-color .2s ease}.details-btn:hover{background-color:#2980b9}.operation-details td{background-color:#f8f9fa;padding:0}.details-content{border-top:2px solid #e3f2fd;padding:20px}.equipment-details,.fractions-details,.notes-details{margin-bottom:20px}.equipment-details h4,.fractions-details h4,.notes-details h4{border-bottom:2px solid #3498db;color:#2c3e50;font-size:16px;margin:0 0 15px;padding-bottom:5px}.equipment-item{align-items:center;border-left:3px solid #3498db;border-radius:4px;display:flex;justify-content:space-between;margin-bottom:5px;padding:8px 12px}.equipment-name{color:#2c3e50;font-weight:500}.equipment-weight{color:#7f8c8d;font-size:14px}.fractions-table{border-collapse:collapse;margin-top:10px;width:100%}.fractions-table td,.fractions-table th{border:1px solid #dee2e6;padding:8px 12px}.fractions-table th{background-color:#e9ecef;font-weight:500}.fractions-table tr:nth-child(2n){background-color:#f8f9fa}.modification-badge{border-radius:8px;font-size:11px;font-weight:500;padding:2px 6px}.modification-badge.modified{background-color:#fff3cd;color:#856404}.modification-badge.calculated{background-color:#d1ecf1;color:#0c5460}.notes-details p{background:#fff;border-left:3px solid #95a5a6;border-radius:4px;color:#2c3e50;line-height:1.5;margin:0;padding:15px}.no-operations{color:#7f8c8d;padding:40px 20px;text-align:center}.no-operations p{font-size:16px;margin:0}.loading{color:#7f8c8d;padding:40px 20px}.fractions-summary-view{padding:20px}.fractions-summary-view h3{color:#2c3e50;margin-bottom:10px}.equipment-summary-header-section{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-bottom:15px}.equipment-summary-header-section h3{margin:0}.equipment-summary-header-section .export-actions{display:flex;gap:10px}.summary-info{background:#e3f2fd;border-left:4px solid #2196f3;border-radius:6px;color:#6c757d;margin-bottom:30px;padding:15px}.equipment-fractions-summary{grid-gap:20px;display:grid;gap:20px}.equipment-summary-card{background:#fff;border:1px solid #dee2e6;border-radius:8px;box-shadow:0 2px 4px #0000000d;overflow:hidden}.equipment-summary-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #dee2e6;display:flex;justify-content:space-between;padding:20px}.equipment-summary-header h4{color:#2c3e50;margin:0}.equipment-summary-stats{display:flex;gap:20px}.equipment-summary-stats .stat{color:#6c757d;font-size:14px;text-align:center}.equipment-summary-stats .stat strong{color:#2c3e50;display:block;font-size:18px;margin-bottom:2px}.fractions-breakdown{padding:20px}.fractions-summary-table{border-collapse:collapse;width:100%}.fractions-summary-table td,.fractions-summary-table th{border-bottom:1px solid #dee2e6;padding:10px 12px;text-align:left}.fractions-summary-table th{background-color:#f8f9fa;color:#495057;font-weight:600}.fractions-summary-table tr:hover{background-color:#f8f9fa}.individual-fractions-details,.legacy-fractions-details{margin-bottom:20px}.individual-fractions-details h4,.legacy-fractions-details h4{border-bottom:2px solid #28a745;color:#2c3e50;font-size:16px;margin:0 0 15px;padding-bottom:5px}.legacy-fractions-details h4{border-bottom-color:#ffc107}.org-badge{border-radius:12px;display:inline-block;font-size:11px;font-weight:600;letter-spacing:.5px;padding:4px 8px;text-transform:uppercase}.org-badge.ecotic{background:#d4edda;color:#155724}.org-badge.ecopositive{background:#cce5ff;color:#004085}.org-badge.unallocated{background:#f8f9fa;color:#6c757d}.no-data{color:#7f8c8d;padding:40px 20px}@media (max-width:1200px){.filters-grid{gap:15px;grid-template-columns:1fr 1fr}.filter-group.date-range{grid-column:1/-1}}@media (max-width:768px){.operations-header{align-items:stretch;flex-direction:column}.header-left{align-items:center}.filters-grid{gap:15px;grid-template-columns:1fr}.filter-group.date-range{grid-column:1}.date-inputs{align-items:stretch;flex-direction:column;gap:8px}.date-separator{align-self:center;text-align:center;transform:rotate(90deg)}.capacity-stats{grid-template-columns:1fr}.capacity-stat{align-items:flex-start;flex-direction:column;gap:5px}.operations-table{font-size:14px}.operations-table td,.operations-table th{padding:8px}.equipment-item{gap:5px}.equipment-item,.equipment-summary-header{align-items:flex-start;flex-direction:column}.equipment-summary-header{gap:10px}.equipment-summary-stats{align-self:stretch;justify-content:space-around}.active-filter-tags{align-items:flex-start;flex-direction:column}.totals-actions{align-items:stretch;flex-direction:column}}.nomenclator-names{display:flex;flex-direction:column;gap:2px;margin-top:4px}.nomenclator-name{background:#f8f9fa;border-radius:4px;color:#6c757d;display:inline-block;font-size:11px;font-style:italic;padding:2px 6px;width:fit-content}.nomenclator-name.ecopositive{background:#e3f2fd;color:#1976d2}.nomenclator-name.ecotic{background:#e8f5e9;color:#388e3c}.filters-section{background:linear-gradient(135deg,#f8f9fa,#fff);border:1px solid #e3f2fd;border-radius:12px;box-shadow:0 2px 8px #007bff14;margin-bottom:25px;padding:25px}.filters-header{align-items:center;border-bottom:2px solid #e3f2fd;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.filters-header h4{color:#1976d2;font-size:18px;font-weight:600;margin:0}.reset-buttons{display:flex;gap:10px}.reset-btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:12px;font-weight:600;gap:5px;padding:8px 16px;transition:all .2s ease}.reset-btn.secondary{background:#e3f2fd;border:1px solid #bbdefb;color:#1976d2}.reset-btn.secondary:hover{background:#bbdefb;transform:translateY(-1px)}.reset-btn.primary{background:linear-gradient(135deg,#1976d2,#1565c0);box-shadow:0 2px 4px #1976d24d;color:#fff}.reset-btn.primary:hover{background:linear-gradient(135deg,#1565c0,#0d47a1);box-shadow:0 4px 8px #1976d266;transform:translateY(-1px)}.filters-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:2fr 1.2fr 1.5fr 1.5fr;margin-bottom:20px}.filter-group{gap:8px}.filter-group.date-range{grid-column:1}.filter-label{align-items:center;color:#424242;display:flex;font-size:14px;font-weight:600;gap:6px}.label-icon{font-size:16px}.date-inputs{align-items:center;display:flex;gap:10px}.date-input{background:#fff;border:2px solid #e1f5fe;border-radius:8px;font-size:14px;min-width:140px;padding:10px 12px;transition:all .2s ease}.date-input:focus{border-color:#2196f3;box-shadow:0 0 0 3px #2196f31a;outline:none}.date-separator{color:#1976d2;font-size:16px;font-weight:700}.filter-select{border:2px solid #e8f5e9;cursor:pointer;min-width:0;padding:10px 12px;text-overflow:ellipsis;transition:all .2s ease;width:100%}.filter-select:focus{border-color:#4caf50;box-shadow:0 0 0 3px #4caf501a}.filter-select.internal-names{border-color:#fff3e0}.filter-select.internal-names:focus{border-color:#ff9800;box-shadow:0 0 0 3px #ff98001a}.filter-select.ecotic-names{border-color:#e8f5e9}.filter-select.ecotic-names:focus{border-color:#4caf50;box-shadow:0 0 0 3px #4caf501a}.filter-select.ecopositive-names{border-color:#e3f2fd}.filter-select.ecopositive-names:focus{border-color:#2196f3;box-shadow:0 0 0 3px #2196f31a}.capacity-monitoring{align-items:center;background:#fff8e1;border-left:4px solid #ffc107;border-radius:8px;display:flex;gap:15px;padding:15px}.capacity-date-input{background:#fff;border:1px solid #ffcc02;border-radius:6px;font-size:13px;min-width:140px;padding:8px 12px}.capacity-date-input:focus{border-color:#ff9800;box-shadow:0 0 0 2px #ff980033;outline:none}.active-filters{background:#f3e5f5;border-left:4px solid #9c27b0;border-radius:8px;margin-top:15px;padding:15px}.active-filters-label{color:#7b1fa2;display:block;font-weight:600;margin-bottom:10px}.active-filter-tags{display:flex;flex-wrap:wrap;gap:8px}.filter-tag{align-items:center;border-radius:16px;display:inline-flex;font-size:12px;font-weight:600;gap:6px;padding:6px 12px}.filter-tag.internal{background:#fff3e0;border:1px solid #ffcc02;color:#e65100}.filter-tag.ecotic{background:#e8f5e9;border:1px solid #4caf50;color:#2e7d32}.filter-tag.ecopositive{background:#e3f2fd;border:1px solid #2196f3;color:#1565c0}.remove-filter{background:none;border:none;border-radius:50%;color:currentColor;cursor:pointer;font-weight:700;padding:2px 4px;transition:background .2s}.remove-filter:hover{background:#0000001a}.total-fractions-summary{background:linear-gradient(135deg,#e8f5e8,#f0f8ff);border:1px solid #b8e6b8;border-radius:12px;box-shadow:0 2px 8px #28a7451a;margin-bottom:25px;padding:25px}.totals-header{align-items:center;border-bottom:2px solid #4caf50;display:flex;justify-content:space-between;margin-bottom:15px;padding-bottom:10px}.total-fractions-summary h4{color:#2d5a2d;font-size:18px;font-weight:600;margin:0}.totals-actions{display:flex;gap:10px}.total-fractions-summary .summary-info{background:#ffffffb3;border-radius:6px;color:#5a7c5a;font-size:14px;line-height:1.4;margin-bottom:20px;padding:10px}.fractions-totals-table{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:15px;overflow:hidden}.fractions-totals-table table{border-collapse:collapse;width:100%}.fractions-totals-table td,.fractions-totals-table th{border-bottom:1px solid #e9ecef;padding:12px 15px;text-align:left}.fractions-totals-table th{background:linear-gradient(135deg,#4caf50,#388e3c);color:#fff;font-size:14px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.fractions-totals-table tr:nth-child(2n){background-color:#f8f9fa}.fractions-totals-table tr:hover{background-color:#e8f5e8}.fractions-totals-table .fraction-code{background:#1976d21a;border-radius:4px;color:#1976d2;font-family:Courier New,monospace;font-size:12px;font-weight:700;min-width:80px;padding:4px 6px;text-align:center}.fractions-totals-table .fraction-name{color:#2c3e50;font-weight:500}.fractions-totals-table .fraction-weight{color:#2e7d32;font-size:15px;font-weight:600;text-align:right}.total-summary{background:linear-gradient(135deg,#4caf50,#388e3c);border-radius:8px;box-shadow:0 2px 4px #4caf504d;color:#fff;font-size:16px;padding:15px;text-align:center}.fractions-totals-summary{background:linear-gradient(135deg,#f8f9fa,#e3f2fd);border:1px solid #bbdefb;border-radius:10px;box-shadow:0 2px 6px #2196f31a;margin-top:20px;padding:20px}.fractions-totals-summary h4{border-bottom:2px solid #2196f3;color:#1976d2;font-size:16px;font-weight:600;margin:0 0 15px;padding-bottom:8px}.totals-grid{grid-gap:12px;display:grid;gap:12px}.total-item{align-items:center;background:#fff;border-left:4px solid #e0e0e0;border-radius:6px;box-shadow:0 1px 3px #0000001a;display:flex;justify-content:space-between;padding:10px 15px;transition:all .2s ease}.total-item:hover{box-shadow:0 2px 6px #00000026;transform:translateX(2px)}.total-item.grand-total{background:linear-gradient(135deg,#e8f5e8,#c8e6c9);border-left-color:#4caf50;font-weight:600}.total-item.difference{background:linear-gradient(135deg,#fff8e1,#ffe0b2);border-left-color:#ff9800;color:#e65100}.total-label{color:#424242;font-size:14px;font-weight:500}.total-value{color:#1976d2;font-size:14px;font-weight:600}.total-value.input{color:#2c3e50;font-weight:700}.total-value.individual{color:#388e3c}.total-value.legacy{color:#f57f17}.total-value.total{color:#2e7d32;font-size:16px}.total-value.difference{color:#e65100}.action-buttons{align-items:center;display:flex;gap:5px}.print-single-btn{align-items:center;background-color:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:12px;justify-content:center;padding:6px 10px;transition:background-color .2s ease}.print-single-btn:hover{background-color:#218838}.delete-operation-btn{align-items:center;background-color:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:12px;justify-content:center;padding:6px 10px;transition:all .2s ease}.delete-operation-btn:hover{background-color:#c82333;transform:scale(1.05)}.delete-operation-btn:active{transform:scale(.95)}.export-btn.hg856{align-items:center;background:linear-gradient(135deg,#ff6b35,#f7931e);border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:12px;font-weight:600;gap:4px;padding:8px 12px;transition:all .2s ease}.export-btn.hg856:hover:not(:disabled){background:linear-gradient(135deg,#e55a2e,#e0841a);box-shadow:0 2px 8px #ff6b354d;transform:translateY(-1px)}.export-btn.hg856:disabled{background:#ccc;cursor:not-allowed;transform:none}.export-btn.accounting{align-items:center;background:linear-gradient(135deg,#7b1fa2,#9c27b0);border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:12px;font-weight:600;gap:4px;padding:8px 12px;transition:all .2s ease}.export-btn.accounting:hover:not(:disabled){background:linear-gradient(135deg,#6a1b9a,#8e24aa);box-shadow:0 2px 8px #9c27b04d;transform:translateY(-1px)}.export-btn.accounting:disabled{background:#ccc;cursor:not-allowed;transform:none}.export-info.warning{background:#fff3cd;border-color:#ffeeba}.export-info.warning strong{color:#856404}.hg856-codes-selection{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;display:flex;flex-direction:column;gap:10px;padding:10px}.checkbox-label{align-items:center;background:#fff;border-radius:4px;cursor:pointer;display:flex;font-weight:500;gap:8px;padding:8px 12px;transition:background-color .2s ease}.checkbox-label:hover{background:#f1f3f4}.checkbox-label input[type=checkbox]{cursor:pointer;height:16px;width:16px}.checkbox-label input[type=checkbox]:checked+span{color:#28a745;font-weight:600}.modal-content.export-modal{max-width:600px;min-height:500px}.modal-header h3{align-items:center;color:#343a40;display:flex;gap:8px;margin:0}.export-info{background:#e8f4fd;border:1px solid #bee5eb;border-radius:6px;margin-top:15px;padding:15px}.export-info h4{color:#0c5460;font-size:14px;margin:0 0 10px}.export-info ul{color:#0c5460;margin:0;padding-left:20px}.export-info li{font-size:13px;margin-bottom:5px}@media (max-width:768px){.hg856-codes-selection{flex-direction:column}.checkbox-label{text-align:left}.modal-content.export-modal{margin:10px;max-width:95vw}}.fraction-sales-page{background:#f8f9fa;min-height:100vh;padding:20px}.add-btn.primary{align-items:center;background:linear-gradient(135deg,#28a745,#20c997);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 24px;transition:all .3s}.add-btn.primary:hover:not(:disabled){box-shadow:0 5px 15px #28a7454d;transform:translateY(-2px)}.add-btn.primary:disabled{cursor:not-allowed;opacity:.6;transform:none}.sale-form{display:flex;flex-direction:column;gap:20px}.form-row{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.form-group input,.form-group select,.form-group textarea{background:#fff;border-radius:8px;padding:12px}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{box-shadow:0 0 0 3px #667eea1a}.date-info{display:flex;flex-direction:column;gap:4px;margin-top:8px}.date-info small{color:#6c757d;font-size:12px}.filters-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.filter-group input,.filter-group select{background:#fff;border:1px solid #ddd;border-radius:6px;font-size:13px;padding:8px 12px}.filter-group input:focus,.filter-group select:focus{border-color:#667eea;box-shadow:0 0 0 2px #667eea1a;outline:none}.filters-row.search-row{border-bottom:1px solid #e9ecef;margin-bottom:15px;padding-bottom:15px}.filter-group.search-group{grid-column:1/-1;position:relative}.search-input{font-size:15px!important;padding-right:35px!important}.clear-search-btn{background:none;border:none;color:#999;cursor:pointer;font-size:16px;line-height:1;padding:5px;position:absolute;right:10px;top:50%;transform:translateY(25%)}.clear-search-btn:hover{color:#333}.clear-filters-btn{background:#f8d7da;border:1px solid #f5c6cb;border-radius:6px;color:#721c24;cursor:pointer;font-size:13px;padding:8px 16px;transition:all .2s}.clear-filters-btn:hover{background:#f5c6cb}.filter-results{border-top:1px solid #e9ecef;color:#666;font-size:14px;margin-top:15px;padding-top:15px}.filter-results strong{color:#333}.filters-row+.filters-row{margin-top:15px}.sales-table-section{background:#fff;border:1px solid #e9ecef;border-radius:10px;box-shadow:0 2px 10px #0000001a;overflow:hidden}.table-container{overflow-x:auto}.sales-table{border-collapse:collapse;width:100%}.sales-table td,.sales-table th{border-bottom:1px solid #e9ecef;padding:15px 12px;text-align:left}.sales-table th{background:#f8f9fa;color:#495057;font-size:13px;font-weight:600;letter-spacing:.5px;position:sticky;text-transform:uppercase;top:0;z-index:10}.sales-table th.sortable{cursor:pointer;transition:background-color .2s;-webkit-user-select:none;user-select:none}.sales-table th.sortable:hover{background:#e9ecef}.sales-table th.sorted-asc,.sales-table th.sorted-desc{background:#dee2e6}.sales-table tbody tr{transition:background-color .2s}.sales-table tbody tr:hover{background:#f8f9fa}.sales-table .sale-date{color:#495057;font-weight:500;white-space:nowrap}.sales-table .client-name{color:#333;font-weight:600}.sales-table .fraction-info{min-width:200px}.sales-table .fraction-info strong{color:#333;display:block;font-size:14px}.sales-table .fraction-name{color:#6c757d;font-size:12px;margin-top:2px}.sales-table .quantity{color:#28a745;font-weight:600;text-align:right}.sales-table .invoice-number{color:#495057;font-family:monospace;font-size:13px}.sales-table .actions{white-space:nowrap}.sales-table .actions button{background:none;border:none;border-radius:4px;cursor:pointer;font-size:16px;margin:0 2px;padding:6px 8px;transition:all .2s}.sales-table .edit-btn:hover{background:#e3f2fd;transform:scale(1.1)}.sales-table .delete-btn:hover{background:#ffebee;transform:scale(1.1)}.sales-table .actions button:disabled{cursor:not-allowed;opacity:.5;transform:none}.allocation-badge,.status-badge{border-radius:12px;display:inline-block;font-size:11px;font-weight:600;letter-spacing:.5px;padding:4px 8px;text-transform:uppercase}.status-pending{background:#fff3cd;border:1px solid #ffeaa7;color:#856404}.status-allocated{background:#d1ecf1;border:1px solid #bee5eb;color:#0c5460}.status-sold{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.allocation-ecotic{background:#e3f2fd;border:1px solid #bbdefb;color:#1565c0}.allocation-ecopositive{background:#e8f5e8;border:1px solid #c8e6c9;color:#2e7d32}.allocation-unallocated{background:#f5f5f5;border:1px solid #e0e0e0;color:#757575}.no-data{color:#6c757d;padding:40px!important}.stock-breakdown{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin:15px 0;padding:15px}.stock-breakdown h4{color:#495057;font-size:14px;margin:0 0 15px}.stock-organizations{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.stock-org{align-items:center;background:#fff;border:1px solid #dee2e6;border-radius:6px;display:flex;justify-content:space-between;padding:8px 12px}.stock-org.total{background:#f8f9ff;border:2px solid #007bff}.org-label{font-size:12px;font-weight:600}.org-stock{color:#28a745;font-size:14px;font-weight:700}.org-stock.clickable{border-radius:4px;cursor:pointer;padding:4px 8px;transition:all .2s}.org-stock.clickable:hover{background:#e3f2fd;transform:scale(1.05)}.organization-section{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin:20px 0;padding:20px}.organization-type-selection{margin-bottom:20px}.organization-type-selection label{color:#495057;font-weight:600;margin-bottom:10px}.radio-group{display:flex;gap:20px}.radio-group label{align-items:center;cursor:pointer;display:flex;font-weight:400;gap:8px;margin-bottom:0}.radio-group input[type=radio]{margin:0}.split-section{margin-top:20px}.split-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.split-header h4{color:#495057;margin:0}.auto-split-btn{background:#17a2b8;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:6px 12px;transition:all .2s}.auto-split-btn:hover:not(:disabled){background:#138496;transform:translateY(-1px)}.auto-split-btn:disabled{cursor:not-allowed;opacity:.6}.split-inputs{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr;margin-bottom:15px}.split-input-group{display:flex;flex-direction:column}.split-input-group label{color:#495057;font-size:13px;font-weight:600;margin-bottom:8px}.split-input-wrapper{display:flex;gap:8px}.split-quantity-input{border:2px solid #ddd;border-radius:6px;flex:1 1;font-size:14px;padding:8px 12px}.split-quantity-input:focus{border-color:#667eea;outline:none}.max-stock-btn{background:#6c757d;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:11px;padding:8px 12px;transition:all .2s;white-space:nowrap}.max-stock-btn:hover:not(:disabled){background:#5a6268}.max-stock-btn:disabled{cursor:not-allowed;opacity:.6}.split-summary{align-items:center;background:#fff;border:1px solid #dee2e6;border-radius:6px;display:flex;justify-content:space-between;margin-bottom:15px;padding:12px}.split-summary span{color:#495057;font-size:14px}.split-warnings{display:flex;flex-direction:column;gap:8px}.split-warning{background:#fff3cd;border:1px solid #ffeaa7;border-radius:4px;color:#856404}.split-success,.split-warning{font-size:13px;padding:8px 12px}.split-success{background:#d4edda;border:1px solid #c3e6cb;border-radius:4px;color:#155724}.quantity-note{color:#6c757d;font-size:12px;font-style:italic;margin-top:5px}@media (max-width:768px){.fraction-sales-page{padding:15px}.page-header{flex-direction:column;gap:20px;text-align:center}.page-stats{grid-template-columns:repeat(2,1fr)}.filters-row,.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column}.table-container{overflow-x:scroll}.sales-table{min-width:700px}}.import-btn{background:linear-gradient(135deg,#17a2b8,#20c997)!important}.import-btn:hover:not(:disabled){box-shadow:0 5px 15px #17a2b84d!important}.import-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.import-modal-content{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;display:flex;flex-direction:column;max-height:90vh;max-width:1200px;width:100%}.modal-header{border-bottom:1px solid #e5e7eb;padding:20px 24px}.modal-header h2{color:#1f2937;font-size:1.25rem}.close-btn{color:#6b7280;padding:4px 8px}.close-btn:hover{color:#1f2937}.modal-body{flex:1 1;overflow-y:auto;padding:24px}.import-instructions{background:#eff6ff;border-left:4px solid #3b82f6;border-radius:8px;margin-bottom:20px;padding:16px}.import-instructions p{color:#1e40af;font-weight:500;margin:0 0 8px}.import-instructions ul{color:#374151;font-size:.875rem;margin:0;padding-left:20px}.import-instructions li{margin:4px 0}.import-file-section{align-items:center;display:flex;gap:16px;margin-bottom:20px}.import-file-section input[type=file]{border:2px dashed #d1d5db;border-radius:8px;cursor:pointer;flex:1 1;padding:10px}.import-file-section input[type=file]:hover{border-color:#3b82f6}.loading-text{color:#6b7280;font-size:.875rem}.import-error{background:#fef2f2;border-radius:8px;color:#991b1b;font-size:.875rem;padding:12px 16px}.import-error,.match-fractions-section{margin-bottom:20px}.toggle-fractions-btn{background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-size:.875rem;padding:8px 16px}.toggle-fractions-btn:hover{background:#e5e7eb}.available-fractions-list{grid-gap:8px;border:1px solid #e5e7eb;border-radius:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));margin-top:12px;max-height:200px;overflow-y:auto;padding:12px}.fraction-item{background:#f9fafb;border-radius:4px;display:flex;font-size:.8rem;gap:8px;padding:6px 10px}.fraction-item .fraction-code{color:#1f2937;font-family:monospace;font-weight:600}.fraction-item .fraction-name{color:#6b7280}.import-preview-section{margin-top:20px}.preview-summary{display:flex;flex-wrap:wrap;gap:20px;margin-bottom:16px}.summary-item{background:#f3f4f6;border-radius:6px;padding:8px 16px}.summary-item .label{color:#6b7280;font-size:.875rem}.summary-item .value{font-size:1rem;font-weight:600}.summary-item.valid{background:#ecfdf5}.summary-item.valid .value{color:#059669}.summary-item.invalid{background:#fef2f2}.summary-item.invalid .value{color:#dc2626}.summary-item.warning{background:#fffbeb}.summary-item.warning .value{color:#d97706}.import-organization-select{align-items:center;display:flex;gap:12px;margin-bottom:16px}.import-organization-select label{color:#374151;font-size:.875rem}.import-organization-select select{border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;padding:8px 12px}.preview-table-container{border:1px solid #e5e7eb;border-radius:8px;max-height:400px;overflow:auto}.preview-table{border-collapse:collapse;font-size:.8rem;width:100%}.preview-table th{background:#f9fafb;border-bottom:2px solid #e5e7eb;color:#374151;font-weight:600;padding:10px 12px;position:sticky;text-align:left;top:0}.preview-table td{border-bottom:1px solid #f3f4f6;padding:10px 12px;vertical-align:top}.preview-table tr:hover{background:#f9fafb}.preview-table .invalid-row{background:#fef2f2}.preview-table .exceeds-stock-row{background:#fffbeb}.original-value{color:#1f2937;font-weight:500}.parsed-value{color:#6b7280;font-size:.75rem;margin-top:4px}.matched-fraction{font-size:.8rem}.matched-name{color:#6b7280;font-size:.75rem}.no-match{color:#dc2626;font-style:italic}.quantity-cell,.stock-cell{font-family:monospace;text-align:right}.stock-cell.exceeds{color:#d97706}.stock-warning-inline{color:#d97706;font-size:.7rem;margin-top:4px}.status-ok{color:#059669;font-weight:500}.status-warning{color:#d97706;font-weight:500}.validation-errors{font-size:.75rem}.error-item{color:#dc2626;margin:2px 0}.confidence-badge{border-radius:4px;display:inline-block;font-size:.65rem;font-weight:500;margin-top:4px;padding:2px 6px}.confidence-exact{background:#d1fae5;color:#065f46}.confidence-high{background:#dbeafe;color:#1e40af}.confidence-medium{background:#fef3c7;color:#92400e}.confidence-low{background:#fed7aa;color:#9a3412}.confidence-none{background:#fee2e2;color:#991b1b}.stock-warning-section{background:#fffbeb;border:1px solid #fcd34d;border-radius:8px;margin-top:20px;padding:16px}.stock-warning-message{color:#92400e;margin-bottom:12px}.confirm-checkbox{align-items:center;color:#374151;cursor:pointer;display:flex;font-size:.875rem;gap:8px}.confirm-checkbox input[type=checkbox]{cursor:pointer;height:18px;width:18px}.modal-footer{background:#f9fafb;border-radius:0 0 12px 12px;border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;padding:16px 24px}.cancel-btn{background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-size:.875rem;padding:10px 20px}.cancel-btn:hover:not(:disabled){background:#e5e7eb}.import-confirm-btn{background:linear-gradient(135deg,#22c55e,#16a34a);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;padding:10px 24px}.import-confirm-btn:hover:not(:disabled){box-shadow:0 4px 12px #22c55e4d}.import-confirm-btn:disabled{cursor:not-allowed;opacity:.5}.recipe-management-page{background:#f8f9fa;min-height:100vh;padding:20px}.page-header{align-items:center;border-bottom:2px solid #dee2e6;display:flex;justify-content:space-between;margin-bottom:30px;padding:20px 0}.page-header h1{color:#333;font-size:28px;margin:0}.page-actions{display:flex;gap:15px}.add-recipe-btn.primary{align-items:center;background:linear-gradient(135deg,#28a745,#20c997);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 24px;transition:all .3s}.add-recipe-btn.primary:hover:not(:disabled){box-shadow:0 5px 15px #28a7454d;transform:translateY(-2px)}.add-recipe-btn.primary:disabled{cursor:not-allowed;opacity:.6;transform:none}.page-stats{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:30px}.stat-card{background:#fff;border:1px solid #e9ecef;border-radius:10px;box-shadow:0 2px 10px #0000001a;padding:20px;text-align:center}.stat-value{color:#667eea;display:block;font-size:32px;margin-bottom:8px}.stat-label{color:#6c757d;font-size:14px;letter-spacing:1px}.add-form-section{background:#fff;border:1px solid #e9ecef;border-radius:10px;box-shadow:0 2px 10px #0000001a;margin-bottom:30px;padding:30px}.add-form-section h2{border-bottom:2px solid #f0f0f0;color:#333;margin:0 0 25px;padding-bottom:15px}.recipe-header{margin-bottom:30px}.recipe-header h3{color:#495057;font-size:18px;margin:0 0 20px}.form-group label{margin-bottom:8px}.form-group input,.form-group select{background:#fff;border:2px solid #ddd;border-radius:8px;padding:12px;transition:border-color .3s}.form-group input:required{border-left:4px solid #ffc107}.form-group input:required:valid{border-left:4px solid #28a745}.recipe-fractions{margin-top:30px}.recipe-fractions h3{color:#495057;font-size:18px;margin:0 0 20px}.percentage-progress{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:15px}.progress-info{margin-bottom:10px}.progress-info span{color:#495057;font-size:14px}.progress-info strong.complete{color:#28a745}.progress-info strong.exceeded{color:#dc3545}.progress-info strong.incomplete{color:#ffc107}.progress-fill{transition:all .3s}.progress-fill.incomplete{background:linear-gradient(90deg,#ffc107,#fd7e14)}.add-fraction-controls{align-items:end;gap:15px}.fraction-select{border:2px solid #ddd;flex:2 1}.add-fraction-btn{background:linear-gradient(135deg,#17a2b8,#138496);padding:10px 20px;transition:all .3s}.add-fraction-btn:hover:not(:disabled){box-shadow:0 3px 10px #17a2b84d;transform:translateY(-2px)}.fractions-table{box-shadow:0 2px 8px #0000001a}.fractions-table td,.fractions-table th{border-bottom:1px solid #e9ecef;padding:12px;text-align:left}.percentage-input,.quantity-input{border:1px solid #dee2e6;border-radius:4px;font-size:13px;padding:6px 8px;text-align:center;width:80px}.percentage-input:focus,.quantity-input:focus{border-color:#667eea;outline:none}.remove-fraction-btn:hover{transform:scale(1.1)}.form-actions{border-top:2px solid #f0f0f0;padding-top:20px}.form-actions button{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .3s}.form-actions button[type=button]{color:#fff}.form-actions button[type=button]:hover:not(:disabled){background:#5a6268}.form-actions button.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.form-actions button.primary:hover:not(:disabled){box-shadow:0 5px 15px #667eea4d;transform:translateY(-2px)}.form-actions button:disabled{cursor:not-allowed;opacity:.6;transform:none}.filters-section{background:#fff;border:1px solid #e9ecef;border-radius:10px;box-shadow:0 2px 10px #0000001a;margin-bottom:20px;padding:20px}.filters-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.filter-group{display:flex;flex-direction:column}.filter-group label{color:#555;font-size:13px;font-weight:600;margin-bottom:8px}.filter-select,.search-input{background:#fff;border:2px solid #ddd;border-radius:6px;font-size:14px;padding:10px 12px}.filter-select:focus,.search-input:focus{border-color:#667eea;box-shadow:0 0 0 2px #667eea1a;outline:none}.recipes-section{display:flex;flex-direction:column;gap:25px}.no-recipes{background:#fff;border:2px dashed #dee2e6;border-radius:10px;padding:60px}.no-recipes p{font-size:16px;font-style:italic;margin:0}.recipe-group{background:#fff;border:1px solid #e9ecef;box-shadow:0 2px 10px #0000001a}.group-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:20px 25px}.group-title h3{font-size:20px;font-weight:600;margin:0}.recipe-count{display:block;font-size:14px;margin-top:5px;opacity:.9}.delete-group-btn{background:#dc3545;border:2px solid #c82333;border-radius:6px;box-shadow:0 2px 4px #dc35454d;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:all .3s}.delete-group-btn:hover:not(:disabled){background:#c82333;border-color:#bd2130;box-shadow:0 4px 8px #dc354566;transform:translateY(-1px)}.delete-group-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.edit-group-btn{background:#007bff;border:2px solid #0056b3;border-radius:6px;box-shadow:0 2px 4px #007bff4d;color:#fff;cursor:pointer;font-size:13px;font-weight:600;margin-right:10px;padding:8px 16px;transition:all .3s}.edit-group-btn:hover:not(:disabled){background:#0056b3;border-color:#004085;box-shadow:0 4px 8px #007bff66;transform:translateY(-1px)}.edit-group-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.group-actions{align-items:center;display:flex;gap:10px}.inline-edit-name-input{background:#fff3;border:2px solid #ffffff80;border-radius:6px;color:#fff;font-size:20px;font-weight:600;margin-bottom:5px;max-width:400px;padding:5px 10px;width:100%}.inline-edit-name-input:focus{border-color:#fffc;box-shadow:0 0 0 2px #ffffff4d;outline:none}.inline-edit-name-input::placeholder{color:#ffffffb3}.inline-progress-row{background-color:#f1f3f4!important;border-bottom:2px solid #dee2e6;border-top:2px solid #dee2e6}.inline-progress-label{color:#495057;font-weight:600;padding-left:15px}.inline-progress-percentage{font-size:14px;font-weight:700;text-align:center;transition:color .3s ease}.inline-progress-bar-container{background-color:#e9ecef;border-radius:4px;height:8px;margin:4px 0;overflow:hidden;position:relative;width:100%}.inline-progress-bar{border-radius:4px;box-shadow:0 1px 3px #0000001a;height:100%;transition:all .3s ease}.inline-progress-overflow{animation:pulse 1.5s ease-in-out infinite alternate;background-color:#dc3545;height:100%;left:100%;opacity:.7;position:absolute;top:0}.inline-progress-status{color:#6c757d;font-size:12px;font-weight:500;text-align:center}.recipes-table td,.recipes-table th{border-bottom:1px solid #e9ecef;padding:15px 12px;text-align:left}.recipes-table th{letter-spacing:.5px;text-transform:uppercase}.recipes-table tbody tr{transition:background-color .2s}.recipes-table .fraction-code{background:#e9ecef;border-radius:4px;color:#495057;font-family:monospace;font-size:13px;padding:4px 8px}.recipes-table .fraction-name{color:#333;font-weight:500}.recipes-table .quantity{color:#28a745;font-weight:600;text-align:right}.recipes-table .percentage{color:#667eea;font-weight:600;text-align:right}.loading{align-items:center;display:flex;justify-content:center;padding:60px}@media (max-width:768px){.recipe-management-page{padding:15px}.page-header{flex-direction:column;gap:20px;text-align:center}.page-stats{grid-template-columns:repeat(2,1fr)}.filters-row,.form-grid{grid-template-columns:1fr}.add-fraction-controls{flex-direction:column;gap:10px}.group-header{flex-direction:column;gap:15px;text-align:center}.recipes-table{overflow-x:scroll}.recipes-table table{min-width:600px}}@media (max-width:480px){.page-stats{grid-template-columns:1fr}.stat-card{padding:15px}.stat-value{font-size:24px}}.user-management-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.user-management-modal{background:#fff;border-radius:12px;box-shadow:0 10px 30px #0000004d;max-height:90vh;max-width:1200px;overflow:hidden;width:100%}.modal-header{background:linear-gradient(135deg,#007bff,#0056b3)}.company-context-info{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border-radius:20px;color:#ffffffe6;font-size:.9rem;margin-left:auto;margin-right:1rem;padding:.25rem .75rem;white-space:nowrap}.user-controls{align-items:flex-start;display:flex;gap:20px;justify-content:space-between;margin-bottom:25px}.users-summary{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(3,1fr)}.summary-card{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid #dee2e6;border-radius:8px;min-width:120px;padding:15px;text-align:center}.summary-value{color:#495057;font-size:20px;font-weight:700;margin-bottom:5px}.summary-label{color:#6c757d;letter-spacing:.5px;text-transform:uppercase}.add-user-btn{background:linear-gradient(135deg,#28a745,#20c997);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 20px;transition:transform .2s,box-shadow .2s;white-space:nowrap}.add-user-btn:hover:not(:disabled){box-shadow:0 4px 12px #28a7454d;transform:translateY(-2px)}.add-user-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.add-user-form{background:#f8f9fa;border:2px solid #e9ecef;border-radius:10px;margin-bottom:25px;padding:25px}.add-user-form h3{color:#333;font-size:18px;margin:0 0 20px}.form-group input,.form-group select{border:2px solid #e2e8f0;border-radius:6px;font-size:14px;padding:10px 12px}.form-group input:focus,.form-group select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-group small{color:#6c757d;font-size:12px;font-style:italic;margin-top:5px}.save-btn:hover:not(:disabled){box-shadow:0 4px 12px #007bff4d;transform:translateY(-2px)}.users-list{margin-top:20px}.no-users{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;color:#6c757d;padding:50px;text-align:center}.no-users h3{color:#495057;margin-bottom:10px}.users-table{background:#fff;border:1px solid #dee2e6;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.users-table table{border-collapse:collapse;margin:0;width:100%}.users-table th{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-bottom:2px solid #007bff;font-weight:600;letter-spacing:.5px;text-align:left;text-transform:uppercase}.users-table td,.users-table th{color:#495057;font-size:14px;padding:15px 12px}.users-table td{border-bottom:1px solid #f0f0f0;vertical-align:middle}.users-table tbody tr:hover{background:#007bff0d}.users-table tbody tr.inactive-user{background:#f8f9fa;opacity:.6}.user-info{gap:2px}.user-name{color:#333;font-weight:600}.current-user{color:#007bff;font-size:11px;font-weight:500}.role-badge{border-radius:12px;display:inline-block;font-size:11px;font-weight:600;letter-spacing:.5px;padding:4px 8px;text-transform:uppercase}.role-badge.role-admin{background:linear-gradient(135deg,#dc3545,#c82333);color:#fff}.role-badge.role-manager{background:linear-gradient(135deg,#fd7e14,#e55353);color:#fff}.role-badge.role-employee{background:linear-gradient(135deg,#6c757d,#5a6268);color:#fff}.status-badge{border-radius:12px;display:inline-block;font-size:11px;font-weight:600;letter-spacing:.5px;padding:4px 8px;text-transform:uppercase}.status-badge.active{background:linear-gradient(135deg,#28a745,#20c997);color:#fff}.status-badge.inactive{background:linear-gradient(135deg,#6c757d,#5a6268);color:#fff}.last-login{color:#6c757d;font-size:12px}.user-actions{gap:5px}.user-actions,.user-actions button{display:flex;justify-content:center}.user-actions button{align-items:center;border:none;border-radius:4px;cursor:pointer;font-size:12px;height:30px;min-width:30px;padding:6px 8px;transition:all .2s}.edit-btn:hover:not(:disabled){background:#e0a800;transform:translateY(-1px)}.deactivate-btn{background:#dc3545;color:#fff}.deactivate-btn:hover:not(:disabled){background:#c82333;transform:translateY(-1px)}.activate-btn{background:#28a745;color:#fff}.activate-btn:hover:not(:disabled),.save-edit-btn:hover:not(:disabled){background:#218838;transform:translateY(-1px)}.user-actions button:disabled{cursor:not-allowed;opacity:.4;transform:none}.access-denied{color:#6c757d;padding:50px;text-align:center}.access-denied h3{color:#dc3545;margin-bottom:15px}@media (max-width:768px){.user-management-overlay{padding:10px}.modal-content{padding:20px}.user-controls{align-items:stretch;flex-direction:column;gap:15px}.users-summary{gap:10px;grid-template-columns:repeat(3,1fr)}.form-grid{grid-template-columns:1fr}.users-table{font-size:12px}.users-table td,.users-table th{padding:10px 8px}.summary-card{min-width:auto;padding:10px}.summary-value{font-size:16px}.summary-label{font-size:10px}}@media (max-width:480px){.user-management-modal{border-radius:0;height:100%;width:100%}.modal-content{padding:15px}.users-summary{grid-template-columns:1fr}}.category-stats-table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}.category-stats-table{border-collapse:collapse;font-size:.9rem;width:100%}.category-stats-table thead{background:#f7fafc;border-bottom:2px solid #e2e8f0}.category-stats-table th{color:#4a5568;font-weight:600;padding:.75rem;text-align:left;white-space:nowrap}.category-stats-table tbody tr{border-bottom:1px solid #e2e8f0;transition:background-color .2s}.category-stats-table tbody tr:hover{background:#f7fafc}.category-stats-table td{padding:.75rem}.category-name{min-width:180px}.category-name strong{color:#2d3748;font-size:.95rem}.category-label{color:#718096;font-size:.8rem}.rate{font-weight:600}.rate.compliant{color:#2f855a}.rate.warning{color:#c05621}.rate.critical{color:#c53030}.target{color:#718096;font-size:.85rem}.status{font-size:1.2rem;text-align:center}@media (max-width:768px){.category-stats-table{font-size:.8rem}.category-stats-table td,.category-stats-table th{padding:.5rem}.category-name{min-width:120px}.category-name strong{font-size:.85rem}.category-label{font-size:.7rem}}.top-fractions-chart{display:flex;flex-direction:column;gap:1rem}.fraction-row{align-items:center;display:flex;gap:1rem}.fraction-info{display:flex;flex:0 0 300px;flex-direction:column;gap:.25rem}.fraction-code{color:#2d3748;font-size:.9rem;font-weight:600}.fraction-name{color:#718096;font-size:.85rem}.fraction-badge{border-radius:12px;display:inline-block;font-size:.75rem;font-weight:500;padding:.15rem .5rem;width:fit-content}.fraction-badge.recyclable{background:#c6f6d5;color:#22543d}.fraction-badge.recoverable{background:#bee3f8;color:#2c5282}.fraction-badge.disposal{background:#fed7d7;color:#742a2a}.fraction-bar-container{flex:1 1;min-width:0}.fraction-bar{align-items:center;border-radius:4px;display:flex;height:40px;min-width:120px;padding:0 .75rem;transition:all .3s ease}.fraction-bar.recyclable{background:linear-gradient(90deg,#48bb78,#68d391)}.fraction-bar.recoverable{background:linear-gradient(90deg,#4299e1,#63b3ed)}.fraction-bar.disposal{background:linear-gradient(90deg,#f56565,#fc8181)}.fraction-value{color:#fff;font-size:.85rem;font-weight:600;text-shadow:0 1px 2px #0003;white-space:nowrap}.fraction-bar:hover{box-shadow:0 2px 8px #00000026;transform:translateX(4px)}.no-data{color:#a0aec0;font-style:italic;padding:2rem;text-align:center}@media (max-width:768px){.fraction-row{align-items:stretch;flex-direction:column}.fraction-info{flex:1 1}.fraction-bar-container{width:100%}.fraction-bar{min-width:100px}}.alerts-list{display:flex;flex-direction:column;gap:.75rem}.alerts-list.empty{align-items:center;background:#f0fff4;border:1px solid #c6f6d5;border-radius:8px;flex-direction:row;gap:.75rem;justify-content:center;padding:1.5rem}.success-icon{font-size:1.5rem}.alerts-list.empty p{color:#22543d;font-weight:500;margin:0}.alert-item{border-left:4px solid;border-radius:8px;display:flex;gap:1rem;padding:1rem;transition:transform .2s,box-shadow .2s}.alert-item:hover{box-shadow:0 2px 8px #0000001a;transform:translateX(4px)}.alert-high{background:#fff5f5;border-left-color:#f56565}.alert-medium{background:#fffaf0;border-left-color:#ed8936}.alert-low{background:#f0fff4;border-left-color:#48bb78}.alert-content{gap:.5rem}.alert-header{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.alert-category{color:#2d3748;font-size:.95rem;font-weight:600}.alert-metric{background:#0000000d;border-radius:4px;color:#718096;font-size:.85rem;padding:.15rem .5rem}.alert-details{display:flex;flex-wrap:wrap;font-size:.85rem;gap:1rem}.detail-item{color:#4a5568}.detail-item strong{color:#2d3748;font-weight:600}.detail-item.gap{font-weight:600}.detail-item.gap.negative{color:#c53030}.detail-item.gap.positive{color:#2f855a}@media (max-width:640px){.alert-item{padding:.75rem}.alert-header{align-items:flex-start}.alert-details,.alert-header{flex-direction:column;gap:.25rem}}.monthly-summary-card{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:1.5rem}.monthly-summary-card.empty,.monthly-summary-card.loading{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:300px;text-align:center}.empty-state{max-width:400px}.empty-icon{display:block;font-size:4rem;margin-bottom:1rem}.empty-state h3{color:#4a5568;margin:0 0 .5rem}.empty-state p{color:#718096;margin:.5rem 0}.empty-state .hint{color:#a0aec0;font-size:.85rem;font-style:italic}.summary-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:2rem}.stat-card{background:linear-gradient(135deg,#f7fafc,#edf2f7);border:1px solid #e2e8f0;gap:1rem;padding:1.25rem;transition:transform .2s,box-shadow .2s}.stat-card:hover{box-shadow:0 4px 6px #0000001a;transform:translateY(-2px)}.stat-icon{flex-shrink:0;font-size:2rem}.stat-content{display:flex;flex-direction:column;min-width:0}.stat-label{color:#718096;font-size:.85rem;font-weight:500;margin-bottom:.25rem}.stat-value{color:#2d3748;font-size:1.75rem;font-weight:700}.stat-subtext{color:#a0aec0;font-size:.8rem;margin-top:.25rem}.stat-card.rate-card.compliant{background:linear-gradient(135deg,#f0fff4,#c6f6d5);border-color:#9ae6b4}.stat-card.rate-card.compliant .stat-value{color:#2f855a}.stat-card.rate-card.warning{background:linear-gradient(135deg,#fffaf0,#feebc8);border-color:#f6ad55}.stat-card.rate-card.warning .stat-value{color:#c05621}.stat-card.rate-card.critical{background:linear-gradient(135deg,#fff5f5,#fed7d7);border-color:#fc8181}.stat-card.rate-card.critical .stat-value{color:#c53030}.progress-bar{background:#0000001a;border-radius:3px;height:6px;margin-top:.5rem}.progress-fill{background:currentColor;transition:width .5s ease}.stat-card.rate-card.compliant .progress-fill{background:#48bb78}.stat-card.rate-card.warning .progress-fill{background:#ed8936}.stat-card.rate-card.critical .progress-fill{background:#f56565}.alerts-section,.category-section,.fractions-section{border-top:1px solid #e2e8f0;margin-top:2rem;padding-top:2rem}.alerts-section h3,.category-section h3,.fractions-section h3{color:#2d3748;font-size:1.1rem;margin:0 0 1rem}@media (max-width:1024px){.summary-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.monthly-summary-card{padding:1rem}.summary-grid{grid-template-columns:1fr}.stat-icon,.stat-value{font-size:1.5rem}}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-height:90vh;max-width:900px;padding:2rem;width:100%}.modal-content.loading{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:300px}.modal-header{align-items:flex-start;border-bottom:2px solid #e2e8f0;margin-bottom:1.5rem;padding-bottom:1rem}.modal-header h2{color:#2d3748;font-size:1.5rem}.modal-subtitle{color:#718096;font-size:.9rem;margin:.25rem 0 0}.close-btn{align-items:center;color:#a0aec0;display:flex;font-size:1.5rem;height:32px;justify-content:center;padding:0;transition:all .2s;width:32px}.close-btn:hover{background:#f7fafc;color:#2d3748}.details-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:1.5rem}.detail-card{background:#f7fafc;border-radius:8px;display:flex;flex-direction:column;gap:.5rem;padding:1rem}.detail-label{color:#718096;font-size:.85rem;font-weight:500}.detail-value{color:#2d3748;font-size:1.25rem;font-weight:700}.detail-value.green{color:#2f855a}.detail-value.blue{color:#2c5282}.detail-value.red{color:#c53030}.rates-section{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:1.5rem}.rate-box{border:2px solid;border-radius:8px;padding:1.5rem}.rate-box.compliant{background:linear-gradient(135deg,#f0fff4,#c6f6d5);border-color:#48bb78}.rate-box.non-compliant{background:linear-gradient(135deg,#fff5f5,#fed7d7);border-color:#f56565}.rate-header{align-items:center;display:flex;gap:.5rem;margin-bottom:1rem}.rate-icon{font-size:1.5rem}.rate-title{color:#2d3748;font-size:1rem;font-weight:600}.rate-stats{display:flex;flex-direction:column;gap:.5rem}.rate-main{color:#2d3748;font-size:2rem;font-weight:700}.rate-target{color:#718096;font-size:.9rem}.rate-gap{font-size:1.1rem;font-weight:600}.rate-gap.positive{color:#2f855a}.rate-gap.negative{color:#c53030}.section{border-top:1px solid #e2e8f0;margin-top:1.5rem;padding-top:1.5rem}.section h3{color:#2d3748;font-size:1.1rem;margin:0 0 1rem}.category-mix-list{display:flex;flex-direction:column;gap:.75rem}.category-mix-item{grid-gap:1rem;align-items:center;background:#f7fafc;border-radius:6px;display:grid;gap:1rem;grid-template-columns:2fr 1fr 1fr;padding:.75rem}.category-info strong{color:#2d3748;font-size:.95rem}.category-stats{color:#2d3748;font-weight:600;text-align:right}.category-stats .percentage{color:#718096;font-size:.85rem;font-weight:400;margin-left:.25rem}.category-targets{font-size:.85rem;justify-content:flex-end}@media (max-width:768px){.modal-content{max-height:95vh;padding:1rem}.modal-header h2{font-size:1.25rem}.category-mix-item,.details-grid,.rates-section{grid-template-columns:1fr}.category-mix-item{gap:.5rem}.category-stats,.category-targets{justify-content:flex-start}}.operations-list{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:1.5rem}.operations-list.empty,.operations-list.loading{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:300px;text-align:center}.operations-table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}.operations-table{border-collapse:collapse;font-size:.9rem;width:100%}.operations-table thead{background:#f7fafc;border-bottom:2px solid #e2e8f0}.operations-table th{color:#4a5568;font-weight:600;padding:.75rem;text-align:left;white-space:nowrap}.operations-table tbody tr{border-bottom:1px solid #e2e8f0;transition:background-color .2s}.operations-table tbody tr:hover{background:#f7fafc}.operations-table td{padding:.75rem}.operation-number strong{color:#2d3748;font-size:.95rem}.date{color:#718096;white-space:nowrap}.number{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.rate-cell{text-align:center}.rate-display{align-items:center;display:flex;gap:.5rem;justify-content:center}.rate-value{font-size:.95rem;font-weight:600}.rate-value.compliant{color:#2f855a}.rate-value.warning{color:#c05621}.rate-value.critical{color:#c53030}.rate-icon{font-size:1.1rem}.loss{color:#c53030}.loss-percent{color:#a0aec0;display:block;font-size:.8rem;margin-top:.15rem}.actions{text-align:center}.btn-details{background:#4299e1;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.85rem;padding:.4rem .8rem;transition:background-color .2s;white-space:nowrap}.btn-details:hover{background:#3182ce}@media (max-width:768px){.operations-list{padding:1rem}.operations-table{font-size:.8rem}.operations-table td,.operations-table th{padding:.5rem}.rate-display{flex-direction:column;gap:.25rem}.loss-percent{display:inline;margin-left:.25rem}}.unmapped-equipment-alert{align-items:center;border-left:4px solid;border-radius:8px;display:flex;gap:1rem;max-width:600px;padding:1rem 1.25rem}.unmapped-equipment-alert.high{background:#fff5f5;border-left-color:#f56565}.unmapped-equipment-alert.medium{background:#fffaf0;border-left-color:#ed8936}.unmapped-equipment-alert.low{background:ivory;border-left-color:#ecc94b}.alert-icon{flex-shrink:0;font-size:1.5rem}.alert-content{display:flex;flex:1 1;flex-direction:column;gap:.25rem}.alert-title{color:#2d3748;font-size:.95rem}.alert-title strong{font-size:1.1rem;font-weight:700}.alert-message{color:#4a5568;font-size:.85rem;line-height:1.4}.alert-message code{background:#0000000d;border-radius:3px;font-family:Courier New,monospace;font-size:.8rem;padding:.1rem .3rem}.alert-action-btn{background:#fff;border:1px solid;border-radius:6px;cursor:pointer;font-size:.85rem;font-weight:600;padding:.5rem 1rem;transition:all .2s;white-space:nowrap}.unmapped-equipment-alert.high .alert-action-btn{color:#c53030}.unmapped-equipment-alert.medium .alert-action-btn{color:#c05621}.unmapped-equipment-alert.low .alert-action-btn{color:#975a16}.alert-action-btn:hover{box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}@media (max-width:768px){.unmapped-equipment-alert{align-items:stretch;flex-direction:column;max-width:100%}.alert-action-btn{width:100%}}.mapping-manager{max-height:90vh;max-width:1200px}.mapping-manager .modal-subtitle code{background:#0000000d;border-radius:3px;font-size:.85rem;padding:.1rem .3rem}.status-summary{background:#f7fafc;border-radius:8px;display:flex;gap:1.5rem;margin-bottom:1.5rem;padding:1rem}.status-item{align-items:center;display:flex;gap:.5rem}.status-icon{font-size:1.5rem}.status-text{color:#4a5568;font-size:.9rem}.status-text strong{color:#2d3748;font-size:1.1rem}.search-section{margin-bottom:1.5rem}.search-input{font-size:.95rem;padding:.75rem 1rem;transition:border-color .2s;width:100%}.search-input:focus{border-color:#4299e1}.mapping-interface{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr 1fr;margin-bottom:1.5rem;min-height:400px}.category-selector,.equipment-list{display:flex;flex-direction:column}.category-selector h3,.equipment-list h3{color:#2d3748;font-size:1rem;margin:0 0 1rem}.category-items,.equipment-items{background:#f7fafc;border-radius:8px;display:flex;flex:1 1;flex-direction:column;gap:.75rem;max-height:500px;overflow-y:auto;padding:.5rem}.equipment-item{background:#fff;border:2px solid #e2e8f0;border-radius:6px;cursor:pointer;padding:1rem;transition:all .2s}.equipment-item:hover{border-color:#cbd5e0;box-shadow:0 2px 4px #0000000d;transform:translateY(-1px)}.equipment-item.selected{background:#ebf8ff;border-color:#4299e1}.equipment-name{color:#2d3748;font-weight:600;margin-bottom:.5rem}.equipment-meta{display:flex;flex-wrap:wrap;gap:.5rem}.badge{border-radius:4px;font-size:.75rem;font-weight:500;padding:.2rem .5rem}.badge.ecotic{background:#bee3f8;color:#2c5282}.badge.ecopositive{background:#c6f6d5;color:#22543d}.badge.suggested{background:#feebc8;color:#7c2d12}.category-item{background:#fff;border:2px solid #e2e8f0;border-radius:6px;cursor:pointer;padding:1rem;transition:all .2s}.category-item:hover{border-color:#cbd5e0;box-shadow:0 2px 4px #0000000d;transform:translateY(-1px)}.category-item.selected{background:#f0fff4;border-color:#48bb78}.category-header{margin-bottom:.5rem}.category-header strong{color:#2d3748;font-size:1rem}.category-number{background:#e2e8f0;border-radius:4px;color:#4a5568;font-size:.75rem;font-weight:600;padding:.2rem .5rem}.category-name{color:#718096;font-size:.85rem;margin-bottom:.5rem}.category-targets{color:#4a5568;display:flex;font-size:.75rem;gap:.75rem}.empty-message{align-items:center;color:#a0aec0;display:flex;font-style:italic;justify-content:center;min-height:200px}.actions-section{border-top:1px solid #e2e8f0;display:flex;gap:1rem;justify-content:flex-end;padding-top:1rem}.btn-map{background:#48bb78;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;padding:.75rem 1.5rem;transition:all .2s}.btn-map:hover:not(:disabled){background:#38a169;box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.btn-map:disabled{background:#cbd5e0;cursor:not-allowed}.btn-cancel{background:#fff;border:1px solid #cbd5e0;border-radius:6px;color:#4a5568;cursor:pointer;font-size:.95rem;font-weight:600;padding:.75rem 1.5rem;transition:all .2s}.btn-cancel:hover{background:#f7fafc;border-color:#a0aec0}.loading-state{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:400px}@media (max-width:992px){.mapping-interface{gap:1rem;grid-template-columns:1fr}.category-items,.equipment-items{max-height:300px}}@media (max-width:640px){.mapping-manager{padding:1rem}.status-summary{gap:.75rem}.actions-section,.status-summary{flex-direction:column}.btn-cancel,.btn-map{width:100%}}.export-yearly-btn{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:6px;box-shadow:0 2px 4px #10b98133;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;justify-content:center;padding:10px 20px;transition:all .3s ease}.export-yearly-btn:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);box-shadow:0 4px 8px #10b9814d;transform:translateY(-1px)}.export-yearly-btn:active:not(:disabled){box-shadow:0 2px 4px #10b98133;transform:translateY(0)}.export-yearly-btn.exporting{animation:pulse 1.5s ease-in-out infinite;background:linear-gradient(135deg,#6b7280,#4b5563);cursor:wait}.export-yearly-btn.success{animation:successPulse .6s ease-out;background:linear-gradient(135deg,#22c55e,#16a34a)}.export-yearly-btn.error{animation:errorShake .5s ease-out;background:linear-gradient(135deg,#ef4444,#dc2626)}.export-yearly-btn.disabled,.export-yearly-btn:disabled{background:#e5e7eb;box-shadow:none;color:#9ca3af;cursor:not-allowed}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes successPulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}@keyframes errorShake{0%,to{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}.yearly-summary-card{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:24px}.yearly-summary-card.empty,.yearly-summary-card.loading{color:#666;padding:48px 24px;text-align:center}.loading-spinner{font-size:16px}.summary-header{align-items:center;border-bottom:2px solid #e5e7eb;display:flex;gap:16px;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.header-left{flex:1 1}.summary-header h3{color:#1f2937;font-size:24px;margin:0 0 4px}.period-info{color:#6b7280;font-size:14px}@media (max-width:768px){.summary-header{align-items:flex-start;flex-direction:column}}.summary-stats-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-bottom:24px}.stat-card{align-items:flex-start;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;display:flex;gap:12px;padding:16px}.stat-card.rate-card{border-width:2px}.stat-card.rate-card.compliant{background:#f0fdf4;border-color:#22c55e}.stat-card.rate-card.non-compliant{background:#fef2f2;border-color:#ef4444}.stat-icon{font-size:32px;line-height:1}.stat-content{flex:1 1}.stat-label{color:#6b7280;font-size:12px;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.stat-value{color:#1f2937;font-size:28px;font-weight:600;line-height:1.2}.stat-target{color:#4b5563;font-size:12px;margin-top:4px}.stat-subtext{color:#6b7280;font-size:13px;margin-top:4px}.compliance-summary{border-top:1px solid #e5e7eb;margin-top:24px;padding-top:24px}.compliance-status{border-radius:8px;font-size:14px;padding:16px}.compliance-status.success{background:#f0fdf4;border:1px solid #22c55e;color:#166534}.compliance-status.warning{background:#fef2f2;border:1px solid #ef4444;color:#991b1b}.compliance-status strong{font-weight:600}.compliance-status ul{margin:8px 0 0 20px;padding:0}.compliance-status li{margin:4px 0}.hint{color:#9ca3af;font-size:14px;margin-top:8px}.category-breakdown{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-top:24px;padding:24px}.category-breakdown.empty,.category-breakdown.loading{color:#666;padding:48px 24px;text-align:center}.breakdown-header{align-items:center;border-bottom:2px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:12px}.breakdown-header h3{color:#1f2937;font-size:20px;margin:0}.breakdown-summary{color:#6b7280;display:flex;font-size:13px;gap:16px}.breakdown-summary span{background:#f3f4f6;border-radius:4px;padding:4px 12px}.categories-list{display:flex;flex-direction:column;gap:16px}.category-card{border:2px solid #e5e7eb;border-radius:8px;overflow:hidden;transition:all .3s ease}.category-card.expanded{border-color:#6366f1}.category-header{align-items:center;background:#f9fafb;cursor:pointer;display:flex;gap:24px;justify-content:space-between;padding:16px 20px;transition:background .2s}.category-header:hover{background:#f3f4f6}.category-card.expanded .category-header{background:#eef2ff}.category-info{flex:1 1;min-width:0}.category-title{align-items:center;display:flex;gap:12px;margin-bottom:6px}.category-code{background:#fff;border-radius:4px;color:#6366f1;font-family:Courier New,monospace;font-size:16px;font-weight:700;padding:4px 8px}.category-name{color:#1f2937;font-size:16px;font-weight:600}.expand-icon{color:#6b7280;font-size:12px;margin-left:auto;transition:transform .3s}.category-meta{color:#6b7280;font-size:13px}.category-rates{display:flex;flex-shrink:0;gap:16px}.rate-badge{border:2px solid;border-radius:6px;min-width:140px;padding:12px 16px}.rate-badge.recycling{background:#eff6ff;border-color:#3b82f6}.rate-badge.recovery{background:#ecfdf5;border-color:#10b981}.rate-badge.compliant{opacity:1}.rate-badge.warning{border-style:dashed;opacity:.8}.rate-badge.non-compliant{background:#fef2f2;border-color:#ef4444;opacity:.7}.rate-label{color:#6b7280;font-size:11px;font-weight:600;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.rate-value{color:#1f2937;font-size:20px;font-weight:700;margin-bottom:2px}.rate-target{color:#6b7280;font-size:11px}.fractions-table{background:#fff;border-top:1px solid #e5e7eb;padding:20px}.fractions-table table{margin-bottom:16px}.fractions-table thead{background:#f9fafb;border-bottom:2px solid #e5e7eb}.fractions-table th{color:#374151;font-size:12px;letter-spacing:.5px;padding:10px 12px;text-transform:uppercase}.fractions-table td.numeric,.fractions-table th.numeric{text-align:right}.fractions-table td.center,.fractions-table th.center{text-align:center}.fractions-table tbody tr{border-bottom:1px solid #e5e7eb;transition:background .2s}.fractions-table tbody tr:hover{background:#f9fafb}.fractions-table td{color:#1f2937;font-size:13px;padding:10px 12px}.code-cell{color:#6366f1;font-family:Courier New,monospace;font-size:12px}.code-cell,.name-cell{font-weight:500}.badge{border-radius:3px;display:inline-block;font-size:11px;font-weight:600;padding:2px 6px}.badge.success{background:#dcfce7;color:#166534}.badge.neutral{background:#f3f4f6;color:#6b7280}.fractions-summary{background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;display:flex;gap:24px;padding:12px 16px}.summary-item{align-items:center;display:flex;gap:8px}.summary-label{color:#6b7280;font-size:12px;font-weight:500}.summary-value{color:#1f2937;font-size:13px;font-weight:600}.no-fractions{color:#9ca3af;padding:20px}@media (max-width:1024px){.category-header{align-items:flex-start;flex-direction:column}.category-rates{justify-content:space-between;width:100%}.rate-badge{flex:1 1;min-width:auto}}@media (max-width:768px){.category-rates{flex-direction:column}.rate-badge{width:100%}.fractions-table{overflow-x:auto}.fractions-summary{flex-direction:column;gap:8px}}.recovery-badge{align-items:center;border-radius:6px;cursor:help;display:inline-flex;font-size:12px;font-weight:600;padding:4px 10px}.recovery-badge.recycling{background:#dcfce7;color:#166534}.recovery-badge.energy{background:#fef3c7;color:#b45309}.recovery-badge.other{background:#dbeafe;color:#1e40af}.recovery-badge.disposal{background:#fee2e2;color:#991b1b}.recovery-badge.unknown{background:#f1f5f9;color:#64748b}.r-code{background:#f5f3ff;border-radius:4px;color:#7c3aed;cursor:help;font-family:Courier New,monospace;font-size:12px;font-weight:600;padding:4px 8px}.monthly-trend-chart{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-top:24px;padding:24px}.monthly-trend-chart.empty,.monthly-trend-chart.loading{color:#666;padding:48px 24px;text-align:center}.chart-header{align-items:center;border-bottom:2px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:12px}.chart-header h3{color:#1f2937;font-size:20px;margin:0}.chart-legend{display:flex;gap:24px}.legend-item{align-items:center;color:#6b7280;display:flex;font-size:13px;gap:8px}.legend-color{border-radius:2px;height:12px;width:20px}.legend-color.recycling{background:linear-gradient(135deg,#3b82f6,#60a5fa)}.legend-color.recovery{background:linear-gradient(135deg,#10b981,#34d399)}.chart-container{display:flex;gap:12px;height:400px;position:relative}.y-axis{color:#6b7280;display:flex;flex-direction:column;font-size:12px;justify-content:space-between;padding-right:8px;text-align:right;width:40px}.y-label{line-height:1}.chart-area{border-bottom:2px solid #e5e7eb;border-left:2px solid #e5e7eb;flex:1 1;position:relative}.target-line{border-top:2px dashed;height:1px;left:0;position:absolute;right:0;z-index:1}.target-line.recycling{border-color:#3b82f6;opacity:.3}.target-line.recovery{border-color:#10b981;opacity:.3}.target-label{background:#fff;color:#6b7280;font-size:11px;left:8px;padding:0 4px;position:absolute;top:-10px}.bars-container{display:flex;gap:4px;height:100%;padding:0 8px 30px}.month-bar-group{align-items:center;display:flex;flex:1 1;flex-direction:column}.bars{align-items:flex-end;gap:2px;width:100%}.bar,.bars{display:flex;flex:1 1;position:relative}.bar{align-items:flex-start;border-radius:4px 4px 0 0;justify-content:center;min-height:2px;padding-top:4px;transition:opacity .2s}.bar:hover{opacity:.8}.bar.recycling{background:linear-gradient(0deg,#3b82f6,#60a5fa)}.bar.recovery{background:linear-gradient(0deg,#10b981,#34d399)}.bar-value{color:#fff;font-size:10px;font-weight:600;text-orientation:mixed;text-shadow:0 1px 2px #0000004d;transform:rotate(180deg);writing-mode:vertical-rl}.month-label{color:#374151;font-size:12px;font-weight:500;margin-top:8px}.month-info{color:#9ca3af;font-size:10px;margin-top:4px;text-align:center}.info-line{line-height:1.3}.recovery-rates-dashboard{margin:0 auto;max-width:1400px;padding:1.5rem}.dashboard-header-section{align-items:flex-start;display:flex;gap:1.5rem;justify-content:space-between;margin-bottom:2rem}.header-title h2{color:#1a202c;font-size:1.75rem;margin:0 0 .5rem}.header-title .subtitle{color:#718096;font-size:.9rem;margin:0}.recovery-rates-dashboard .filters-section{align-items:center;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding:1rem}.date-filters{align-items:center;display:flex;gap:1rem}.date-filters label{align-items:center;color:#4a5568;display:flex;font-weight:500;gap:.5rem}.date-select{background:#fff;border:1px solid #cbd5e0;border-radius:6px;cursor:pointer;font-size:.95rem;padding:.5rem 1rem;transition:border-color .2s}.date-select:focus,.date-select:hover{border-color:#4299e1}.date-select:focus{box-shadow:0 0 0 3px #4299e11a;outline:none}.tabs-navigation{border-bottom:2px solid #e2e8f0;display:flex;gap:.5rem;margin-bottom:1.5rem}.tab-btn{background:#0000;border:none;border-bottom:2px solid #0000;color:#718096;cursor:pointer;font-size:.95rem;font-weight:500;margin-bottom:-2px;padding:.75rem 1.5rem;transition:all .2s}.tab-btn:hover{background:#4299e10d;color:#4299e1}.tab-btn.active{border-bottom-color:#4299e1;color:#4299e1}.dashboard-content{margin-top:1.5rem}.btn-secondary{background:#fff;border:1px solid #cbd5e0;border-radius:6px;color:#4a5568;cursor:pointer;font-size:.9rem;font-weight:500;padding:.6rem 1.2rem;transition:all .2s}.btn-secondary:hover{background:#f7fafc;border-color:#4299e1;color:#4299e1}.error-message{background:#fff5f5;border:1px solid #feb2b2;border-radius:8px;padding:2rem;text-align:center}.error-message h3{color:#c53030;margin:0 0 1rem}.error-message p{color:#742a2a;margin:0}.loading-state{color:#718096;padding:3rem;text-align:center}.loading-spinner{animation:spin .8s linear infinite;border:4px solid #e2e8f0;border-top-color:#4299e1;display:inline-block;margin-bottom:1rem}@media (max-width:768px){.recovery-rates-dashboard{padding:1rem}.dashboard-header-section{flex-direction:column}.recovery-rates-dashboard .filters-section{align-items:stretch;flex-direction:column;gap:1rem}.date-filters{align-items:stretch;flex-direction:column}.tabs-navigation{-webkit-overflow-scrolling:touch;overflow-x:auto}.tab-btn{white-space:nowrap}}.recipe-management-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.recipe-management-modal{background:#fff;border-radius:12px;box-shadow:0 10px 30px #0000004d;max-height:90vh;max-width:1200px;overflow:hidden;width:100%}.modal-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:2px solid #f0f0f0;color:#fff;display:flex;justify-content:space-between;padding:20px 30px}.modal-header h2{font-size:24px;font-weight:600;margin:0}.close-btn{background:none;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:24px;padding:5px;transition:background .2s}.close-btn:hover{background:#fff3}.modal-content{max-height:calc(90vh - 80px);overflow-y:auto;padding:30px}.recipe-controls{align-items:center;display:flex;gap:20px;justify-content:space-between;margin-bottom:25px}.search-filters{display:flex;flex:1 1;gap:15px}.search-input{border:2px solid #e2e8f0;border-radius:8px;flex:1 1;font-size:14px;max-width:300px;padding:10px 15px}.search-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.filter-select{background:#fff;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;min-width:200px;padding:10px 15px}.filter-select:focus{border-color:#667eea;outline:none}.add-recipe-btn{background:linear-gradient(135deg,#28a745,#20c997);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 20px;transition:transform .2s,box-shadow .2s;white-space:nowrap}.add-recipe-btn:hover{box-shadow:0 4px 12px #28a7454d;transform:translateY(-2px)}.add-recipe-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.add-recipe-form{background:#f8f9fa;border:2px solid #e9ecef;border-radius:10px;margin-bottom:25px;padding:25px}.add-recipe-form h3{color:#333;font-size:18px;margin:0 0 20px}.form-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:20px}.form-group{display:flex;flex-direction:column}.form-group label{color:#4a5568;font-size:14px;font-weight:600}.form-group input{border:2px solid #e2e8f0;border-radius:6px;font-size:14px;padding:10px 12px}.form-group input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.save-btn{background:linear-gradient(135deg,#007bff,#0056b3);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:transform .2s,box-shadow .2s}.save-btn:hover{box-shadow:0 4px 12px #007bff4d;transform:translateY(-2px)}.recipes-list{margin-top:20px}.recipe-group{border:1px solid #e2e8f0;border-radius:10px;margin-bottom:30px;overflow:hidden}.group-header{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-bottom:2px solid #007bff;color:#495057;display:flex;font-size:16px;font-weight:600;justify-content:space-between;margin:0;padding:15px 20px}.recipe-count{background:#007bff1a;border:1px solid #007bff33;border-radius:12px;color:#0056b3;font-size:12px;font-weight:500;padding:4px 8px}.recipes-table{overflow-x:auto}.recipes-table table{border-collapse:collapse;width:100%}.recipes-table th{background:#f8f9fa;border-bottom:2px solid #dee2e6;color:#495057;font-size:13px;font-weight:600;padding:12px 15px;text-align:left}.recipes-table td{border-bottom:1px solid #e9ecef;font-size:14px;padding:12px 15px;vertical-align:middle}.recipes-table tbody tr:hover{background:#f8f9fa}.recipes-table tbody tr:last-child td{border-bottom:none}.recipes-table code{background:#e9ecef;border-radius:4px;color:#495057;font-family:Courier New,monospace;font-size:12px;padding:4px 8px}.recipes-table input{border:1px solid #ced4da;border-radius:4px;font-size:13px;padding:6px 8px;width:100%}.recipes-table input:focus{border-color:#667eea;box-shadow:0 0 0 2px #667eea1a;outline:none}.recipe-actions{display:flex;gap:8px;justify-content:center}.recipe-actions button{border:none;border-radius:4px;cursor:pointer;font-size:14px;padding:6px 10px;transition:transform .2s,box-shadow .2s}.edit-btn{background:#ffc107;color:#212529}.edit-btn:hover{background:#e0a800}.delete-btn:hover,.edit-btn:hover{transform:translateY(-1px)}.save-edit-btn{background:#28a745;color:#fff}.save-edit-btn:hover{background:#218838;transform:translateY(-1px)}.cancel-edit-btn{background:#6c757d;color:#fff}.cancel-edit-btn:hover{background:#5a6268;transform:translateY(-1px)}.recipe-actions button:disabled{cursor:not-allowed;opacity:.6;transform:none}.loading{font-size:16px}.loading,.no-recipes{color:#6c757d;padding:40px}.no-recipes{font-style:italic;text-align:center}@media (max-width:768px){.recipe-management-overlay{padding:10px}.modal-content{padding:20px}.recipe-controls{align-items:stretch}.recipe-controls,.search-filters{flex-direction:column}.form-grid{grid-template-columns:1fr}.recipes-table{font-size:12px}.recipes-table td,.recipes-table th{padding:8px 10px}.group-header{font-size:14px;padding:12px 15px}.add-fraction-controls{flex-direction:column}}.recipe-header{background:#f8f9fa;border:2px solid #e9ecef;border-radius:8px;margin-bottom:25px;padding:20px}.recipe-header h4{color:#495057;font-size:16px;font-weight:600;margin:0 0 15px}.recipe-fractions{background:#fff;border:2px solid #e2e8f0;border-radius:8px;margin-bottom:25px;padding:20px}.recipe-fractions h4{color:#495057;font-size:16px;font-weight:600;margin:0 0 20px}.percentage-progress{margin-bottom:20px}.progress-info{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.progress-info .complete{color:#28a745}.progress-info .exceeded{color:#dc3545}.progress-info .incomplete{color:#ffc107}.progress-bar{background:#e9ecef;border-radius:4px;height:8px;overflow:hidden;width:100%}.progress-fill{height:100%;transition:all .3s ease}.progress-fill.complete{background:linear-gradient(90deg,#28a745,#20c997)}.progress-fill.exceeded{background:linear-gradient(90deg,#dc3545,#c82333)}.progress-fill.incomplete{background:linear-gradient(90deg,#ffc107,#e0a800)}.add-fraction-controls{align-items:center;display:flex;gap:10px;margin-bottom:20px}.fraction-select{background:#fff;border:2px solid #e2e8f0;border-radius:6px;flex:1 1;font-size:14px;padding:10px 12px}.fraction-select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.add-fraction-btn{background:linear-gradient(135deg,#28a745,#20c997);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 16px;transition:all .2s;white-space:nowrap}.add-fraction-btn:hover:not(:disabled){box-shadow:0 4px 12px #28a7454d;transform:translateY(-1px)}.add-fraction-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.fractions-table{border:1px solid #e9ecef;border-radius:8px;overflow:hidden}.fractions-table table{border-collapse:collapse;width:100%}.fractions-table th{background:#f8f9fa;border-bottom:2px solid #dee2e6;color:#495057;font-size:13px;font-weight:600;padding:12px 15px;text-align:left}.fractions-table td{border-bottom:1px solid #e9ecef;font-size:14px;padding:12px 15px;vertical-align:middle}.fractions-table tbody tr:hover{background:#f8f9fa}.fractions-table tbody tr:last-child td{border-bottom:none}.fraction-input{border:1px solid #ced4da;border-radius:4px;font-size:13px;padding:6px 8px;width:100%}.fraction-input:focus{border-color:#667eea;box-shadow:0 0 0 2px #667eea1a;outline:none}.remove-fraction-btn{background:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:6px 10px;transition:all .2s}.remove-fraction-btn:hover{background:#c82333;transform:translateY(-1px)}.no-fractions{background:#f8f9fa;border:2px dashed #dee2e6;border-radius:6px;color:#6c757d;font-style:italic;padding:30px;text-align:center}.save-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.company-selector{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;box-shadow:0 2px 8px #0000001a;color:#fff;margin-bottom:1rem;padding:1rem}.company-selector-label{align-items:center;display:flex;font-weight:600;gap:.5rem;margin-bottom:.5rem}.company-selector-icon{font-size:1.2em}.company-selector-text{font-size:.9rem}.company-selector-dropdown{background:#fff;border:none;border-radius:6px;box-shadow:0 2px 4px #0000001a;color:#333;cursor:pointer;font-size:.9rem;font-weight:500;min-width:200px;padding:.5rem 1rem;transition:all .2s ease}.company-selector-dropdown:hover{box-shadow:0 4px 8px #00000026}.company-selector-dropdown:focus{box-shadow:0 0 0 3px #ffffff4d;outline:none}.company-selector-current{font-size:.8rem;opacity:.9;padding-left:1.7rem}.company-selector-current strong{color:#fff;font-weight:700;text-shadow:0 1px 2px #0003}.company-selector.compact{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-radius:6px;margin-bottom:0;padding:.5rem 1rem}.company-selector.compact .company-selector-dropdown{font-size:.8rem;min-width:150px;padding:.4rem .8rem}.company-selector.compact .company-selector-current{display:none}.company-selector.compact .company-selector-text{font-size:.8rem}@media (max-width:768px){.company-selector-label{align-items:stretch;flex-direction:column;gap:.3rem}.company-selector-dropdown{min-width:auto;width:100%}.company-selector-current{padding-left:0;text-align:center}}.dashboard{background-color:#f5f7fa;min-height:100vh}.dashboard-header{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 2px 10px #0000001a;color:#fff;padding:20px 0}.header-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 20px}.header-content h1{font-size:1.8rem;margin:0}.header-actions{align-items:center;display:flex;gap:20px}.user-info{align-items:flex-end;display:flex;flex-direction:column;text-align:right}.user-info small{font-size:12px;margin-top:2px;opacity:.8}.header-actions-right{align-items:center;display:flex;gap:10px}.manage-users-btn{align-items:center;background:#ffffff26;border:1px solid #ffffff4d;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:5px;padding:8px 12px;transition:all .2s ease}.manage-users-btn:hover{background:#ffffff40;border-color:#ffffff80;transform:translateY(-1px)}.logout-btn{background:#fff3;border:1px solid #ffffff4d;border-radius:5px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px;transition:background-color .3s;width:auto}.logout-btn:hover{background:#ffffff4d;box-shadow:none;transform:none}.dashboard-main{margin:0 auto;max-width:1200px;padding:30px 20px}.dashboard-navigation{border-bottom:1px solid #dee2e6;display:flex;gap:10px;margin-bottom:15px;padding-bottom:15px}.navigation-quick-actions{align-items:flex-start;border-bottom:1px solid #f0f0f0;display:flex;gap:10px;margin-bottom:20px;min-height:35px;padding-bottom:15px}.nav-quick-section{display:flex;gap:6px}.nav-quick-btn{align-items:center;background:linear-gradient(135deg,#f8fafc,#e2e8f0);border:1px solid #cbd5e0;border-radius:4px;color:#4a5568;cursor:pointer;display:flex;font-size:12px;font-weight:500;gap:4px;opacity:1;padding:6px 10px;transform:translateY(0);transition:all .2s ease;white-space:nowrap}.nav-quick-btn:hover{box-shadow:0 2px 6px #0000001a;transform:translateY(-1px)}.nav-quick-btn.acquisition{background:linear-gradient(135deg,#e6fffa,#b2f5ea);border-color:#38b2ac;color:#234e52}.nav-quick-btn.acquisition:hover{box-shadow:0 2px 6px #38b2ac33}.nav-quick-btn.stock.equipment{background:linear-gradient(135deg,#edf2f7,#e2e8f0);border-color:#4a5568;color:#2d3748}.nav-quick-btn.stock.equipment:hover{box-shadow:0 2px 6px #4a556833}.nav-quick-btn.stock.fractions{background:linear-gradient(135deg,#faf5ff,#e9d8fd);border-color:#805ad5;color:#553c9a}.nav-quick-btn.stock.fractions:hover{box-shadow:0 2px 6px #805ad533}.nav-quick-btn.sales{background:linear-gradient(135deg,#fff5f5,#fed7d7);border-color:#f56565;color:#c53030}.nav-quick-btn.sales:hover{box-shadow:0 2px 6px #f5656533}.nav-quick-btn.dismantling{background:linear-gradient(135deg,#fed7d7,#feb2b2);border-color:#e53e3e;color:#742a2a}.nav-quick-btn.dismantling:hover{box-shadow:0 2px 6px #e53e3e33}.nav-quick-btn.active{box-shadow:0 2px 6px #00000026;font-weight:600;transform:translateY(-1px)}.nav-btn{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px 8px 0 0;color:#495057;cursor:pointer;font-size:14px;font-weight:500;padding:12px 20px;transition:all .2s}.nav-btn:hover{background:#e9ecef;transform:translateY(-1px)}.nav-btn.active{background:linear-gradient(135deg,#007bff,#0056b3);border-color:#007bff #007bff #0000;color:#fff}.dashboard-controls{margin-bottom:30px}.add-dismantling-btn,.add-purchase-btn{background:linear-gradient(135deg,#28a745,#20c997);border:none;border-radius:8px;box-shadow:0 2px 10px #28a7454d;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:12px 24px;transition:transform .2s,box-shadow .2s;width:auto}.add-dismantling-btn{background:linear-gradient(135deg,#fd7e14,#e8590c);box-shadow:0 2px 10px #fd7e144d}.add-dismantling-btn:hover,.add-purchase-btn:hover{transform:translateY(-2px)}.add-purchase-btn:hover{box-shadow:0 4px 20px #28a74566}.add-dismantling-btn:hover{box-shadow:0 4px 20px #fd7e1466}.add-dismantling-btn:active,.add-purchase-btn:active{transform:translateY(0)}.dismantling-overview{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;color:#6c757d;margin:0 10px;padding:30px;text-align:center}.dismantling-overview h2{color:#495057;margin-bottom:15px}.loading{color:#666;font-size:18px;padding:50px;text-align:center}.error-message{background:#fff;border-left:5px solid #dc3545;border-radius:10px;box-shadow:0 2px 10px #0000001a;margin:20px;padding:40px}.error-message h3{color:#dc3545;margin-bottom:15px}.error-message p{line-height:1.6;margin-bottom:15px}.error-message ul{margin:15px 0;padding-left:20px}.error-message li{margin-bottom:8px}.retry-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;margin-top:15px;padding:12px 24px;width:auto}.retry-btn:hover{box-shadow:0 5px 15px #667eea4d;transform:translateY(-2px)}.waste-purchase-form{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;margin-bottom:30px;padding:30px}.waste-purchase-form h2{border-bottom:2px solid #f0f0f0;color:#333;margin-top:0;padding-bottom:10px}.form-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.form-group,.form-row{margin-bottom:20px}.form-group label{color:#555;display:block;font-weight:500;margin-bottom:5px}.form-group input,.form-group select,.form-group textarea{border:2px solid #ddd;border-radius:5px;box-sizing:border-box;font-size:14px;padding:10px;transition:border-color .3s;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#667eea;outline:none}.total-preview{background:#f8f9fa;border:2px solid #e9ecef;border-radius:5px;margin-bottom:20px;padding:15px;text-align:center}.form-actions{display:flex;gap:15px;justify-content:flex-end}.form-actions button{padding:10px 20px;width:auto}.form-actions button[type=button]{background:#6c757d}.waste-purchase-list{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;padding:30px}.list-header{align-items:center;border-bottom:2px solid #f0f0f0;display:flex;justify-content:space-between;margin-bottom:25px;padding-bottom:15px}.list-header h2{color:#333;margin:0}.summary{display:flex;font-weight:500;gap:30px}.total-purchases{color:#667eea}.total-value{color:#28a745}.purchases-table{overflow-x:auto}.purchases-table table{border-collapse:collapse;width:100%}.purchases-table td,.purchases-table th{border-bottom:1px solid #e9ecef;padding:12px;text-align:left}.purchases-table th{background-color:#f8f9fa;color:#495057;font-weight:600}.waste-type strong{color:#333;display:block}.waste-type small{color:#6c757d;font-size:12px}.supplier strong{color:#333;display:block}.supplier small{color:#6c757d;font-size:12px}.total-cell{color:#28a745;font-weight:600}.actions{display:flex;gap:5px}.delete-btn{background:#dc3545;border:none;border-radius:3px;color:#fff;cursor:pointer;font-size:14px;padding:5px 10px;width:auto}.delete-btn:hover{background:#c82333;box-shadow:none;transform:none}.no-purchases{color:#6c757d;padding:50px;text-align:center}.no-purchases h3{color:#495057;margin-bottom:10px}@media (max-width:768px){.header-content{flex-direction:column;gap:15px}.dashboard-navigation{flex-wrap:wrap}.nav-btn{font-size:13px;padding:10px 15px}.form-row{grid-template-columns:1fr}.list-header{align-items:flex-start;flex-direction:column;gap:15px}.summary{flex-direction:column;gap:10px}.purchases-table{font-size:14px}.purchases-table td,.purchases-table th{padding:8px}.dismantling-controls{flex-direction:column;gap:10px}}.dismantling-controls{align-items:center;display:flex;gap:15px}.recipe-management-btn{background:linear-gradient(135deg,#6f42c1,#5a32a3);border:none;border-radius:8px;box-shadow:0 2px 8px #6f42c14d;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 20px;transition:all .3s ease}.recipe-management-btn:hover{background:linear-gradient(135deg,#7952cc,#6341b8);box-shadow:0 4px 15px #6f42c166;transform:translateY(-2px)}.recipe-management-btn:active{transform:translateY(0)}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f7fa;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.app-loading{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;flex-direction:column;justify-content:center;min-height:100vh}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:40px;margin-bottom:20px;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}
/*# sourceMappingURL=main.9dd99556.css.map*/