:root{--primary-color: #48bb78;--bg-gradient: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--glass-bg: rgba(255, 255, 255, .15);--text-light: #ffffff}*,*:before,*:after{box-sizing:border-box}body,html{margin:0;padding:0;height:100%;font-family:Segoe UI,sans-serif;overflow-x:hidden;max-width:100%}.header-section{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:12px}.header-section h2{color:#1e293b;margin:0}.search-input{box-sizing:border-box;max-width:100%}.filters-bar{display:flex;flex-wrap:wrap;gap:8px}.add-btn{background:var(--primary-color);color:#fff;border:none;padding:10px 18px;border-radius:8px;font-weight:700;cursor:pointer}.add-btn:hover{opacity:.9}@media(max-width:600px){.page-container{padding:12px!important}.header-section h2,.header-section h3{font-size:1.3rem!important}.search-input{width:100%}}.loading-state,.loading-wrapper,.error-state,.error-wrapper,.empty-state,.empty-wrapper{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;color:#64748b;padding:32px;text-align:center}.spinner,.loading-spinner{width:40px;height:40px;border:4px solid #e2e8f0;border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}@keyframes spin{to{transform:rotate(360deg)}}.empty-icon{color:#94a3b8;margin-bottom:16px}.error-icon{color:#ef4444;margin-bottom:16px}.modal-footer-actions{display:flex;justify-content:flex-end;gap:12px;width:100%}.btn-primary,.btn-secondary,.btn-danger{padding:10px 16px;border-radius:8px;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .2s ease;border:none}.btn-primary{background:#3b82f6;color:#fff}.btn-primary:hover:not(:disabled){background:#2563eb}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:#f1f5f9;color:#475569;border:1px solid #e2e8f0}.btn-secondary:hover:not(:disabled){background:#e2e8f0;color:#334155}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.btn-danger{background:#dc2626;color:#fff}.btn-danger:hover:not(:disabled){background:#b91c1c}.btn-danger:disabled{opacity:.6;cursor:not-allowed}.action-btn,.icon-action-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid #e2e8f0;background:#fff;border-radius:8px;cursor:pointer;transition:all .2s}.action-btn.cancel,.icon-action-btn.unlink{color:#dc2626}.action-btn.cancel:hover,.icon-action-btn.unlink:hover{background:#fef2f2;border-color:#fca5a5}.action-btn.inspect,.icon-action-btn.inspect{color:#2563eb}.action-btn.inspect:hover,.icon-action-btn.inspect:hover{background:#eff6ff;border-color:#bfdbfe}.action-btn.deliver,.icon-action-btn.deliver{color:#3e73bd}.action-btn.deliver:hover,.icon-action-btn.deliver:hover{background:#f0fdf4;border-color:#86c3ef;color:#1664a3}.action-btn.settle,.action-btn.invoice,.icon-action-btn.invoice{color:#10b981}.action-btn.settle:hover,.action-btn.invoice:hover,.icon-action-btn.invoice:hover{background:#ecfdf5;border-color:#a7f3d0}.action-btn.refacturar,.icon-action-btn.hold{color:#f59e0b}.action-btn.refacturar:hover,.icon-action-btn.hold:hover{background:#fffbeb;border-color:#fde047}.action-btn:disabled{opacity:.35;cursor:default}.icon-action-btn.hold{background-color:#fef3c7}.icon-action-btn.hold:hover{background-color:#fde68a;color:#d97706}.modal-loading{display:flex;flex-direction:column;align-items:center;padding:40px;color:#64748b}.detail-modal-content,.confirm-modal-body,.invoice-modal-body{padding:4px}.confirm-modal-body{text-align:center;padding:10px 0}.invoice-modal-body{padding:16px 8px;font-family:Inter,sans-serif}.meta-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:16px;text-align:left}.meta-item{display:flex;flex-direction:column;gap:4px}.meta-label{font-size:.75rem;text-transform:uppercase;color:#64748b;font-weight:600;letter-spacing:.05em}.meta-val{font-size:.95rem;font-weight:500;color:#1e293b}.meta-val.highlight{color:#2563eb;font-weight:600}.divider{border:0;height:1px;background:#e2e8f0;margin:20px 0}.section-title{margin:0 0 12px;font-size:1rem;color:#334155;font-weight:600;text-align:left}.modal-table-wrapper{border:1px solid #e2e8f0;border-radius:8px;overflow:hidden;margin-bottom:20px}.modal-items-table{width:100%;border-collapse:collapse;font-size:.9rem}.modal-items-table th{background:#f8fafc;padding:10px 14px;font-weight:600;color:#475569;text-align:left;border-bottom:1px solid #e2e8f0}.modal-items-table td{padding:12px 14px;border-bottom:1px solid #f1f5f9;color:#334155;text-align:left}.modal-items-table tr:last-child td{border-bottom:none}.item-name{font-weight:500}.item-cancelled{text-decoration:line-through;opacity:.65;background-color:#fef2f2}.cancelled-tag{display:inline-block;font-size:.7rem;font-weight:700;text-transform:uppercase;color:#ef4444;background:#fee2e2;padding:1px 6px;border-radius:4px;margin-left:8px}.totals-section{display:flex;flex-direction:column;align-items:flex-end;gap:8px;padding:8px 12px}.totals-row{display:flex;justify-content:space-between;width:250px;font-size:.9rem;color:#475569}.totals-row.grand-total{font-size:1.1rem;font-weight:800;color:#0f172a;border-top:1px solid #cbd5e1;padding-top:8px;margin-top:4px}.status-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:.8rem;font-weight:600}.status-badge.completed{background:#dcfce7;color:#15803d}.status-badge.cancelled{background:#fee2e2;color:#b91c1c}.status-badge.pending{background:#fef9c3;color:#a16207}.status-badge.credit{background:#fffbeb;color:#92400e}.status-badge.paid{background:#eff6ff;color:#1e40af}.status-badge.delivered{background:#f1f5f9;color:#475569}.payment-methods-list{display:flex;flex-direction:column;gap:4px;margin-top:2px;text-align:left}.payment-badge{display:inline-block;padding:3px 8px;border-radius:6px;font-size:.8rem;font-weight:600;background:#f1f5f9;color:#475569;border:1px solid #e2e8f0;width:fit-content}.payment-badge.cash{background:#ecfdf5;color:#065f46;border-color:#a7f3d0}.payment-badge.dcard,.payment-badge.ccard{background:#eff6ff;color:#1e40af;border-color:#bfdbfe}.payment-badge.transfer{background:#f5f3ff;color:#5b21b6;border-color:#ddd6fe}.payment-badge.credit{background:#fffbeb;color:#92400e;border-color:#fde047}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:.9rem;font-weight:600;color:#334155}.form-select,.modal-input{padding:10px 12px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#0f172a;font-size:.95rem;outline:none;transition:all .2s}.form-select:focus,.modal-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-grid{display:grid;grid-template-columns:1fr;gap:16px;background:#f8fafc;padding:20px;border-radius:12px;border:1px solid #e2e8f0}.invoice-form-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.checkbox-select-label{display:inline-flex;align-items:center;cursor:pointer;padding:4px}.row-checkbox{display:none}.checkbox-custom{display:inline-block;width:20px;height:20px;border:2px solid #94a3b8;border-radius:5px;background:#fff;transition:all .15s;position:relative}.row-checkbox:checked+.checkbox-custom{background:#3b82f6;border-color:#3b82f6}.row-checkbox:checked+.checkbox-custom:after{content:"";position:absolute;left:4px;top:1px;width:8px;height:12px;border:2px solid white;border-top:none;border-left:none;transform:rotate(40deg)}.selection-toggle-btn{display:inline-flex;align-items:center;gap:6px;background:#fff;color:#3b82f6;border:1px solid #cbd5e1;padding:6px 12px;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .15s;white-space:nowrap}.selection-toggle-btn:hover{background:#f8fafc;border-color:#94a3b8}.selection-toggle-btn.active{background:#eff6ff;border-color:#3b82f6}.text-right{text-align:right!important}.font-bold{font-weight:600}.action-btn.pdf{color:#ef4444;border-color:#fca5a5;background:#fef2f2;font-size:.75rem;font-weight:700;text-decoration:none;padding:0 6px}.action-btn.pdf:hover{background:#fee2e2;color:#b91c1c}.action-btn.xml{color:#3b82f6;border-color:#93c5fd;background:#eff6ff;font-size:.75rem;font-weight:700;text-decoration:none;padding:0 6px}.action-btn.xml:hover{background:#dbeafe;color:#1d4ed8}.action-btn.cancel-invoice{color:#ea580c;border-color:#ffedd5;background:#fff7ed}.action-btn.cancel-invoice:hover{background:#ffedd5;border-color:#fed7aa;color:#c2410c}
