{"id":344,"date":"2026-07-14T11:06:24","date_gmt":"2026-07-14T03:06:24","guid":{"rendered":"https:\/\/rodimppf.com\/?page_id=344"},"modified":"2026-08-27T16:04:46","modified_gmt":"2026-08-27T08:04:46","slug":"bao-hanh","status":"publish","type":"page","link":"https:\/\/rodimppf.com\/en\/bao-hanh\/","title":{"rendered":"B\u1ea3o h\u00e0nh"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"344\" class=\"elementor elementor-344\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-0951bbc e-con e-atomic-element e-flexbox-base e-2969562 flexbox \" data-id=\"0951bbc\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"0951bbc\" data-e-type=\"e-flexbox\" data-id=\"0951bbc\">\n    \t\t\t<h2 data-interaction-id=\"b3eeeb5\" class=\"s50 e-b3eeeb5-06bb440 e-heading-base\" data-e-type=\"widget\" data-id=\"b3eeeb5\">L\u01b0u \u00fd b\u1ea3o d\u01b0\u1ee1ng sau khi d\u00e1n phim PPF<\/h2>\n\t\t\n<\/div>\n<div class=\"elementor-element elementor-element-1bef645 e-con e-atomic-element e-flexbox-base e-d2090cf flexbox \" data-id=\"1bef645\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"1bef645\" data-e-type=\"e-flexbox\" data-id=\"1bef645\">\n    \t\t<div class=\"elementor-element elementor-element-44fa20b elementor-widget elementor-widget-spacer\" data-id=\"44fa20b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"spacer.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-spacer\">\n\t\t\t<div class=\"elementor-spacer-inner\"><\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-e51f76a e-con e-atomic-element e-flexbox-base e-e51f76a-dc41f17 \" data-id=\"e51f76a\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"e51f76a\" data-e-type=\"e-flexbox\" data-id=\"e51f76a\">\n    \t\t\t<h2 data-interaction-id=\"7ddba17\" class=\"e-7ddba17-0e4f071 s40 e-heading-base\" data-e-type=\"widget\" data-id=\"7ddba17\">RODIM PPF \u2022 H\u01b0\u1edbng d\u1eabn b\u1ea3o d\u01b0\u1ee1ng ch\u00ednh th\u1ee9c<\/h2>\n\t\t\t\t<div class=\"elementor-element elementor-element-0cdf4f3 s16 elementor-widget elementor-widget-text-editor\" data-id=\"0cdf4f3\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<h4>C\u1ed1 \u0111\u1ecbnh ban \u0111\u1ea7u: 1 tu\u1ea7n sau khi d\u00e1n &gt; Chu k\u1ef3 quan tr\u1ecdng A<\/h4><ul><li>1 tu\u1ea7n \u0111\u1ea7u kh\u00f4ng r\u1eeda xe, kh\u00f4ng \u0111\u00e1nh s\u00e1p &gt; tr\u00e1nh \u1ea3nh h\u01b0\u1edfng hi\u1ec7u l\u1ef1c b\u1ea3o h\u00e0nh.<\/li><li>1 tu\u1ea7n \u0111\u1ea7u kh\u00f4ng ph\u01a1i n\u1eafng l\u00e2u &gt; tr\u00e1nh n\u01b0\u1edbc bay h\u01a1i nhanh g\u00e2y ph\u1ed3ng phim.<\/li><li>1 tu\u1ea7n \u0111\u1ea7u quay l\u1ea1i c\u1eeda h\u00e0ng \u1ee7y quy\u1ec1n ki\u1ec3m tra &gt; ki\u1ec3m tra m\u00e9p bo v\u00e0 \u0111\u1ed9 b\u00e1m d\u00ednh.<\/li><\/ul><h4>R\u1eeda xe v\u00e0 v\u1ec7 sinh h\u00e0ng ng\u00e0y<\/h4><ul><li>Kh\u00f4ng x\u1ecbt \u00e1p l\u1ef1c cao l\u00e2u v\u00e0o m\u00e9p phim &gt; tr\u00e1nh bong m\u00e9p, v\u00e0o n\u01b0\u1edbc.<\/li><li>Kh\u00f4ng d\u00f9ng dung d\u1ecbch g\u1ed1c dung m\u00f4i, s\u00e1p c\u1ee9ng &gt; d\u00f9ng n\u01b0\u1edbc r\u1eeda xe trung t\u00ednh.<\/li><li>L\u00e0m s\u1ea1ch ph\u00e2n chim, x\u00e1c c\u00f4n tr\u00f9ng, nh\u1ef1a c\u00e2y, c\u1eb7n m\u01b0a axit k\u1ecbp th\u1eddi &gt; tr\u00e1nh \u0103n m\u00f2n m\u00e0ng phim.<\/li><li>Kh\u00f4ng c\u00e0o b\u1eb1ng v\u1eadt c\u1ee9ng, kh\u00f4ng ch\u00e0 m\u1ea1nh, kh\u00f4ng \u0111\u00e1nh b\u00f3ng s\u00e2u to\u00e0n xe.<\/li><\/ul><h4>B\u1ea3o d\u01b0\u1ee1ng d\u00e0i h\u1ea1n<\/h4><ul><li>Khuy\u1ebfn ngh\u1ecb th\u1ef1c hi\u1ec7n ch\u0103m s\u00f3c chuy\u00ean s\u00e2u d\u00e0nh ri\u00eang cho phim PPF m\u1ed7i 6 th\u00e1ng m\u1ed9t l\u1ea7n &gt; gi\u00fap k\u00e9o d\u00e0i tu\u1ed5i th\u1ecd s\u1eed d\u1ee5ng.<\/li><li>Xe c\u01b0\u1edbi \/ m\u1ee5c \u0111\u00edch s\u1eed d\u1ee5ng \u0111\u1eb7c bi\u1ec7t: kh\u00f4ng \u0111\u1ec3 gi\u00e1c h\u00fat b\u00e1m tr\u1ef1c ti\u1ebfp l\u00ean b\u1ec1 m\u1eb7t phim. N\u1ebfu b\u1ecb lem m\u00e0u do ruy b\u0103ng ho\u1eb7c ph\u00e1o hoa, c\u1ea7n v\u1ec7 sinh v\u00e0 b\u1ea3o d\u01b0\u1ee1ng k\u1ecbp th\u1eddi trong v\u00f2ng 12 gi\u1edd &gt; tr\u00e1nh g\u00e2y \u1ed1 m\u00e0u v\u0129nh vi\u1ec5n.<\/li><\/ul><h4>X\u1eed l\u00fd b\u1ea5t th\u01b0\u1eddng<\/h4><ul><li>C\u00f3 b\u1ecdt kh\u00ed, bong m\u00e9p, \u1ed1 v\u00e0ng b\u1ea5t th\u01b0\u1eddng &gt; li\u00ean h\u1ec7 ch\u00ednh th\u1ee9c \/ c\u1eeda h\u00e0ng \u1ee7y quy\u1ec1n x\u1eed l\u00fd, kh\u00f4ng t\u1ef1 b\u00f3c phim s\u1eeda ch\u1eefa.<\/li><\/ul>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3450d82 elementor-widget elementor-widget-spacer\" data-id=\"3450d82\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"spacer.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-spacer\">\n\t\t\t<div class=\"elementor-spacer-inner\"><\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<h2 data-interaction-id=\"50e495a\" class=\"e-50e495a-f5bd5e5 s40 e-heading-base\" data-e-type=\"widget\" data-id=\"50e495a\">Nh\u1eefng \u0111i\u1ec1u c\u1ea7n l\u01b0u \u00fd<\/h2>\n\t\t\t\t<div class=\"elementor-element elementor-element-ae91ee6 s16 elementor-widget elementor-widget-text-editor\" data-id=\"ae91ee6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<h4>\u0110i\u1ec1u ki\u1ec7n hi\u1ec7u l\u1ef1c b\u1ea3o h\u00e0nh<\/h4><ul><li>Thi c\u00f4ng t\u1ea1i c\u1eeda h\u00e0ng \u1ee7y quy\u1ec1n RODIM, trong x\u01b0\u1edfng kh\u00f4ng b\u1ee5i, b\u1edfi k\u1ef9 thu\u1eadt vi\u00ean chuy\u00ean nghi\u1ec7p &gt; ho\u00e0n t\u1ea5t k\u00edch ho\u1ea1t b\u1ea3o h\u00e0nh \u0111i\u1ec7n t\u1eed ch\u00ednh th\u1ee9c &gt; nh\u1eadn ch\u1ee9ng nh\u1eadn b\u1ea3o h\u00e0nh duy nh\u1ea5t.<\/li><li>Tu\u00e2n th\u1ee7 h\u01b0\u1edbng d\u1eabn b\u1ea3o d\u01b0\u1ee1ng PPF ch\u00ednh th\u1ee9c, ki\u1ec3m tra v\u00e0 b\u1ea3o d\u01b0\u1ee1ng \u0111\u00fang h\u1ea1n. Thi c\u00f4ng sai \/ b\u1ea3o d\u01b0\u1ee1ng sai c\u00e1ch s\u1ebd m\u1ea5t quy\u1ec1n l\u1ee3i b\u1ea3o h\u00e0nh.<\/li><li>Ch\u1ec9 \u00e1p d\u1ee5ng cho PPF BASF RODIM ch\u00ednh h\u00e3ng. H\u00e0ng sai k\u00eanh, h\u00e0ng kh\u00f4ng r\u00f5 ngu\u1ed3n g\u1ed1c, phi\u00ean b\u1ea3n t\u00f9y ch\u1ec9nh ngo\u00e0i k\u00eanh ch\u00ednh th\u1ee9c kh\u00f4ng \u0111\u01b0\u1ee3c b\u1ea3o h\u00e0nh.<\/li><\/ul><h4>Ph\u1ea1m vi b\u1ea3o h\u00e0nh<\/h4><ul><li>\u0110\u1ed1i t\u01b0\u1ee3ng b\u1ea3o h\u00e0nh: ch\u1ec9 \u00e1p d\u1ee5ng cho l\u1ed7i nguy\u00ean\u5382 c\u1ee7a ch\u00ednh v\u1eadt li\u1ec7u phim PPF.<\/li><li>V\u1ea5n \u0111\u1ec1 \u0111\u01b0\u1ee3c b\u1ea3o h\u00e0nh: n\u1ee9t, ph\u1ed3ng r\u1ed9p, \u0111\u1ee9t keo, t\u00e1ch l\u1edbp ho\u1eb7c \u1ed1 v\u00e0ng nghi\u00eam tr\u1ecdng t\u1ef1 nhi\u00ean kh\u00f4ng do t\u00e1c \u0111\u1ed9ng ngo\u1ea1i l\u1ef1c, ph\u00e1t sinh t\u1eeb l\u1ed7i v\u1eadt li\u1ec7u nguy\u00ean\u5382.<\/li><li>D\u1ecbch v\u1ee5 b\u1ea3o h\u00e0nh: trong th\u1eddi h\u1ea1n b\u1ea3o h\u00e0nh, c\u00f3 th\u1ec3 y\u00eau c\u1ea7u s\u1eeda ch\u1eefa ho\u1eb7c thay th\u1ebf mi\u1ec5n ph\u00ed &gt; c\u0103n c\u1ee9 theo k\u1ebft qu\u1ea3 ki\u1ec3m tra c\u1ee7a b\u1ed9 ph\u1eadn ch\u00ednh th\u1ee9c \/ t\u1ed5 ch\u1ee9c th\u1ea9m \u0111\u1ecbnh uy t\u00edn.<\/li><li>Th\u1eddi h\u1ea1n b\u1ea3o h\u00e0nh: c\u0103n c\u1ee9 theo th\u00f4ng tin ghi tr\u00ean th\u1ebb b\u1ea3o h\u00e0nh \u0111i\u1ec7n t\u1eed: 5 n\u0103m \/ 7 n\u0103m \/ 10 n\u0103m, t\u01b0\u01a1ng \u1ee9ng v\u1edbi t\u1eebng d\u00f2ng s\u1ea3n ph\u1ea9m kh\u00e1c nhau.<\/li><\/ul><h4>Tr\u00e1ch nhi\u1ec7m lo\u1ea1i tr\u1eeb\uff08kh\u00f4ng n\u1eb1m trong ph\u1ea1m vi b\u1ea3o h\u00e0nh\uff09<\/h4><ul><li>Tr\u1ea7y x\u01b0\u1edbc do ngo\u1ea1i l\u1ef1c, h\u01b0 h\u1ea1i do tai n\u1ea1n giao th\u00f4ng, h\u01b0 h\u1ea1i do c\u1ea3i t\u1ea1o \/ \u0111\u1ed9 xe, c\u1ed1 \u00fd ph\u00e1 ho\u1ea1i b\u1eb1ng v\u1eadt c\u1ee9ng, hao m\u00f2n t\u1ef1 nhi\u00ean.<\/li><li>R\u1eeda xe \/ b\u1ea3o d\u01b0\u1ee1ng kh\u00f4ng \u0111\u00fang c\u00e1ch: d\u00f9ng v\u00f2i n\u01b0\u1edbc \u00e1p l\u1ef1c cao x\u1ecbt l\u00e2u tr\u1ef1c ti\u1ebfp v\u00e0o m\u00e9p phim, s\u1eed d\u1ee5ng dung d\u1ecbch v\u1ec7 sinh g\u1ed1c dung m\u00f4i, s\u00e1p t\u1ed5ng h\u1ee3p c\u1ee9ng, \u0111\u00e1nh b\u00f3ng to\u00e0n xe, t\u1ef1 \u00fd s\u1eeda ch\u1eefa ho\u1eb7c b\u00f3c phim.<\/li><li>\u0102n m\u00f2n do ph\u00e2n chim, nh\u1ef1a c\u00e2y, h\u00f3a ch\u1ea5t l\u01b0u l\u1ea1i trong th\u1eddi gian d\u00e0i; lem m\u00e0u do s\u1eed d\u1ee5ng kh\u00f4ng \u0111\u00fang c\u00e1ch trong xe c\u01b0\u1edbi \/ c\u00e1c t\u00ecnh hu\u1ed1ng \u0111\u1eb7c bi\u1ec7t; h\u01b0 h\u1ea1i do d\u00e1n ho\u1eb7c g\u1eafn gi\u00e1c h\u00fat l\u00ean b\u1ec1 m\u1eb7t phim.<\/li><li>Thi\u00ean tai, m\u00f4i tr\u01b0\u1eddng kh\u1eafc nghi\u1ec7t, thao t\u00e1c sai do con ng\u01b0\u1eddi, t\u1ef1 \u00fd s\u1eeda ch\u1eefa b\u1eb1ng phim kh\u00f4ng ch\u00ednh h\u00e3ng.<\/li><li>H\u01b0 h\u1ea1i bong tr\u00f3c s\u01a1n khi b\u00f3c phim tr\u00ean b\u1ec1 m\u1eb7t s\u01a1n \u0111\u00e3 s\u01a1n l\u1ea1i l\u1ea7n hai.<\/li><li>H\u01b0 h\u1ea1i th\u00e2n phim do kh\u00f4ng ki\u1ec3m tra l\u1ea1i \u0111\u00fang h\u1ea1n ho\u1eb7c b\u1ea3o d\u01b0\u1ee1ng sai quy chu\u1ea9n.<\/li><\/ul><h4>Th\u00f4ng tin b\u1ed5 sung v\u1ec1 b\u1ea3o h\u00e0nh<\/h4><ul><li>B\u1ea3o h\u00e0nh ch\u1ec9 \u00e1p d\u1ee5ng cho xe \u0111\u00e3 xe \u0111\u00e3 \u0111\u01b0\u1ee3c \u0111\u0103ng k\u00fd b\u1ea3o h\u00e0nh ban \u0111\u1ea7u ban \u0111\u1ea7u; quy \u0111\u1ecbnh chuy\u1ec3n nh\u01b0\u1ee3ng \/ sang t\u00ean theo xe v\u00e0 quy tr\u00ecnh \u0111\u0103ng k\u00fd s\u1ebd c\u0103n c\u1ee9 theo quy \u0111\u1ecbnh ch\u00ednh th\u1ee9c.<\/li><li>Sau khi s\u1eeda ch\u1eefa ho\u1eb7c thay th\u1ebf, th\u1eddi h\u1ea1n b\u1ea3o h\u00e0nh s\u1ebd ti\u1ebfp t\u1ee5c theo th\u1eddi gian b\u1ea3o h\u00e0nh c\u00f2n l\u1ea1i c\u1ee7a s\u1ea3n ph\u1ea9m ban \u0111\u1ea7u &gt; kh\u00f4ng t\u00ednh l\u1ea1i th\u1eddi h\u1ea1n b\u1ea3o h\u00e0nh t\u1eeb \u0111\u1ea7u.<\/li><li>D\u1ecbch v\u1ee5 b\u1ea3o h\u00e0nh li\u00ean th\u00f4ng: c\u00e1c c\u1eeda h\u00e0ng \u1ee7y quy\u1ec1n ch\u00ednh th\u1ee9c tr\u00ean to\u00e0n qu\u1ed1c c\u00f3 th\u1ec3 cung c\u1ea5p d\u1ecbch v\u1ee5 h\u1eadu m\u00e3i sau khi x\u00e1c minh b\u1ea3o h\u00e0nh \u0111i\u1ec7n t\u1eed.<\/li><li>Quy\u1ec1n gi\u1ea3i th\u00edch cu\u1ed1i c\u00f9ng v\u1ec1 ch\u00ednh s\u00e1ch b\u1ea3o h\u00e0nh thu\u1ed9c v\u1ec1 BASF RODIM ch\u00ednh th\u1ee9c.<\/li><\/ul><h4>Bi\u1ec3u m\u1eabu khi\u1ebfu n\u1ea1i b\u1ea3o h\u00e0nh<\/h4><ul><li>Th\u00f4ng tin b\u1ea3n quy\u1ec1n: \u00a9 BASF RODIM \u00a9 BASF RODIM. B\u1ea3o l\u01b0u m\u1ecdi quy\u1ec1n.. B\u1ea3o l\u01b0u m\u1ecdi quy\u1ec1n.<\/li><li>Tuy\u00ean b\u1ed1: C\u00e1c \u0111i\u1ec1u kho\u1ea3n b\u1ea3o h\u00e0nh n\u00e0y c\u0103n c\u1ee9 theo phi\u00ean b\u1ea3n ch\u00ednh th\u1ee9c. N\u1ebfu c\u00f3 c\u1eadp nh\u1eadt, vui l\u00f2ng tham kh\u1ea3o th\u00f4ng tin tr\u00ean website ch\u00ednh th\u1ee9c.<\/li><li>Th\u00f4ng tin \u0111\u0103ng k\u00fd \/ th\u00f4ng tin th\u01b0\u01a1ng hi\u1ec7u<\/li><\/ul>\t\t\t\t\t\t\t\t<\/div>\n\t\t\n<\/div>\n\t\t<div class=\"elementor-element elementor-element-df92b06 elementor-widget elementor-widget-spacer\" data-id=\"df92b06\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"spacer.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-spacer\">\n\t\t\t<div class=\"elementor-spacer-inner\"><\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\n<\/div>\n<div class=\"elementor-element elementor-element-edea2c0 e-con e-atomic-element e-flexbox-base e-6ade1b2 \" data-id=\"edea2c0\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"edea2c0\" data-e-type=\"e-flexbox\" data-id=\"edea2c0\">\n    \t\t<div class=\"elementor-element elementor-element-695b1f9 elementor-widget elementor-widget-html\" data-id=\"695b1f9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<section class=\"pgy-wq\">\r\n<!-- \u9876\u90e8\u72ec\u7acb\u6807\u9898\u4e0e\u4ecb\u7ecd -->\r\n  <header class=\"pgy-wq__header\">\r\n    <div class=\"pgy-wq__brand\">\r\n            <svg class=\"pgy-wq__brand-icon\" viewBox=\"0 0 48 48\" fill=\"none\">\r\n              <path d=\"M24 3.5 40 9.8v12.1c0 10.8-6.7 18.4-16 22.6-9.3-4.2-16-11.8-16-22.6V9.8L24 3.5Z\" stroke=\"currentColor\" stroke-width=\"2.8\"\/>\r\n              <path d=\"m17.2 23.6 4.3 4.3 9.3-10\" stroke=\"currentColor\" stroke-width=\"2.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\r\n            <\/svg>\r\n            <h2 class=\"pgy-wq__title\">Tra c\u1ee9u b\u1ea3o h\u00e0nh \u0111i\u1ec7n t\u1eed<\/h2>\r\n          <\/div>\r\n    \r\n          <p class=\"pgy-wq__intro\">\r\n            Vui l\u00f2ng nh\u1eadp th\u00f4ng tin \u0111\u1ec3 tra c\u1ee9u. Sau khi x\u00e1c th\u1ef1c th\u00e0nh c\u00f4ng, b\u1ea1n c\u00f3 th\u1ec3 xem chi ti\u1ebft b\u1ea3o h\u00e0nh \u0111i\u1ec7n t\u1eed c\u1ee7a s\u1ea3n ph\u1ea9m. Ch\u00fang t\u00f4i cam k\u1ebft cung c\u1ea5p th\u00f4ng tin b\u1ea3o h\u00e0nh ch\u00ednh x\u00e1c v\u00e0 d\u1ecbch v\u1ee5 h\u1ed7 tr\u1ee3 \u0111\u00e1ng tin c\u1eady.\r\n          <\/p>\r\n  <\/header>\r\n\r\n  <div class=\"pgy-wq__layout\">\r\n\r\n    <div class=\"pgy-wq__query\">\r\n<div class=\"pgy-wq__form-card\">\r\n        <div class=\"pgy-wq__form-main\">\r\n          <p class=\"pgy-wq__eyebrow\">Ch\u1ecdn ph\u01b0\u01a1ng th\u1ee9c tra c\u1ee9u<\/p>\r\n\r\n          <div class=\"pgy-wq__tabs\">\r\n            <button class=\"pgy-wq__tab is-active\" type=\"button\" data-mode=\"phone\">\r\n              <svg viewBox=\"0 0 24 24\" fill=\"none\">\r\n                <rect x=\"7\" y=\"2.5\" width=\"10\" height=\"19\" rx=\"2\" stroke=\"currentColor\" stroke-width=\"1.8\"\/>\r\n                <path d=\"M10 18.5h4\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\"\/>\r\n              <\/svg>\r\n              S\u1ed1 \u0111i\u1ec7n tho\u1ea1i\r\n            <\/button>\r\n\r\n            <button class=\"pgy-wq__tab\" type=\"button\" data-mode=\"vin\">\r\n              <svg viewBox=\"0 0 24 24\" fill=\"none\" aria-hidden=\"true\">\r\n                <path d=\"M5.2 10.2 7 6.5A2.5 2.5 0 0 1 9.25 5h5.5A2.5 2.5 0 0 1 17 6.5l1.8 3.7\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\"\/>\r\n                <path d=\"M4 11.5h16a1 1 0 0 1 1 1V17a1.5 1.5 0 0 1-1.5 1.5h-15A1.5 1.5 0 0 1 3 17v-4.5a1 1 0 0 1 1-1Z\" stroke=\"currentColor\" stroke-width=\"1.8\"\/>\r\n                <path d=\"M6.5 18.5V20M17.5 18.5V20M7 14.5h2M15 14.5h2\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\"\/>\r\n              <\/svg>\r\n              S\u1ed1 khung xe\r\n            <\/button>\r\n          <\/div>\r\n\r\n          <form class=\"pgy-wq__form\">\r\n            <div class=\"pgy-wq__field\">\r\n              <label class=\"pgy-wq__label\" data-main-label>Nh\u1eadp s\u1ed1 \u0111i\u1ec7n tho\u1ea1i<\/label>\r\n\r\n              <div class=\"pgy-wq__input-wrap\">\r\n                <svg class=\"pgy-wq__input-icon\" data-main-icon viewBox=\"0 0 24 24\" fill=\"none\" aria-hidden=\"true\">\r\n                  <rect x=\"7\" y=\"2.5\" width=\"10\" height=\"19\" rx=\"2\" stroke=\"currentColor\" stroke-width=\"1.8\"\/>\r\n                  <path d=\"M10 18.5h4\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\"\/>\r\n                <\/svg>\r\n\r\n                <input class=\"pgy-wq__input\" type=\"text\" data-main-input placeholder=\"Nh\u1eadp s\u1ed1 \u0111i\u1ec7n tho\u1ea1i\">\r\n                <button class=\"pgy-wq__clear\" type=\"button\" data-clear aria-label=\"\u6e05\u7a7a\"><\/button>\r\n              <\/div>\r\n            <\/div>\r\n\r\n            <div class=\"pgy-wq__field\" data-code-field>\r\n              <label class=\"pgy-wq__label\">\r\n                Nh\u1eadp m\u00e3 x\u00e1c nh\u1eadn\r\n                <span class=\"pgy-wq__code-note\" data-code-note>\r\n                  M\u00e3 x\u00e1c nh\u1eadn s\u1ebd \u0111\u01b0\u1ee3c g\u1eedi \u0111\u1ebfn s\u1ed1 \u0111i\u1ec7n tho\u1ea1i \u0111\u00e3 \u0111\u0103ng k\u00fd.\r\n                <\/span>\r\n              <\/label>\r\n\r\n              <div class=\"pgy-wq__code-row\">\r\n                <div class=\"pgy-wq__input-wrap\">\r\n                  <svg class=\"pgy-wq__input-icon\" viewBox=\"0 0 24 24\" fill=\"none\">\r\n                    <path d=\"M7 10V7a5 5 0 0 1 10 0v3M6 10h12v11H6V10Z\" stroke=\"currentColor\" stroke-width=\"1.8\"\/>\r\n                    <path d=\"M12 14v3\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\"\/>\r\n                  <\/svg>\r\n\r\n                  <input class=\"pgy-wq__input\" type=\"text\" data-code-input placeholder=\"Nh\u1eadp m\u00e3 x\u00e1c nh\u1eadn\">\r\n                <\/div>\r\n\r\n                <button class=\"pgy-wq__code-button\" type=\"button\" data-code-button>L\u1ea5y m\u00e3 x\u00e1c th\u1ef1c<\/button>\r\n              <\/div>\r\n            <\/div>\r\n\r\n            <div class=\"pgy-wq__message\" data-message><\/div>\r\n\r\n            <button class=\"pgy-wq__submit\" type=\"submit\">\r\n              <svg viewBox=\"0 0 24 24\" fill=\"none\">\r\n                <circle cx=\"10.5\" cy=\"10.5\" r=\"6.5\" stroke=\"currentColor\" stroke-width=\"1.8\"\/>\r\n                <path d=\"m15.5 15.5 4 4\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\"\/>\r\n              <\/svg>\r\n              Tra c\u1ee9u\r\n            <\/button>\r\n\r\n            <div class=\"pgy-wq__privacy\">\r\n              <svg viewBox=\"0 0 24 24\" fill=\"none\">\r\n                <path d=\"M12 2.8 19 5.5v5.3c0 4.7-2.9 8-7 9.9-4.1-1.9-7-5.2-7-9.9V5.5L12 2.8Z\" stroke=\"currentColor\" stroke-width=\"1.7\"\/>\r\n                <path d=\"m9.2 11.3 1.8 1.8 3.8-4\" stroke=\"currentColor\" stroke-width=\"1.7\" stroke-linecap=\"round\"\/>\r\n              <\/svg>\r\n              Ch\u00fang t\u00f4i cam k\u1ebft b\u1ea3o m\u1eadt tuy\u1ec7t \u0111\u1ed1i th\u00f4ng tin c\u00e1 nh\u00e2n c\u1ee7a b\u1ea1n.\r\n            <\/div>\r\n          <\/form>\r\n        <\/div>\r\n\r\n        <div class=\"pgy-wq__tips\">\r\n          <h3 class=\"pgy-wq__tips-title\">\r\n            <svg viewBox=\"0 0 24 24\" fill=\"none\">\r\n              <path d=\"M9 18h6M10 21h4M8.5 14.5a6 6 0 1 1 7 0c-.9.7-1.5 1.4-1.5 2.5h-4c0-1.1-.6-1.8-1.5-2.5Z\" stroke=\"currentColor\" stroke-width=\"1.7\" stroke-linecap=\"round\"\/>\r\n            <\/svg>\r\n            L\u01b0u \u00fd\r\n          <\/h3>\r\n\r\n          <ul class=\"pgy-wq__tips-list\">\r\n            <li>H\u1ed7 tr\u1ee3 tra c\u1ee9u th\u00f4ng tin b\u1ea3o h\u00e0nh \u0111i\u1ec7n t\u1eed th\u00f4ng qua s\u1ed1 \u0111i\u1ec7n tho\u1ea1i ho\u1eb7c s\u1ed1 VIN.<\/li>\r\n            <li>K\u1ebft qu\u1ea3 tra c\u1ee9u \u0111\u01b0\u1ee3c \u0111\u1ed3ng b\u1ed9 theo th\u1eddi gian th\u1ef1c v\u1edbi h\u1ec7 th\u1ed1ng c\u1ee7a nh\u00e0 s\u1ea3n xu\u1ea5t, \u0111\u1ea3m b\u1ea3o th\u00f4ng tin ch\u00ednh x\u00e1c v\u00e0 h\u1ee3p l\u1ec7.<\/li>\r\n            <li>N\u1ebfu g\u1eb7p v\u1ea5n \u0111\u1ec1 trong qu\u00e1 tr\u00ecnh tra c\u1ee9u, vui l\u00f2ng li\u00ean h\u1ec7 c\u1eeda h\u00e0ng thi c\u00f4ng ho\u1eb7c b\u1ed9 ph\u1eadn ch\u0103m s\u00f3c kh\u00e1ch h\u00e0ng ch\u00ednh th\u1ee9c.<\/li>\r\n          <\/ul>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"pgy-wq__result-area\">\r\n      <article class=\"pgy-wq__result\" data-result>\r\n\r\n        <div class=\"pgy-wq__empty\">\r\n          <div class=\"pgy-wq__empty-inner\">\r\n            <svg class=\"pgy-wq__empty-icon\" viewBox=\"0 0 80 80\" fill=\"none\">\r\n              <path d=\"M40 7 66 17v19.7c0 17.5-10.9 29.9-26 36.8-15.1-6.9-26-19.3-26-36.8V17L40 7Z\" stroke=\"currentColor\" stroke-width=\"4\"\/>\r\n              <path d=\"m29 40 7 7 15-16\" stroke=\"currentColor\" stroke-width=\"4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\r\n            <\/svg>\r\n\r\n            <h3 class=\"pgy-wq__empty-title\">Tra c\u1ee9u th\u00f4ng tin b\u1ea3o h\u00e0nh \u0111i\u1ec7n t\u1eed c\u1ee7a b\u1ea1n<\/h3>\r\n            <p class=\"pgy-wq__empty-text\">\r\n              Vui l\u00f2ng ch\u1ecdn ph\u01b0\u01a1ng th\u1ee9c tra c\u1ee9u b\u1eb1ng s\u1ed1 \u0111i\u1ec7n tho\u1ea1i ho\u1eb7c s\u1ed1 VIN \u1edf b\u00ean tr\u00e1i, nh\u1eadp th\u00f4ng tin t\u01b0\u01a1ng \u1ee9ng v\u00e0 nh\u1ea5n n\u00fat tra c\u1ee9u.\r\n            <\/p>\r\n          <\/div>\r\n        <\/div>\r\n\r\n        <div class=\"pgy-wq__result-content\">\r\n          <header class=\"pgy-wq__result-head\">\r\n            <div class=\"pgy-wq__result-title\">\r\n              <svg viewBox=\"0 0 24 24\" fill=\"none\">\r\n                <path d=\"M12 2.8 19 5.5v5.3c0 4.7-2.9 8-7 9.9-4.1-1.9-7-5.2-7-9.9V5.5L12 2.8Z\" fill=\"currentColor\"\/>\r\n                <path d=\"m9.2 11.3 1.8 1.8 3.8-4\" stroke=\"#fff\" stroke-width=\"1.7\" stroke-linecap=\"round\"\/>\r\n              <\/svg>\r\n\r\n              <div>\r\n                <h2>K\u1ebft qu\u1ea3 tra c\u1ee9u<\/h2>\r\n                <p>X\u00e1c th\u1ef1c th\u00e0nh c\u00f4ng, d\u01b0\u1edbi \u0111\u00e2y l\u00e0 th\u00f4ng tin chi ti\u1ebft v\u1ec1 b\u1ea3o h\u00e0nh \u0111i\u1ec7n t\u1eed c\u1ee7a b\u1ea1n.<\/p>\r\n              <\/div>\r\n            <\/div>\r\n\r\n            <button class=\"pgy-wq__export\" type=\"button\" data-export>\r\n              <svg viewBox=\"0 0 24 24\" fill=\"none\">\r\n                <path d=\"M12 3v11M8 10l4 4 4-4M5 16v4h14v-4\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\r\n              <\/svg>\r\n              <span>Xu\u1ea5t ch\u1ee9ng nh\u1eadn b\u1ea3o h\u00e0nh<\/span>\r\n            <\/button>\r\n          <\/header>\r\n\r\n          <div class=\"pgy-wq__result-body\">\r\n            <section class=\"pgy-wq__info-card\">\r\n              <div class=\"pgy-wq__info-title\">Th\u00f4ng tin b\u1ea3o h\u00e0nh s\u1ea3n ph\u1ea9m<\/div>\r\n              <div class=\"pgy-wq__rows\">\r\n                <div class=\"pgy-wq__row\"><span>T\u00ean s\u1ea3n ph\u1ea9m<\/span><span class=\"pgy-wq__row-value\">xxxxxx<\/span><\/div>\r\n                <div class=\"pgy-wq__row\"><span>Th\u1eddi h\u1ea1n b\u1ea3o h\u00e0nh<\/span><span class=\"pgy-wq__row-value\">xxx<\/span><\/div>\r\n                <div class=\"pgy-wq__row\"><span>Ng\u00e0y ho\u00e0n th\u00e0nh<\/span><span class=\"pgy-wq__row-value\">2025-08-20<\/span><\/div>\r\n                <div class=\"pgy-wq__row\"><span>Ng\u00e0y k\u00edch ho\u1ea1t<\/span><span class=\"pgy-wq__row-value\">2025-08-20 14:59:44<\/span><\/div>\r\n                <div class=\"pgy-wq__row\"><span>M\u00e3 s\u1ea3n ph\u1ea9m<\/span><span class=\"pgy-wq__row-value\">xxxxxx<\/span><\/div>\r\n              <\/div>\r\n            <\/section>\r\n\r\n            <section class=\"pgy-wq__info-card\">\r\n              <div class=\"pgy-wq__info-title\">Th\u00f4ng tin kh\u00e1ch h\u00e0ng & ph\u01b0\u01a1ng ti\u1ec7n<\/div>\r\n              <div class=\"pgy-wq__double\">\r\n                <div class=\"pgy-wq__rows\">\r\n                  <div class=\"pgy-wq__row\"><span>H\u1ecd v\u00e0 t\u00ean<\/span><span class=\"pgy-wq__row-value\">xxxxxx<\/span><\/div>\r\n                  <div class=\"pgy-wq__row\"><span>S\u1ed1 \u0111i\u1ec7n tho\u1ea1i<\/span><span class=\"pgy-wq__row-value\">xxxxxxxxx<\/span><\/div>\r\n                  <div class=\"pgy-wq__row\"><span>Th\u00f4ng tin xe<\/span><span class=\"pgy-wq__row-value\">xxxxxx<\/span><\/div>\r\n                <\/div>\r\n\r\n                <div class=\"pgy-wq__rows\">\r\n                  <div class=\"pgy-wq__row\"><span>Bi\u1ec3n s\u1ed1 xe<\/span><span class=\"pgy-wq__row-value\">xxxxxx<\/span><\/div>\r\n                  <div class=\"pgy-wq__row\"><span>S\u1ed1 VIN<\/span><span class=\"pgy-wq__row-value\">xxxxxx<\/span><\/div>\r\n                <\/div>\r\n              <\/div>\r\n            <\/section>\r\n\r\n            <section class=\"pgy-wq__info-card\">\r\n              <div class=\"pgy-wq__info-title\">Th\u00f4ng tin thi c\u00f4ng<\/div>\r\n              <div class=\"pgy-wq__rows\">\r\n                <div class=\"pgy-wq__row\"><span>Lo\u1ea1i h\u00ecnh thi c\u00f4ng<\/span><span class=\"pgy-wq__row-value\">xxxxxx<\/span><\/div>\r\n                <div class=\"pgy-wq__row\"><span>V\u1ecb tr\u00ed thi c\u00f4ng<\/span><span class=\"pgy-wq__row-value\">xxxxxx<\/span><\/div>\r\n                <div class=\"pgy-wq__row\"><span>C\u1eeda h\u00e0ng thi c\u00f4ng<\/span><span class=\"pgy-wq__row-value\">xxxxxx<\/span><\/div>\r\n                <div class=\"pgy-wq__row\"><span>Ghi ch\u00fa<\/span><span class=\"pgy-wq__row-value\">xxxxxx<\/span><\/div>\r\n              <\/div>\r\n            <\/section>\r\n          <\/div>\r\n\r\n          <footer class=\"pgy-wq__result-foot\">\r\n            <div class=\"pgy-wq__source\">D\u1eef li\u1ec7u \u0111\u01b0\u1ee3c cung c\u1ea5p t\u1eeb h\u1ec7 th\u1ed1ng b\u1ea3o h\u00e0nh \u0111i\u1ec7n t\u1eed ch\u00ednh th\u1ee9c.<\/div>\r\n            <div>Th\u1eddi gian tra c\u1ee9u\uff1a<span data-time>--<\/span><\/div>\r\n          <\/footer>\r\n        <\/div>\r\n      <\/article>\r\n    <\/div>\r\n\r\n  <\/div>\r\n<\/section>\r\n\r\n<script>\r\n(function(){\r\n  \"use strict\";\r\n\r\n  \/* ============================================================\r\n   * C\u1ea4U H\u00ccNH\r\n   * API_BASE: \u0111\u1ecba ch\u1ec9 backend (\u0111\u1ed5i n\u1ebfu nginx map path kh\u00e1c)\r\n   * DEMO_MODE: t\u1ef1 b\u1eadt khi m\u1edf file c\u1ee5c b\u1ed9 (file:\/\/ \/ localhost) \u0111\u1ec3\r\n   * xem tr\u01b0\u1edbc giao di\u1ec7n \u2014 kh\u00f4ng g\u1eedi SMS th\u1eadt, d\u00f9ng m\u00e3 123456.\r\n   * ============================================================ *\/\r\n  var API_BASE = \"https:\/\/vn.autozooo.com\/warranty-platform\";\r\n  var LNG = \"vi\";\r\n  var RESEND_SECONDS = 60;\r\n  var PAGE_SIZE = 50;\r\n\r\n  function isLocalPreview(){\r\n    return location.protocol === \"file:\"\r\n      || location.hostname === \"localhost\"\r\n      || location.hostname === \"127.0.0.1\";\r\n  }\r\n  var DEMO_MODE = isLocalPreview();\r\n\r\n  \/* ============================================================\r\n   * Ki\u1ec3u d\u00e1ng t\u1ed1i thi\u1ec3u cho b\u0103ng chuy\u1ec1n k\u1ebft qu\u1ea3 (t\u1ef1 \u0111\u1ed9ng ti\u00eam v\u00e0o\r\n   * <head>). Ch\u1ec9 ch\u1ee9a ph\u1ea7n \u0111i\u1ec1u khi\u1ec3n b\u0103ng chuy\u1ec1n + quy t\u1eafc hi\u1ec7n\/\u1ea9n\r\n   * v\u00f9ng k\u1ebft qu\u1ea3; m\u00e0u s\u1eafc\/ki\u1ec3u th\u1ebb v\u1eabn do CSS c\u1ee7a website quy\u1ebft \u0111\u1ecbnh.\r\n   * ============================================================ *\/\r\n  (function injectCarouselStyle(){\r\n    if(document.getElementById(\"pgy-wq-carousel-style\")) return;\r\n    var css =\r\n      \".pgy-wq__result-content{display:none}\"+\r\n      \".pgy-wq.is-result-visible .pgy-wq__result-content{display:block}\"+\r\n      \".pgy-wq.is-result-visible .pgy-wq__empty{display:none}\"+\r\n      \".pgy-wq:not(.is-result-visible) .pgy-wq__empty{display:block}\"+\r\n      \".pgy-wq__result-holder{position:relative}\"+\r\n      \".pgy-wq__carousel{position:relative}\"+\r\n      \".pgy-wq__carousel-viewport{overflow:hidden}\"+\r\n      \".pgy-wq__carousel-track{display:flex;transition:transform .35s ease}\"+\r\n      \".pgy-wq__carousel-slide{flex:0 0 100%;min-width:100%;box-sizing:border-box}\"+\r\n      \".pgy-wq__carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:34px;height:34px;border-radius:50%;border:1px solid rgba(127,127,127,.4);background:rgba(127,127,127,.2);color:inherit;cursor:pointer;font-size:20px;line-height:1;display:flex;align-items:center;justify-content:center;padding:0}\"+\r\n      \".pgy-wq__carousel-arrow[data-prev]{left:-4px}\"+\r\n      \".pgy-wq__carousel-arrow[data-next]{right:-4px}\"+\r\n      \".pgy-wq__carousel-arrow:disabled{opacity:.35;cursor:default}\"+\r\n      \".pgy-wq__carousel-bar{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:14px}\"+\r\n      \".pgy-wq__carousel-dots{display:flex;gap:6px}\"+\r\n      \".pgy-wq__carousel-dot{width:8px;height:8px;border-radius:99px;border:0;padding:0;cursor:pointer;background:rgba(127,127,127,.5)}\"+\r\n      \".pgy-wq__carousel-dot.is-active{width:20px;background:#1f5eff}\"+\r\n      \".pgy-wq__carousel-counter{font-size:12px;opacity:.75}\";\r\n    var style = document.createElement(\"style\");\r\n    style.id = \"pgy-wq-carousel-style\";\r\n    style.textContent = css;\r\n    document.head.appendChild(style);\r\n  })();\r\n\r\n  function init(root){\r\n    if(root.dataset.ready === \"1\") return;\r\n    root.dataset.ready = \"1\";\r\n\r\n    \/* ---------- elements (\u0111\u00fang c\u1ea5u tr\u00fac HTML g\u1ed1c, kh\u00f4ng thay \u0111\u1ed5i) ---------- *\/\r\n    var tabs = root.querySelectorAll(\"[data-mode]\");\r\n    var form = root.querySelector(\".pgy-wq__form\");\r\n    var mainLabel = root.querySelector(\"[data-main-label]\");\r\n    var mainInput = root.querySelector(\"[data-main-input]\");\r\n    var mainIcon = root.querySelector(\"[data-main-icon]\");\r\n    var codeField = root.querySelector(\"[data-code-field]\");\r\n    var codeInput = root.querySelector(\"[data-code-input]\");\r\n    var codeNote = root.querySelector(\"[data-code-note]\");\r\n    var codeButton = root.querySelector(\"[data-code-button]\");\r\n    var clearButton = root.querySelector(\"[data-clear]\");\r\n    var message = root.querySelector(\"[data-message]\");\r\n    var result = root.querySelector(\"[data-result]\");\r\n    var exportButton = root.querySelector(\"[data-export]\");\r\n    var timeText = root.querySelector(\"[data-time]\");\r\n    var emptyTitle = root.querySelector(\".pgy-wq__empty-title\");\r\n    var emptyText = root.querySelector(\".pgy-wq__empty-text\");\r\n    var resultSub = root.querySelector(\".pgy-wq__result-title p\");\r\n\r\n    \/* ---------- v\u00f9ng k\u1ebft qu\u1ea3 ----------\r\n     * Kh\u1ed1i t\u0129nh .pgy-wq__result-body (ch\u1ee9a xxxxxx) \u0111\u01b0\u1ee3c d\u00f9ng l\u00e0m\r\n     * KHU\u00d4N M\u1eaaU: m\u1ed7i h\u1ed3 s\u01a1 tr\u1ea3 v\u1ec1 s\u1ebd nh\u00e2n b\u1ea3n kh\u1ed1i n\u00e0y r\u1ed3i \u0111i\u1ec1n d\u1eef\r\n     * li\u1ec7u. Kh\u1ed1i t\u0129nh \u0111\u01b0\u1ee3c thay b\u1eb1ng b\u0103ng chuy\u1ec1n (t\u1ea1o \u0111\u1ed9ng khi c\u00f3\r\n     * k\u1ebft qu\u1ea3) \u0111\u1eb7t trong .pgy-wq__result-holder.\r\n     * ---------- *\/\r\n    var contentEl = result.querySelector(\".pgy-wq__result-content\");\r\n    var bodyTemplate = contentEl.querySelector(\".pgy-wq__result-body\");\r\n    var resultFoot = contentEl.querySelector(\".pgy-wq__result-foot\");\r\n    var holder = document.createElement(\"div\");\r\n    holder.className = \"pgy-wq__result-holder\";\r\n    contentEl.insertBefore(holder, resultFoot);\r\n    bodyTemplate.parentNode.removeChild(bodyTemplate);\r\n\r\n    var mode = \"phone\";\r\n    var timer = null;\r\n    var records = [];\r\n    var index = 0;\r\n    var carousel = null, track = null, prevButton = null, nextButton = null, dotsWrap = null, counter = null;\r\n    var touchStartX = 0;\r\n    var touchStartY = 0;\r\n\r\n    \/* ---------- utils ---------- *\/\r\n    function showMessage(text,type){\r\n      message.textContent = text || \"\";\r\n      message.classList.toggle(\"is-show\",!!text);\r\n      message.classList.toggle(\"is-error\",type === \"error\");\r\n      message.classList.toggle(\"is-success\",type === \"success\");\r\n    }\r\n\r\n    function formatDateTime(value){\r\n      if(!value) return \"--\";\r\n      return String(value).replace(\"T\",\" \").replace(\/\\.\\d+$\/,\"\").slice(0,19);\r\n    }\r\n\r\n    \/* 5 + YEAR -> \"5 n\u0103m\"; 1 + HALF_YEAR -> \"6 th\u00e1ng\" ... *\/\r\n    function formatValidity(validity,unit){\r\n      if(validity == null) return \"--\";\r\n      var v = Number(validity);\r\n      switch(unit){\r\n        case \"YEAR\":      return v + \" n\u0103m\";\r\n        case \"HALF_YEAR\": return (v * 6) + \" th\u00e1ng\";\r\n        case \"SEASON\":    return (v * 3) + \" th\u00e1ng\";\r\n        case \"MONTH\":     return v + \" th\u00e1ng\";\r\n        case \"WEEK\":      return v + \" tu\u1ea7n\";\r\n        case \"DAY\":       return v + \" ng\u00e0y\";\r\n        default:          return String(v);\r\n      }\r\n    }\r\n\r\n    \/* ---------- API layer ---------- *\/\r\n    function api(path,body){\r\n      if(DEMO_MODE){ return mockRequest(path,body); }\r\n      return fetch(API_BASE + path,{\r\n        method:\"POST\",\r\n        headers:{\"Content-Type\":\"application\/json\"},\r\n        body:JSON.stringify(body)\r\n      }).then(function(response){\r\n        if(!response.ok){ throw new Error(\"HTTP \" + response.status); }\r\n        return response.json();\r\n      });\r\n    }\r\n\r\n    \/* Demo: gi\u1ea3 l\u1eadp 3 b\u1ea3n ghi \u0111\u1ec3 xem tr\u01b0\u1edbc giao di\u1ec7n (kh\u00f4ng g\u1eedi SMS th\u1eadt) *\/\r\n    var DEMO_RECORDS = [\r\n      { productName:\"Film c\u00e1ch nhi\u1ec7t X9 Pro\", productCode:\"AZ-FILM-X9P\", validity:5, validityTimeUnit:\"YEAR\",\r\n        completeDate:\"2026-08-20\", activeDate:\"2026-08-20 14:59:44\",\r\n        username:\"Nguy\u1ec5n V\u0103n An\", mobile:\"0901234567\", carInfo:\"Toyota Camry 2.5Q\", autoNo:\"51K-456.78\",\r\n        vin:\"W0L000051T2123456\", constructionType:\"D\u00e1n film c\u00e1ch nhi\u1ec7t\", constructionPart:\"K\u00ednh tr\u01b0\u1edbc & hai b\u00ean\",\r\n        shopName:\"AutoZooo Q7\", remark:\"B\u1ea3o h\u00e0nh chu\u1ea9n nh\u00e0 s\u1ea3n xu\u1ea5t\" },\r\n      { productName:\"Film an to\u00e0n ch\u1ed1ng va \u0111\u1eadp\", productCode:\"AZ-FILM-SF2\", validity:3, validityTimeUnit:\"YEAR\",\r\n        completeDate:\"2026-08-20\", activeDate:\"2026-08-20 15:02:10\",\r\n        username:\"Nguy\u1ec5n V\u0103n An\", mobile:\"0901234567\", carInfo:\"Toyota Camry 2.5Q\", autoNo:\"51K-456.78\",\r\n        vin:\"W0L000051T2123456\", constructionType:\"D\u00e1n film an to\u00e0n\", constructionPart:\"C\u1eeda tr\u01b0\u1edbc tr\u00e1i\",\r\n        shopName:\"AutoZooo Q7\", remark:\"Ghi ch\u00fa n\u1ed9i b\u1ed9\" },\r\n      { productName:\"Ph\u1ee7 ceramic Nano\", productCode:\"AZ-CER-N12\", validity:2, validityTimeUnit:\"YEAR\",\r\n        completeDate:\"2026-08-21\", activeDate:\"2026-08-21 09:30:00\",\r\n        username:\"Nguy\u1ec5n V\u0103n An\", mobile:\"0901234567\", carInfo:\"Toyota Camry 2.5Q\", autoNo:\"51K-456.78\",\r\n        vin:\"W0L000051T2123456\", constructionType:\"Ph\u1ee7 ceramic\", constructionPart:\"To\u00e0n th\u00e2n xe\",\r\n        shopName:\"AutoZooo Th\u1ee7 \u0110\u1ee9c\", remark:\"\u0110\u00e3 ki\u1ec3m tra \u0111\u1ea1t chu\u1ea9n\" }\r\n    ];\r\n\r\n    function mockRequest(path,body){\r\n      return new Promise(function(resolve){\r\n        window.setTimeout(function(){\r\n          if(path === \"\/sms\/send-code\"){\r\n            resolve({code:200,msg:\"success\",data:\"SMS sent\"});\r\n          }else if(path === \"\/sms\/verify\"){\r\n            if(body && body.smsCode === \"123456\"){\r\n              resolve({code:200,msg:\"success\",data:true});\r\n            }else{\r\n              resolve({code:400,msg:\"SMS code is incorrect or expired\",data:null});\r\n            }\r\n          }else if(path === \"\/inquiry\/query\/page\"){\r\n            resolve({code:200,msg:\"success\",data:{list:DEMO_RECORDS.slice(),total:DEMO_RECORDS.length,pageNo:1,pageSize:PAGE_SIZE}});\r\n          }else{\r\n            resolve({code:404,msg:\"not found\",data:null});\r\n          }\r\n        },600);\r\n      });\r\n    }\r\n\r\n    \/* Chuy\u1ec3n msg ti\u1ebfng Anh c\u1ee7a backend sang ti\u1ebfng Vi\u1ec7t cho ng\u01b0\u1eddi d\u00f9ng *\/\r\n    function translateError(msg){\r\n      var map = {\r\n        \"No warranty record found for this VIN\":\"Kh\u00f4ng t\u00ecm th\u1ea5y h\u1ed3 s\u01a1 b\u1ea3o h\u00e0nh cho s\u1ed1 VIN n\u00e0y.\",\r\n        \"phone number format error\":\"S\u1ed1 \u0111i\u1ec7n tho\u1ea1i kh\u00f4ng \u0111\u00fang \u0111\u1ecbnh d\u1ea1ng.\",\r\n        \"SMS code is incorrect or expired\":\"M\u00e3 x\u00e1c nh\u1eadn kh\u00f4ng \u0111\u00fang ho\u1eb7c \u0111\u00e3 h\u1ebft h\u1ea1n.\",\r\n        \"mobile or vin is required\":\"Vui l\u00f2ng nh\u1eadp s\u1ed1 \u0111i\u1ec7n tho\u1ea1i ho\u1eb7c s\u1ed1 VIN.\",\r\n        \"smsCode is required\":\"Vui l\u00f2ng nh\u1eadp m\u00e3 x\u00e1c nh\u1eadn.\",\r\n        \"param is null\":\"Tham s\u1ed1 truy v\u1ea5n kh\u00f4ng h\u1ee3p l\u1ec7.\",\r\n        \"Internal server error\":\"M\u00e1y ch\u1ee7 g\u1eb7p l\u1ed7i, vui l\u00f2ng th\u1eed l\u1ea1i sau.\",\r\n        \"System error\":\"M\u00e1y ch\u1ee7 g\u1eb7p l\u1ed7i, vui l\u00f2ng th\u1eed l\u1ea1i sau.\"\r\n      };\r\n      if(msg && map[msg]){ return map[msg]; }\r\n      return msg || \"C\u00f3 l\u1ed7i x\u1ea3y ra, vui l\u00f2ng th\u1eed l\u1ea1i.\";\r\n    }\r\n\r\n    \/* ---------- icons ---------- *\/\r\n    function setPhoneIcon(){\r\n      mainIcon.innerHTML =\r\n        '<rect x=\"7\" y=\"2.5\" width=\"10\" height=\"19\" rx=\"2\" stroke=\"currentColor\" stroke-width=\"1.8\"\/>' +\r\n        '<path d=\"M10 18.5h4\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\"\/>';\r\n    }\r\n\r\n    function setCarIcon(){\r\n      mainIcon.innerHTML =\r\n        '<path d=\"M5.2 10.2 7 6.5A2.5 2.5 0 0 1 9.25 5h5.5A2.5 2.5 0 0 1 17 6.5l1.8 3.7\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\"\/>' +\r\n        '<path d=\"M4 11.5h16a1 1 0 0 1 1 1V17a1.5 1.5 0 0 1-1.5 1.5h-15A1.5 1.5 0 0 1 3 17v-4.5a1 1 0 0 1 1-1Z\" stroke=\"currentColor\" stroke-width=\"1.8\"\/>' +\r\n        '<path d=\"M6.5 18.5V20M17.5 18.5V20M7 14.5h2M15 14.5h2\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\"\/>';\r\n    }\r\n\r\n    \/* ---------- mode switch ---------- *\/\r\n    function setMode(nextMode){\r\n      mode = nextMode;\r\n\r\n      tabs.forEach(function(tab){\r\n        tab.classList.toggle(\"is-active\",tab.dataset.mode === mode);\r\n      });\r\n\r\n      showMessage(\"\");\r\n      mainInput.value = \"\";\r\n      codeInput.value = \"\";\r\n      clearButton.classList.remove(\"is-show\");\r\n\r\n      if(mode === \"phone\"){\r\n        mainLabel.textContent = \"Nh\u1eadp s\u1ed1 \u0111i\u1ec7n tho\u1ea1i\";\r\n        mainInput.placeholder = \"Nh\u1eadp s\u1ed1 \u0111i\u1ec7n tho\u1ea1i\";\r\n        mainInput.setAttribute(\"inputmode\",\"tel\");\r\n        codeField.hidden = false;\r\n        codeNote.textContent = \"M\u00e3 x\u00e1c nh\u1eadn s\u1ebd \u0111\u01b0\u1ee3c g\u1eedi \u0111\u1ebfn s\u1ed1 \u0111i\u1ec7n tho\u1ea1i n\u00e0y.\";\r\n        setPhoneIcon();\r\n      }else{\r\n        mainLabel.textContent = \"Nh\u1eadp s\u1ed1 VIN\";\r\n        mainInput.placeholder = \"Vui l\u00f2ng nh\u1eadp s\u1ed1 VIN g\u1ed3m 17 k\u00fd t\u1ef1\";\r\n        mainInput.setAttribute(\"inputmode\",\"text\");\r\n        codeField.hidden = false;\r\n        codeNote.textContent = \"M\u00e3 x\u00e1c nh\u1eadn s\u1ebd \u0111\u01b0\u1ee3c g\u1eedi \u0111\u1ebfn s\u1ed1 \u0111i\u1ec7n tho\u1ea1i \u0111\u00e3 li\u00ean k\u1ebft v\u1edbi s\u1ed1 VIN n\u00e0y.\";\r\n        setCarIcon();\r\n      }\r\n    }\r\n\r\n    \/* ---------- time ---------- *\/\r\n    function formatTime(date){\r\n      function pad(n){return String(n).padStart(2,\"0\")}\r\n      return date.getFullYear()+\"-\"+pad(date.getMonth()+1)+\"-\"+pad(date.getDate())+\" \"+pad(date.getHours())+\":\"+pad(date.getMinutes())+\":\"+pad(date.getSeconds());\r\n    }\r\n\r\n    \/* ---------- input events ---------- *\/\r\n    mainInput.addEventListener(\"input\",function(){\r\n      clearButton.classList.toggle(\"is-show\",!!mainInput.value);\r\n    });\r\n\r\n    tabs.forEach(function(tab){\r\n      tab.addEventListener(\"click\",function(){\r\n        setMode(tab.dataset.mode);\r\n      });\r\n    });\r\n\r\n    clearButton.addEventListener(\"click\",function(){\r\n      mainInput.value = \"\";\r\n      clearButton.classList.remove(\"is-show\");\r\n      mainInput.focus();\r\n      showMessage(\"\");\r\n    });\r\n\r\n    \/* ---------- validation ---------- *\/\r\n    function getQueryValue(){\r\n      return mainInput.value.trim().replace(\/\\s+\/g,\"\");\r\n    }\r\n\r\n    function validateMainInput(){\r\n      var value = getQueryValue();\r\n      if(!value){\r\n        showMessage(\r\n          mode === \"phone\"\r\n            ? \"Vui l\u00f2ng nh\u1eadp s\u1ed1 \u0111i\u1ec7n tho\u1ea1i.\"\r\n            : \"Vui l\u00f2ng nh\u1eadp s\u1ed1 VIN.\",\r\n          \"error\"\r\n        );\r\n        mainInput.focus();\r\n        return null;\r\n      }\r\n      if(mode === \"phone\"){\r\n        var digits = value.replace(\/[^\\d]\/g,\"\");\r\n        if(digits.length < 9 || digits.length > 12){\r\n          showMessage(\"S\u1ed1 \u0111i\u1ec7n tho\u1ea1i kh\u00f4ng \u0111\u00fang \u0111\u1ecbnh d\u1ea1ng.\",\"error\");\r\n          mainInput.focus();\r\n          return null;\r\n        }\r\n        return digits;\r\n      }\r\n      if(value.length !== 17){\r\n        showMessage(\"S\u1ed1 VIN ph\u1ea3i g\u1ed3m 17 k\u00fd t\u1ef1.\",\"error\");\r\n        mainInput.focus();\r\n        return null;\r\n      }\r\n      return value.toUpperCase();\r\n    }\r\n\r\n    function buildQueryPayload(){\r\n      var payload = {lng:LNG};\r\n      if(mode === \"phone\"){ payload.mobile = getQueryValue().replace(\/[^\\d]\/g,\"\"); }\r\n      else{ payload.vin = getQueryValue().toUpperCase(); }\r\n      return payload;\r\n    }\r\n\r\n    \/* ---------- send code ---------- *\/\r\n    function startCountdown(){\r\n      var seconds = RESEND_SECONDS;\r\n      codeButton.disabled = true;\r\n      codeButton.textContent = \"G\u1eedi l\u1ea1i m\u00e3(\"+seconds+\"s)\";\r\n\r\n      timer = window.setInterval(function(){\r\n        seconds--;\r\n        if(seconds > 0){\r\n          codeButton.textContent = \"G\u1eedi l\u1ea1i m\u00e3(\"+seconds+\"s)\";\r\n        }else{\r\n          window.clearInterval(timer);\r\n          timer = null;\r\n          codeButton.disabled = false;\r\n          codeButton.textContent = \"L\u1ea5y m\u00e3 x\u00e1c th\u1ef1c\";\r\n        }\r\n      },1000);\r\n    }\r\n\r\n    codeButton.addEventListener(\"click\",function(){\r\n      if(timer) return;\r\n\r\n      var value = validateMainInput();\r\n      if(value === null) return;\r\n\r\n      var payload = buildQueryPayload();\r\n      codeButton.disabled = true;\r\n      codeButton.textContent = \"\u0110ang g\u1eedi...\";\r\n\r\n      api(\"\/sms\/send-code\",payload).then(function(res){\r\n        if(res && res.code === 200){\r\n          showMessage(\r\n            \"M\u00e3 x\u00e1c nh\u1eadn \u0111\u00e3 \u0111\u01b0\u1ee3c g\u1eedi. \" + (DEMO_MODE ? \"(Demo: d\u00f9ng m\u00e3 123456)\" : \"Vui l\u00f2ng ki\u1ec3m tra tin nh\u1eafn.\"),\r\n            \"success\"\r\n          );\r\n          startCountdown();\r\n        }else{\r\n          codeButton.disabled = false;\r\n          codeButton.textContent = \"L\u1ea5y m\u00e3 x\u00e1c th\u1ef1c\";\r\n          showMessage(translateError(res && res.msg),\"error\");\r\n        }\r\n      }).catch(function(){\r\n        codeButton.disabled = false;\r\n        codeButton.textContent = \"L\u1ea5y m\u00e3 x\u00e1c th\u1ef1c\";\r\n        showMessage(\"Kh\u00f4ng th\u1ec3 k\u1ebft n\u1ed1i t\u1edbi m\u00e1y ch\u1ee7, vui l\u00f2ng th\u1eed l\u1ea1i.\",\"error\");\r\n      });\r\n    });\r\n\r\n    \/* ---------- render result (b\u0103ng chuy\u1ec1n) ---------- *\/\r\n\r\n    \/* Th\u1ee9 t\u1ef1 14 \u00f4 gi\u00e1 tr\u1ecb trong kh\u1ed1i t\u0129nh .pgy-wq__result-body\r\n     * (kh\u1edbp t\u1eebng d\u00f2ng v\u1edbi c\u1ea5u tr\u00fac HTML g\u1ed1c) *\/\r\n    var FIELD_ORDER = [\r\n      function(r){ return r.productName; },\r\n      function(r){ return formatValidity(r.validity, r.validityTimeUnit); },\r\n      function(r){ return r.completeDate; },\r\n      function(r){ return formatDateTime(r.activeDate); },\r\n      function(r){ return r.productCode; },\r\n      function(r){ return r.username; },\r\n      function(r){ return r.mobile; },\r\n      function(r){ return r.carInfo; },\r\n      function(r){ return r.autoNo; },\r\n      function(r){ return r.vin; },\r\n      function(r){ return r.constructionType; },\r\n      function(r){ return r.constructionPart; },\r\n      function(r){ return r.shopName; },\r\n      function(r){ return r.remark; }\r\n    ];\r\n\r\n    function fillBody(body,record){\r\n      var values = body.querySelectorAll(\".pgy-wq__row-value\");\r\n      FIELD_ORDER.forEach(function(fn,i){\r\n        var v = fn(record);\r\n        if(values[i]){ values[i].textContent = (v == null || v === \"\") ? \"--\" : v; }\r\n      });\r\n    }\r\n\r\n    function makeSlide(record){\r\n      var body = bodyTemplate.cloneNode(true);\r\n      fillBody(body,record);\r\n      var slide = document.createElement(\"div\");\r\n      slide.className = \"pgy-wq__carousel-slide\";\r\n      slide.appendChild(body);\r\n      return slide;\r\n    }\r\n\r\n    function buildCarousel(){\r\n      carousel = document.createElement(\"div\");\r\n      carousel.className = \"pgy-wq__carousel\";\r\n\r\n      var viewport = document.createElement(\"div\");\r\n      viewport.className = \"pgy-wq__carousel-viewport\";\r\n      track = document.createElement(\"div\");\r\n      track.className = \"pgy-wq__carousel-track\";\r\n      viewport.appendChild(track);\r\n      carousel.appendChild(viewport);\r\n\r\n      prevButton = document.createElement(\"button\");\r\n      prevButton.type = \"button\";\r\n      prevButton.className = \"pgy-wq__carousel-arrow\";\r\n      prevButton.setAttribute(\"data-prev\",\"\");\r\n      prevButton.setAttribute(\"aria-label\",\"H\u1ed3 s\u01a1 tr\u01b0\u1edbc\");\r\n      prevButton.textContent = \"\u2039\";\r\n\r\n      nextButton = document.createElement(\"button\");\r\n      nextButton.type = \"button\";\r\n      nextButton.className = \"pgy-wq__carousel-arrow\";\r\n      nextButton.setAttribute(\"data-next\",\"\");\r\n      nextButton.setAttribute(\"aria-label\",\"H\u1ed3 s\u01a1 ti\u1ebfp theo\");\r\n      nextButton.textContent = \"\u203a\";\r\n\r\n      carousel.appendChild(prevButton);\r\n      carousel.appendChild(nextButton);\r\n\r\n      var bar = document.createElement(\"div\");\r\n      bar.className = \"pgy-wq__carousel-bar\";\r\n      dotsWrap = document.createElement(\"div\");\r\n      dotsWrap.className = \"pgy-wq__carousel-dots\";\r\n      counter = document.createElement(\"span\");\r\n      counter.className = \"pgy-wq__carousel-counter\";\r\n      bar.appendChild(dotsWrap);\r\n      bar.appendChild(counter);\r\n      carousel.appendChild(bar);\r\n\r\n      holder.appendChild(carousel);\r\n\r\n      prevButton.addEventListener(\"click\",function(){ goTo(index - 1); });\r\n      nextButton.addEventListener(\"click\",function(){ goTo(index + 1); });\r\n    }\r\n\r\n    function renderRecords(list){\r\n      records = list || [];\r\n      index = 0;\r\n\r\n      if(!carousel){ buildCarousel(); }\r\n\r\n      track.innerHTML = \"\";\r\n      records.forEach(function(record){\r\n        track.appendChild(makeSlide(record));\r\n      });\r\n\r\n      dotsWrap.innerHTML = \"\";\r\n      if(records.length > 1){\r\n        records.forEach(function(_,i){\r\n          var dot = document.createElement(\"button\");\r\n          dot.type = \"button\";\r\n          dot.className = \"pgy-wq__carousel-dot\";\r\n          dot.setAttribute(\"aria-label\",\"H\u1ed3 s\u01a1 \"+(i+1));\r\n          dot.addEventListener(\"click\",function(){ goTo(i); });\r\n          dotsWrap.appendChild(dot);\r\n        });\r\n      }\r\n\r\n      resultSub.textContent = records.length > 1\r\n        ? \"X\u00e1c th\u1ef1c th\u00e0nh c\u00f4ng \u2013 t\u00ecm th\u1ea5y \"+records.length+\" h\u1ed3 s\u01a1 b\u1ea3o h\u00e0nh. Tr\u01b0\u1ee3t sang tr\u00e1i\/ph\u1ea3i \u0111\u1ec3 xem t\u1eebng h\u1ed3 s\u01a1.\"\r\n        : \"X\u00e1c th\u1ef1c th\u00e0nh c\u00f4ng, d\u01b0\u1edbi \u0111\u00e2y l\u00e0 th\u00f4ng tin chi ti\u1ebft v\u1ec1 b\u1ea3o h\u00e0nh \u0111i\u1ec7n t\u1eed c\u1ee7a b\u1ea1n.\";\r\n\r\n      goTo(0);\r\n    }\r\n\r\n    \/* ---------- carousel ---------- *\/\r\n    function goTo(i){\r\n      if(!records.length) return;\r\n      index = Math.max(0,Math.min(records.length - 1,i));\r\n      track.style.transform = \"translateX(-\"+(index*100)+\"%)\";\r\n\r\n      counter.textContent = (index+1)+\"\/\"+records.length;\r\n      prevButton.disabled = index === 0;\r\n      nextButton.disabled = index === records.length - 1;\r\n\r\n      var dots = dotsWrap.children;\r\n      for(var d = 0; d < dots.length; d++){\r\n        dots[d].classList.toggle(\"is-active\",d === index);\r\n      }\r\n    }\r\n\r\n    \/* vu\u1ed1t tr\u00e1i\/ph\u1ea3i tr\u00ean mobile *\/\r\n    holder.addEventListener(\"touchstart\",function(e){\r\n      touchStartX = e.touches[0].clientX;\r\n      touchStartY = e.touches[0].clientY;\r\n    },{passive:true});\r\n\r\n    holder.addEventListener(\"touchend\",function(e){\r\n      var dx = e.changedTouches[0].clientX - touchStartX;\r\n      var dy = e.changedTouches[0].clientY - touchStartY;\r\n      if(Math.abs(dx) > 45 && Math.abs(dx) > Math.abs(dy)){\r\n        if(dx < 0){ goTo(index + 1); }else{ goTo(index - 1); }\r\n      }\r\n    },{passive:true});\r\n\r\n    \/* ph\u00edm m\u0169i t\u00ean khi k\u1ebft qu\u1ea3 \u0111ang hi\u1ec3n th\u1ecb *\/\r\n    document.addEventListener(\"keydown\",function(e){\r\n      if(!root.classList.contains(\"is-result-visible\")) return;\r\n      if(e.key === \"ArrowLeft\"){ goTo(index - 1); }\r\n      if(e.key === \"ArrowRight\"){ goTo(index + 1); }\r\n    });\r\n\r\n    \/* ---------- reset empty state ---------- *\/\r\n    function resetEmpty(){\r\n      root.classList.remove(\"is-result-visible\");\r\n      emptyTitle.textContent = \"Tra c\u1ee9u th\u00f4ng tin b\u1ea3o h\u00e0nh \u0111i\u1ec7n t\u1eed c\u1ee7a b\u1ea1n\";\r\n      emptyText.textContent = \"Vui l\u00f2ng ch\u1ecdn ph\u01b0\u01a1ng th\u1ee9c tra c\u1ee9u b\u1eb1ng s\u1ed1 \u0111i\u1ec7n tho\u1ea1i ho\u1eb7c s\u1ed1 VIN \u1edf b\u00ean tr\u00e1i, nh\u1eadp th\u00f4ng tin t\u01b0\u01a1ng \u1ee9ng v\u00e0 nh\u1ea5n n\u00fat tra c\u1ee9u.\";\r\n    }\r\n\r\n    \/* ---------- submit ---------- *\/\r\n    form.addEventListener(\"submit\",function(e){\r\n      e.preventDefault();\r\n\r\n      var value = validateMainInput();\r\n      if(value === null) return;\r\n\r\n      var smsCode = codeInput.value.trim();\r\n      if(!smsCode){\r\n        showMessage(\"Vui l\u00f2ng nh\u1eadp m\u00e3 x\u00e1c nh\u1eadn.\",\"error\");\r\n        codeInput.focus();\r\n        return;\r\n      }\r\n\r\n      showMessage(\"\");\r\n      result.classList.add(\"is-loading\");\r\n\r\n      var payload = buildQueryPayload();\r\n      payload.smsCode = smsCode;\r\n\r\n      api(\"\/sms\/verify\",payload)\r\n        .then(function(verifyRes){\r\n          if(!verifyRes || verifyRes.code !== 200){\r\n            throw {viMessage:translateError(verifyRes && verifyRes.msg)};\r\n          }\r\n          var queryPayload = buildQueryPayload();\r\n          queryPayload.pageNo = 1;\r\n          queryPayload.pageSize = PAGE_SIZE;\r\n          return api(\"\/inquiry\/query\/page\",queryPayload);\r\n        })\r\n        .then(function(queryRes){\r\n          result.classList.remove(\"is-loading\");\r\n\r\n          if(!queryRes || queryRes.code !== 200){\r\n            showMessage(translateError(queryRes && queryRes.msg),\"error\");\r\n            resetEmpty();\r\n            return;\r\n          }\r\n\r\n          var list = (queryRes.data && queryRes.data.list) || [];\r\n\r\n          if(!list.length){\r\n            resetEmpty();\r\n            emptyTitle.textContent = \"Kh\u00f4ng t\u00ecm th\u1ea5y th\u00f4ng tin b\u1ea3o h\u00e0nh\";\r\n            emptyText.textContent = \"Kh\u00f4ng t\u00ecm th\u1ea5y h\u1ed3 s\u01a1 b\u1ea3o h\u00e0nh n\u00e0o cho th\u00f4ng tin b\u1ea1n v\u1eeba nh\u1eadp. Vui l\u00f2ng ki\u1ec3m tra l\u1ea1i s\u1ed1 \u0111i\u1ec7n tho\u1ea1i \/ s\u1ed1 VIN, ho\u1eb7c li\u00ean h\u1ec7 c\u1eeda h\u00e0ng thi c\u00f4ng \u0111\u1ec3 \u0111\u01b0\u1ee3c h\u1ed7 tr\u1ee3.\";\r\n            showMessage(\"Kh\u00f4ng t\u00ecm th\u1ea5y h\u1ed3 s\u01a1 b\u1ea3o h\u00e0nh n\u00e0o.\",\"error\");\r\n            return;\r\n          }\r\n\r\n          showMessage(\"\");\r\n          renderRecords(list);\r\n          timeText.textContent = formatTime(new Date());\r\n          root.classList.add(\"is-result-visible\");\r\n\r\n          if(window.innerWidth <= 900){\r\n            result.scrollIntoView({behavior:\"smooth\",block:\"start\"});\r\n          }\r\n        })\r\n        .catch(function(err){\r\n          result.classList.remove(\"is-loading\");\r\n          if(err && err.viMessage){\r\n            showMessage(err.viMessage,\"error\");\r\n          }else{\r\n            showMessage(\"Kh\u00f4ng th\u1ec3 k\u1ebft n\u1ed1i t\u1edbi m\u00e1y ch\u1ee7, vui l\u00f2ng th\u1eed l\u1ea1i.\",\"error\");\r\n          }\r\n        });\r\n    });\r\n\r\n    \/* ---------- export \/ print ---------- *\/\r\n    function printResultContainer(){\r\n      \/*\r\n       * In ch\u1ee9ng nh\u1eadn qua iframe \u1ea9n: ch\u1ec9 ch\u1ee9a k\u1ebft qu\u1ea3 tra c\u1ee9u,\r\n       * kh\u00f4ng k\u00e8m header\/footer website hay form b\u00ean tr\u00e1i.\r\n       * N\u1ebfu c\u00f3 nhi\u1ec1u h\u1ed3 s\u01a1, m\u1ed7i h\u1ed3 s\u01a1 in tr\u00ean m\u1ed9t kh\u1ed1i ri\u00eang.\r\n       *\/\r\n      var styleEls = [];\r\n      var widgetStyle = document.getElementById(\"pgy-wq-style\");\r\n      var carouselStyle = document.getElementById(\"pgy-wq-carousel-style\");\r\n      if(widgetStyle){ styleEls.push(widgetStyle.textContent); }\r\n      if(carouselStyle){ styleEls.push(carouselStyle.textContent); }\r\n      var styleText = styleEls.join(\"\\n\");\r\n\r\n      var resultClone = result.cloneNode(true);\r\n\r\n      \/* b\u1ecf n\u00fat xu\u1ea5t, v\u00f9ng tr\u1ed1ng, \u0111i\u1ec1u khi\u1ec3n b\u0103ng chuy\u1ec1n khi in *\/\r\n      var exports = resultClone.querySelectorAll(\"[data-export]\");\r\n      for(var i = 0; i < exports.length; i++){ exports[i].remove(); }\r\n      var empty = resultClone.querySelector(\".pgy-wq__empty\");\r\n      if(empty){ empty.remove(); }\r\n      var arrows = resultClone.querySelectorAll(\".pgy-wq__carousel-arrow\");\r\n      for(var a = 0; a < arrows.length; a++){ arrows[a].remove(); }\r\n      var bar = resultClone.querySelector(\".pgy-wq__carousel-bar\");\r\n      if(bar){ bar.remove(); }\r\n\r\n      resultClone.classList.remove(\"is-loading\");\r\n\r\n      var iframe = document.createElement(\"iframe\");\r\n      iframe.setAttribute(\"title\",\"Xu\u1ea5t ch\u1ee9ng nh\u1eadn b\u1ea3o h\u00e0nh \u0111i\u1ec7n t\u1eed\");\r\n      iframe.style.position = \"fixed\";\r\n      iframe.style.right = \"0\";\r\n      iframe.style.bottom = \"0\";\r\n      iframe.style.width = \"0\";\r\n      iframe.style.height = \"0\";\r\n      iframe.style.border = \"0\";\r\n      iframe.style.visibility = \"hidden\";\r\n\r\n      document.body.appendChild(iframe);\r\n\r\n      var printDocument = iframe.contentDocument || iframe.contentWindow.document;\r\n\r\n      \/* Ki\u1ec3u in: d\u00e0n th\u1eb3ng b\u0103ng chuy\u1ec1n \u0111\u1ec3 m\u1ecdi h\u1ed3 s\u01a1 x\u1ebfp d\u1ecdc + ki\u1ec3u\r\n       * t\u1ed1i thi\u1ec3u cho th\u1ebb th\u00f4ng tin (khi website kh\u00f4ng c\u00f3 CSS ri\u00eang) *\/\r\n      var printExtra =\r\n        '@page{size:A4 portrait;margin:12mm}' +\r\n        'html,body{margin:0!important;padding:0!important;background:#fff!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}' +\r\n        '.pgy-wq{width:100%!important;min-height:auto!important;overflow:visible!important;background:#fff!important;padding:0!important;box-shadow:none!important}' +\r\n        '.pgy-wq__result-area{display:block!important;padding:0!important}' +\r\n        '.pgy-wq__result{width:100%!important;min-height:auto!important;margin:0!important;border:1px solid #dbe3f0!important;border-radius:0!important;box-shadow:none!important;overflow:visible!important}' +\r\n        '.pgy-wq__result-content{display:block!important}' +\r\n        '.pgy-wq__carousel{display:block!important}' +\r\n        '.pgy-wq__carousel-viewport{overflow:visible!important}' +\r\n        '.pgy-wq__carousel-track{display:block!important;transform:none!important}' +\r\n        '.pgy-wq__carousel-slide{width:auto!important;min-width:0!important;margin-bottom:18px!important;break-inside:avoid;page-break-inside:avoid}' +\r\n        '.pgy-wq__result-head{display:flex!important;justify-content:space-between!important;align-items:center!important;padding:14px 18px!important;border-bottom:1px solid #e5eaf2!important;break-inside:avoid;page-break-inside:avoid}' +\r\n        '.pgy-wq__result-body{padding:14px 18px!important}' +\r\n        '.pgy-wq__result-foot{padding:0 18px 14px!important;font-size:12px!important;color:#666!important}' +\r\n        '.pgy-wq__info-card{border:1px solid #e2e8f0!important;border-radius:10px!important;padding:12px 16px!important;margin-bottom:12px!important;break-inside:avoid;page-break-inside:avoid}' +\r\n        '.pgy-wq__info-title{font-weight:700!important;margin-bottom:8px!important}' +\r\n        '.pgy-wq__row{display:flex!important;justify-content:space-between!important;gap:16px!important;padding:6px 0!important;border-bottom:1px dashed #e5eaf2!important;font-size:13.5px!important}' +\r\n        '.pgy-wq__row:last-child{border-bottom:0!important}' +\r\n        '.pgy-wq__row-value{text-align:right!important}' +\r\n        '.pgy-wq__double{display:flex!important;gap:24px!important}' +\r\n        '.pgy-wq__double>.pgy-wq__rows{flex:1!important}' +\r\n        '.pgy-wq__export{display:none!important}';\r\n\r\n      printDocument.open();\r\n      printDocument.write(\r\n        '<!doctype html>' +\r\n        '<html lang=\"vi\">' +\r\n        '<head>' +\r\n        '<meta charset=\"utf-8\">' +\r\n        '<meta name=\"viewport\" content=\"width=device-width,initial-scale=1\">' +\r\n        '<title>Xu\u1ea5t ch\u1ee9ng nh\u1eadn b\u1ea3o h\u00e0nh \u0111i\u1ec7n t\u1eed<\/title>' +\r\n        '<style>' +\r\n        styleText +\r\n        '\\n' +\r\n        printExtra +\r\n        '<\/style>' +\r\n        '<\/head>' +\r\n        '<body>' +\r\n        '<section class=\"pgy-wq is-result-visible\">' +\r\n        '<div class=\"pgy-wq__result-area\">' +\r\n        resultClone.outerHTML +\r\n        '<\/div>' +\r\n        '<\/section>' +\r\n        '<\/body>' +\r\n        '<\/html>'\r\n      );\r\n      printDocument.close();\r\n\r\n      function startPrint(){\r\n        try{\r\n          iframe.contentWindow.focus();\r\n          iframe.contentWindow.print();\r\n        }finally{\r\n          window.setTimeout(function(){ iframe.remove(); },1000);\r\n        }\r\n      }\r\n\r\n      \/* cho iframe k\u1ecbp t\u00ednh to\u00e1n ki\u1ec3u d\u00e1ng *\/\r\n      window.setTimeout(startPrint,300);\r\n    }\r\n\r\n    exportButton.addEventListener(\"click\",function(){\r\n      if(!root.classList.contains(\"is-result-visible\")) return;\r\n      printResultContainer();\r\n    });\r\n\r\n    if(DEMO_MODE && window.console && console.info){\r\n      console.info(\"[Warranty Query] Ch\u1ebf \u0111\u1ed9 demo: API th\u1eadt = \" + API_BASE);\r\n    }\r\n\r\n    setMode(\"phone\");\r\n  }\r\n\r\n  function boot(){\r\n    document.querySelectorAll(\".pgy-wq\").forEach(init);\r\n  }\r\n\r\n  if(document.readyState === \"loading\"){\r\n    document.addEventListener(\"DOMContentLoaded\",boot);\r\n  }else{\r\n    boot();\r\n  }\r\n})();\r\n<\/script>\r\n\t\t\t\t<\/div>\n\t\t\n<\/div>\n\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>L\u01b0u \u00fd b\u1ea3o d\u01b0\u1ee1ng sau khi d\u00e1n phim PPF RODIM PPF \u2022 H\u01b0\u1edbng d\u1eabn b\u1ea3o d\u01b0\u1ee1ng ch\u00ednh th\u1ee9c C\u1ed1 \u0111\u1ecbnh ban \u0111\u1ea7u: 1 tu\u1ea7n sau khi d\u00e1n &gt; Chu k\u1ef3 quan tr\u1ecdng A 1 tu\u1ea7n \u0111\u1ea7u kh\u00f4ng r\u1eeda xe, kh\u00f4ng \u0111\u00e1nh s\u00e1p &gt; tr\u00e1nh \u1ea3nh h\u01b0\u1edfng hi\u1ec7u l\u1ef1c b\u1ea3o h\u00e0nh. 1 tu\u1ea7n \u0111\u1ea7u kh\u00f4ng ph\u01a1i [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"slim_seo":{"title":"B\u1ea3o h\u00e0nh - RodimPPF","description":"L\u01b0u \u00fd b\u1ea3o d\u01b0\u1ee1ng sau khi d\u00e1n phim PPF RODIM PPF \u2022 H\u01b0\u1edbng d\u1eabn b\u1ea3o d\u01b0\u1ee1ng ch\u00ednh th\u1ee9c C\u1ed1 \u0111\u1ecbnh ban \u0111\u1ea7u: 1 tu\u1ea7n sau khi d\u00e1n &gt; Chu k\u1ef3 quan tr\u1ecdng A 1 tu\u1ea7n \u0111\u1ea7u kh\u00f4ng r\u1eed"},"footnotes":""},"class_list":["post-344","page","type-page","status-publish","hentry"],"blocksy_meta":{"styles_descriptor":{"styles":{"desktop":"","tablet":"","mobile":""},"google_fonts":[],"version":7}},"_links":{"self":[{"href":"https:\/\/rodimppf.com\/en\/wp-json\/wp\/v2\/pages\/344","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/rodimppf.com\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/rodimppf.com\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/rodimppf.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/rodimppf.com\/en\/wp-json\/wp\/v2\/comments?post=344"}],"version-history":[{"count":242,"href":"https:\/\/rodimppf.com\/en\/wp-json\/wp\/v2\/pages\/344\/revisions"}],"predecessor-version":[{"id":2271,"href":"https:\/\/rodimppf.com\/en\/wp-json\/wp\/v2\/pages\/344\/revisions\/2271"}],"wp:attachment":[{"href":"https:\/\/rodimppf.com\/en\/wp-json\/wp\/v2\/media?parent=344"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}