{"id":544,"date":"2026-06-20T05:34:47","date_gmt":"2026-06-20T05:34:47","guid":{"rendered":"https:\/\/toolibee.com\/?page_id=544"},"modified":"2026-06-20T05:37:33","modified_gmt":"2026-06-20T05:37:33","slug":"time-zone-converter","status":"publish","type":"page","link":"https:\/\/toolibee.com\/?page_id=544","title":{"rendered":"Time Zone Converter"},"content":{"rendered":"\n    <div id=\"toolibee-timezone-86410\" class=\"toolibee-timezone-tool\">\n        <div class=\"tb-card\">\n            <div class=\"tb-header\">\n                <div class=\"tb-bee\">\ud83d\udc1d<\/div>\n                <div>\n                    <h2>Toolibee Time Zone Converter<\/h2>\n                    <p>Convert meeting times across cities and time zones.<\/p>\n                <\/div>\n            <\/div>\n\n            <div class=\"tb-body\">\n                <div class=\"tb-grid\">\n                    <div class=\"tb-panel\">\n                        <label>Meeting date<\/label>\n                        <input type=\"date\" class=\"tb-date\" \/>\n\n                        <label>Meeting time<\/label>\n                        <input type=\"time\" class=\"tb-time\" \/>\n\n                        <label>From time zone<\/label>\n                        <select class=\"tb-from\"><\/select>\n\n                        <label>Convert to time zones<\/label>\n                        <div class=\"tb-zone-list\"><\/div>\n\n                        <div class=\"tb-actions\">\n                            <button type=\"button\" class=\"tb-add-zone\">Add time zone<\/button>\n                            <button type=\"button\" class=\"tb-convert\">Convert time<\/button>\n                            <button type=\"button\" class=\"tb-clear\">Clear<\/button>\n                        <\/div>\n                    <\/div>\n\n                    <div class=\"tb-panel tb-result-panel\">\n                        <label>Converted times<\/label>\n                        <div class=\"tb-output\" aria-live=\"polite\">Choose a date, time, and time zones.<\/div>\n\n                        <div class=\"tb-actions\">\n                            <button type=\"button\" class=\"tb-copy\">Copy results<\/button>\n                        <\/div>\n\n                        <p class=\"tb-note\"><strong>Note:<\/strong> This uses the visitor\u2019s browser time zone data, including daylight saving time when supported.<\/p>\n                    <\/div>\n                <\/div>\n            <\/div>\n        <\/div>\n    <\/div>\n\n    <style>\n        #toolibee-timezone-86410{--tb-navy:#18324a;--tb-blue:#2f80ed;--tb-sky:#eaf6ff;--tb-gold:#f6b93b;--tb-ink:#1f2937;--tb-muted:#64748b;--tb-border:#dbe7f3;max-width:1000px;margin:24px auto;padding:0 14px;font-family:Inter,Arial,sans-serif;color:var(--tb-ink)}\n        #toolibee-timezone-86410 *{box-sizing:border-box}\n        #toolibee-timezone-86410 .tb-card{background:#fff;border:1px solid var(--tb-border);border-radius:22px;box-shadow:0 14px 35px rgba(24,50,74,.10);overflow:hidden}\n        #toolibee-timezone-86410 .tb-header{display:flex;gap:14px;align-items:center;background:linear-gradient(135deg,var(--tb-navy),#24577c);color:#fff;padding:22px 24px}\n        #toolibee-timezone-86410 .tb-bee{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--tb-gold);color:#1f2937;font-size:25px;box-shadow:inset 0 -4px 0 rgba(0,0,0,.08);flex:0 0 46px}\n        #toolibee-timezone-86410 h2{margin:0;font-size:25px;line-height:1.2;color:#fff}\n        #toolibee-timezone-86410 .tb-header p{margin:5px 0 0;color:#e8f5ff}\n        #toolibee-timezone-86410 .tb-body{padding:24px;background:linear-gradient(180deg,#fff,#fbfdff)}\n        #toolibee-timezone-86410 .tb-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}\n        #toolibee-timezone-86410 .tb-panel{background:#fff;border:1px solid var(--tb-border);border-radius:18px;padding:18px}\n        #toolibee-timezone-86410 label{display:block;font-weight:800;margin:0 0 7px;color:var(--tb-navy)}\n        #toolibee-timezone-86410 label:not(:first-child){margin-top:14px}\n        #toolibee-timezone-86410 input,#toolibee-timezone-86410 select{width:100%;box-sizing:border-box;border:1px solid var(--tb-border);border-radius:14px;padding:12px 13px;font-size:15px;background:#fff;color:var(--tb-ink)}\n        #toolibee-timezone-86410 .tb-zone-row{display:grid;grid-template-columns:1fr auto;gap:8px;margin-bottom:8px;align-items:center}\n        #toolibee-timezone-86410 .tb-remove-zone{padding:10px 13px;background:#fff;color:#b42318;border:1px solid #f3b4ae;box-shadow:none}\n        #toolibee-timezone-86410 .tb-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}\n        #toolibee-timezone-86410 button{border:0;border-radius:999px;padding:11px 18px;font-weight:800;cursor:pointer;background:var(--tb-blue);color:#fff;box-shadow:0 7px 18px rgba(47,128,237,.22)}\n        #toolibee-timezone-86410 .tb-clear,#toolibee-timezone-86410 .tb-copy,#toolibee-timezone-86410 .tb-add-zone{background:#fff;color:var(--tb-navy);border:1px solid var(--tb-border);box-shadow:none}\n        #toolibee-timezone-86410 .tb-output{background:var(--tb-sky);border:1px solid var(--tb-border);border-radius:16px;padding:16px;min-height:260px;white-space:pre-wrap;line-height:1.55}\n        #toolibee-timezone-86410 .tb-result-card{background:#fff;border:1px solid var(--tb-border);border-radius:14px;padding:12px;margin-bottom:10px}\n        #toolibee-timezone-86410 .tb-result-zone{font-weight:900;color:var(--tb-navy)}\n        #toolibee-timezone-86410 .tb-result-time{font-size:22px;font-weight:900;color:#1f2937;margin-top:4px}\n        #toolibee-timezone-86410 .tb-result-date{color:var(--tb-muted);font-size:13px;margin-top:3px}\n        #toolibee-timezone-86410 .tb-note{font-size:13px;color:var(--tb-muted);line-height:1.5;margin-top:12px}\n        #toolibee-timezone-86410 .tb-note strong{color:var(--tb-navy)}\n        @media(max-width:760px){#toolibee-timezone-86410 .tb-grid{grid-template-columns:1fr}#toolibee-timezone-86410 .tb-header{align-items:flex-start}}\n    <\/style>\n\n    <script>\n    (function(){\n        var root = document.getElementById('toolibee-timezone-86410');\n        if (!root) return;\n\n        var zones = [\n            ['America\/New_York','Eastern Time - New York'],\n            ['America\/Chicago','Central Time - Chicago'],\n            ['America\/Denver','Mountain Time - Denver'],\n            ['America\/Phoenix','Arizona Time - Phoenix'],\n            ['America\/Los_Angeles','Pacific Time - Los Angeles'],\n            ['America\/Anchorage','Alaska Time - Anchorage'],\n            ['Pacific\/Honolulu','Hawaii Time - Honolulu'],\n            ['America\/Toronto','Toronto'],\n            ['America\/Vancouver','Vancouver'],\n            ['America\/Mexico_City','Mexico City'],\n            ['America\/Sao_Paulo','S\u00e3o Paulo'],\n            ['Europe\/London','London'],\n            ['Europe\/Paris','Paris'],\n            ['Europe\/Berlin','Berlin'],\n            ['Europe\/Madrid','Madrid'],\n            ['Europe\/Rome','Rome'],\n            ['Europe\/Amsterdam','Amsterdam'],\n            ['Europe\/Dublin','Dublin'],\n            ['Africa\/Cairo','Cairo'],\n            ['Africa\/Johannesburg','Johannesburg'],\n            ['Asia\/Dubai','Dubai'],\n            ['Asia\/Kolkata','India - Kolkata'],\n            ['Asia\/Dhaka','Dhaka'],\n            ['Asia\/Bangkok','Bangkok'],\n            ['Asia\/Singapore','Singapore'],\n            ['Asia\/Hong_Kong','Hong Kong'],\n            ['Asia\/Shanghai','Shanghai'],\n            ['Asia\/Tokyo','Tokyo'],\n            ['Asia\/Seoul','Seoul'],\n            ['Australia\/Sydney','Sydney'],\n            ['Australia\/Melbourne','Melbourne'],\n            ['Pacific\/Auckland','Auckland'],\n            ['UTC','UTC']\n        ];\n\n        var qs = function(sel){ return root.querySelector(sel); };\n        var output = qs('.tb-output');\n        var zoneList = qs('.tb-zone-list');\n\n        function userZone(){\n            try { return Intl.DateTimeFormat().resolvedOptions().timeZone || 'America\/New_York'; }\n            catch(e){ return 'America\/New_York'; }\n        }\n\n        function optionHTML(selected){\n            return zones.map(function(z){\n                return '<option value=\"' + z[0] + '\"' + (z[0] === selected ? ' selected' : '') + '>' + z[1] + '<\/option>';\n            }).join('');\n        }\n\n        function addZone(selected){\n            var row = document.createElement('div');\n            row.className = 'tb-zone-row';\n            row.innerHTML = '<select class=\"tb-to\">' + optionHTML(selected || 'Europe\/London') + '<\/select><button type=\"button\" class=\"tb-remove-zone\">\u00d7<\/button>';\n            row.querySelector('.tb-remove-zone').addEventListener('click', function(){ row.remove(); });\n            zoneList.appendChild(row);\n        }\n\n        function labelFor(zone){\n            var found = zones.find(function(z){ return z[0] === zone; });\n            return found ? found[1] : zone;\n        }\n\n        function makeDateFromInput(date, time){\n            var parts = date.split('-').map(Number);\n            var t = time.split(':').map(Number);\n            return new Date(parts[0], parts[1] - 1, parts[2], t[0], t[1] || 0, 0);\n        }\n\n        function getOffsetMinutes(date, timeZone){\n            var dtf = new Intl.DateTimeFormat('en-US', {\n                timeZone: timeZone,\n                year:'numeric', month:'2-digit', day:'2-digit',\n                hour:'2-digit', minute:'2-digit', second:'2-digit',\n                hour12:false\n            });\n            var parts = dtf.formatToParts(date).reduce(function(acc, part){\n                acc[part.type] = part.value;\n                return acc;\n            }, {});\n            var asUTC = Date.UTC(+parts.year, +parts.month - 1, +parts.day, +parts.hour, +parts.minute, +parts.second);\n            return (asUTC - date.getTime()) \/ 60000;\n        }\n\n        function zonedTimeToDate(dateStr, timeStr, fromZone){\n            var localGuess = makeDateFromInput(dateStr, timeStr);\n            var utcGuess = new Date(Date.UTC(localGuess.getFullYear(), localGuess.getMonth(), localGuess.getDate(), localGuess.getHours(), localGuess.getMinutes()));\n            var offset = getOffsetMinutes(utcGuess, fromZone);\n            var target = new Date(utcGuess.getTime() - offset * 60000);\n            var offset2 = getOffsetMinutes(target, fromZone);\n            if (offset !== offset2) target = new Date(utcGuess.getTime() - offset2 * 60000);\n            return target;\n        }\n\n        function formatInZone(date, zone){\n            var time = new Intl.DateTimeFormat('en-US', {\n                timeZone: zone,\n                hour:'numeric',\n                minute:'2-digit',\n                hour12:true\n            }).format(date);\n\n            var day = new Intl.DateTimeFormat('en-US', {\n                timeZone: zone,\n                weekday:'short',\n                month:'short',\n                day:'numeric',\n                year:'numeric'\n            }).format(date);\n\n            var tz = new Intl.DateTimeFormat('en-US', {\n                timeZone: zone,\n                timeZoneName:'short'\n            }).formatToParts(date).find(function(p){ return p.type === 'timeZoneName'; });\n\n            return {time: time, day: day, abbr: tz ? tz.value : zone};\n        }\n\n        function convert(){\n            var date = qs('.tb-date').value;\n            var time = qs('.tb-time').value;\n            var from = qs('.tb-from').value;\n            var toZones = Array.prototype.slice.call(root.querySelectorAll('.tb-to')).map(function(s){ return s.value; });\n\n            if (!date || !time) {\n                output.textContent = 'Choose a date and time first.';\n                return;\n            }\n\n            if (!toZones.length) {\n                output.textContent = 'Add at least one destination time zone.';\n                return;\n            }\n\n            var instant = zonedTimeToDate(date, time, from);\n            var fromFmt = formatInZone(instant, from);\n            var html = '<div class=\"tb-result-card\"><div class=\"tb-result-zone\">From: ' + labelFor(from) + '<\/div><div class=\"tb-result-time\">' + fromFmt.time + ' ' + fromFmt.abbr + '<\/div><div class=\"tb-result-date\">' + fromFmt.day + '<\/div><\/div>';\n\n            toZones.forEach(function(zone){\n                var fmt = formatInZone(instant, zone);\n                html += '<div class=\"tb-result-card\"><div class=\"tb-result-zone\">' + labelFor(zone) + '<\/div><div class=\"tb-result-time\">' + fmt.time + ' ' + fmt.abbr + '<\/div><div class=\"tb-result-date\">' + fmt.day + '<\/div><\/div>';\n            });\n\n            output.innerHTML = html;\n        }\n\n        function setDefaults(){\n            var now = new Date();\n            qs('.tb-date').value = now.toISOString().slice(0,10);\n            qs('.tb-time').value = String(now.getHours()).padStart(2,'0') + ':' + String(now.getMinutes()).padStart(2,'0');\n            qs('.tb-from').innerHTML = optionHTML(userZone());\n            zoneList.innerHTML = '';\n            addZone('America\/Los_Angeles');\n            addZone('Europe\/London');\n            addZone('Asia\/Tokyo');\n            output.textContent = 'Choose a date, time, and time zones.';\n        }\n\n        qs('.tb-add-zone').addEventListener('click', function(){ addZone('UTC'); });\n        qs('.tb-convert').addEventListener('click', convert);\n        qs('.tb-clear').addEventListener('click', setDefaults);\n        qs('.tb-copy').addEventListener('click', function(){\n            var text = output.innerText || output.textContent || '';\n            if (navigator.clipboard && navigator.clipboard.writeText) navigator.clipboard.writeText(text);\n        });\n\n        setDefaults();\n    })();\n    <\/script>\n    \n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"page-no-title","meta":{"footnotes":""},"class_list":["post-544","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/toolibee.com\/index.php?rest_route=\/wp\/v2\/pages\/544","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/toolibee.com\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/toolibee.com\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/toolibee.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/toolibee.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=544"}],"version-history":[{"count":1,"href":"https:\/\/toolibee.com\/index.php?rest_route=\/wp\/v2\/pages\/544\/revisions"}],"predecessor-version":[{"id":545,"href":"https:\/\/toolibee.com\/index.php?rest_route=\/wp\/v2\/pages\/544\/revisions\/545"}],"wp:attachment":[{"href":"https:\/\/toolibee.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=544"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}