Mixed-Criticality (MC) systems have successfully overcome the limitation of traditional real-time systems based on pessimistic Worst-Case Execution Times (WCETs), by using different WCETs depending on different criticalities. One of the important yet unsolved problems of current MC systems is to achieve two goals (G1 and G2) for low-criticality tasks without compromising timing guarantees for high-criticality tasks: (G1) providing a certain (degraded) level of timing guarantees for all low-criticality tasks; (G2) while maximizing the fully-serviced (non-degraded) execution of low-criticality tasks. To address the problem, we propose IMC-PnG, an MC scheduling framework, which employs two salient features: a task-level virtual-deadline assignment under the imprecise computing model with efficient resource utilization (supporting G1), and an online scheduling algorithm that dynamically changes criticality levels of individual tasks at runtime (supporting G2). In simulation results with random workloads, we showed that IMC-PnG has up to 12.10% higher schedulability and up to 42.10% higher runtime performance (measured by the fully-serviced ratio of low-criticality tasks) than the existing approaches.