PageSourceSearch

https://desktime.com/product-updates

html desktime.com collected 2026-10-02 02:16:38 UTC 260,315 bytes, 3,898 lines download raw bytes

1<!DOCTYPE html>
2<html lang="en">
3    <head>
4                <meta charset="utf-8">
4<script type="text/javascript">(window.NREUM||(NREUM={})).init={ajax:{deny_list:["bam.nr-data.net"]}};(window.NREUM||(NREUM={})).loader_config={xpid:"VQAPVVJRDxAEU1NbBQgDVw==",licenseKey:"87a2541869",applicationID:"47292941",browserID:"47292965"};;/*! For license information please see nr-loader-full-1.323.0.min.js.LICENSE.txt */
5(()=>{var e={8122(e,t,r){"use strict";r.d(t,{a:()=>i});var n=r(944);function i(e,t){try{if(!e||"object"!=typeof e)return(0,n.R)(3);if(!t||"object"!=typeof t)return(0,n.R)(4);const r=Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t)),s=0===Object.keys(r).length?e:r;for(let a in s)if(void 0!==e[a])try{if(null===e[a]){r[a]=null;continue}Array.isArray(e[a])&&Array.isArray(t[a])?r[a]=Array.from(new Set([...e[a],...t[a]])):e[a]instanceof Map||e[a]instanceof Set||e[a]instanceof Date||e[a]instanceof RegExp?r[a]=e[a]:"object"==typeof e[a]&&null!==t[a]&&"object"==typeof t[a]?r[a]=i(e[a],t[a]):r[a]=e[a]}catch(e){r[a]||(0,n.R)(1,e)}return r}catch(e){(0,n.R)(2,e)}}},2555(e,t,r){"use strict";r.d(t,{f:()=>a});var n=r(384),i=r(8122);const s={beacon:n.NT.beacon,errorBeacon:n.NT.errorBeacon,licenseKey:void 0,applicationID:void 0,sa:void 0,queueTime:void 0,applicationTime:void 0,ttGuid:void 0,user:void 0,account:void 0,product:void 0,extra:void 0,jsAttributes:{},userAttributes:void 0,atts:void 0,transactionName:void 0,tNamePlain:void 0};function a(e){try{return!!e.licenseKey&&!!e.errorBeacon&&!!e.applicationID}catch(e){return!1}}r.d(t,["D",0,e=>(0,i.a)(e,s)])},7699(e,t,r){"use strict";var n=r(860);const i={[n.K7.logging]:!0,[n.K7.genericEvents]:!0,[n.K7.jserrors]:!0,[n.K7.ajax]:!0};r.d(t,["It",0,1e6,"KC",0,i,"qh",0,"SESSION_ERROR"])},9324(e,t,r){"use strict";r.d(t,["A",0,"@newrelic/rrweb","x",0,"1.323.0"])},981(e,t,r){"use strict";r.d(t,["R",0,{AJAX:"AjaxRequest",PA:"PageAction",UA:"UserAction",BP:"BrowserPerformance",WS:"WebSocket",SPV:"SecurityPolicyViolation",JSE:"JavaScriptError",LOG:"Log",PVE:"PageView",PVT:"PageViewTiming",SR:"SessionReplay",ST:"SessionTrace",BI:"BrowserInteraction"}])},9752(e,t,r){"use strict";const n="newrelic-iframe-",i=n+"timing-update",s=n+"api",a=n+"api-response",o=n+"vitals-update",c=n+"ajax";r.d(t,["$8",0,o,"Gi",0,a,"KU",0,c,"Pl",0,n,"cS",0,s,"cr",0,i])},6154(e,t,r){"use strict";var n=r(1863);const i="undefined"!=typeof window&&!!window.document,s="undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self.navigator instanceof WorkerNavigator||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis.navigator instanceof WorkerNavigator),a=i?window:"undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis),o=Boolean("hidden"===a?.document?.visibilityState),c=""+a?.location,d=/iPad|iPhone|iPod/.test(a.navigator?.userAgent),u=d&&"undefined"==typeof SharedWorker,l=(()=>{const e=a.navigator?.userAgent?.match(/Firefox[/\s](\d+\.\d+)/);return Array.isArray(e)&&e.length>=2?+e[1]:0})(),f=Date.now()-(0,n.t)();r.d(t,["OF",0,d,"RI",0,i,"WN",0,f,"bv",0,s,"gm",0,a,"lR",0,l,"m",0,c,"mw",0,o,"sb",0,u,"zk",0,()=>{const e=a?.performance?.getEntriesByType?.("navigation")?.[0];if(e&&e.responseStart>0&&e.responseStart<a.performance.now())return e}])},7295(e,t,r){"use strict";r.d(t,{Xv:()=>a,gX:()=>i,iW:()=>s});var n=[];function i(e){if(!e||s(e))return!1;if(0===n.length)return!0;if("*"===n[0].hostname)return!1;for(var t=0;t<n.length;t++){var r=n[t];if(r.hostname.test(e.hostname)&&r.pathname.test(e.pathname))return!1}return!0}function s(e){return void 0===e.hostname}function a(e){if(n=[],e&&e.length)for(var t=0;t<e.length;t++){let r=e[t];if(!r)continue;if("*"===r)return void(n=[{hostname:"*"}]);0===r.indexOf("http://")?r=r.substring(7):0===r.indexOf("https://")&&(r=r.substring(8));const i=r.indexOf("/");let s,a;i>0?(s=r.substring(0,i),a=r.substring(i)):(s=r,a="*");let[c]=s.split(":");n.push({hostname:o(c),pathname:o(a,!0)})}}function o(e,t=!1){const r=e.replace(/[.+?^${}()|[\]\\]/g,e=>"\\"+e).replace(/\*/g,".*?");return new RegExp((t?"^":"")+r+"$")}},3241(e,t,r){"use strict";r.d(t,{W:()=>i});var n=r(6154);function i(e={}){try{n.gm.dispatchEvent(new CustomEvent("newrelic",{detail:e}))}catch(e){}}},1687(e,t,r){"use strict";r.d(t,{Ak:()=>o,Ze:()=>d,x3:()=>c});var n=r(3241),i=r(3606),s=r(860),a=r(2646);function o(e,t){if(!e)return;const r={staged:!1,priority:s.P3[t]||0};
5e.runtime.drainRegistry.get(t)||e.runtime.drainRegistry.set(t,r)}function c(e,t){if(!e)return;const r=e.runtime.drainRegistry;r&&(r.get(t)&&r.delete(t),l(e,t,!1),r.size&&u(e))}function d(e,t="feature",r=!1){if(e){if(!e.runtime.drainRegistry.get(t)||r)return l(e,t);e.runtime.drainRegistry.get(t).staged=!0,u(e)}}function u(e){if(!e)return;const t=Array.from(e.runtime.drainRegistry);t.every(([e,t])=>t.staged)&&(t.sort((e,t)=>e[1].priority-t[1].priority),t.forEach(([t])=>{e.runtime.drainRegistry.delete(t),l(e,t)}))}function l(e,t,r=!0){if(!e)return;const s=e.ee,o=i.i.handlers;if(s&&!s.aborted&&s.backlog&&o){if((0,n.W)({type:"lifecycle",name:"drain",feature:t}),r){const e=s.backlog[t],r=o[t];if(r){for(let t=0;e&&t<e.length;++t)f(e[t],r);Object.entries(r).forEach(([e,t])=>{Object.values(t||{}).forEach(t=>{t[0]?.on&&t[0].context()instanceof a.y&&!t[0].listeners(e).includes(t[1])&&t[0].on(e,t[1])})})}}s.isolatedBacklog||delete o[t],s.backlog[t]=null,s.emit("drain-"+t,[])}}function f(e,t){var r=e[1];Object.values(t[r]||{}).forEach(t=>{var r=e[0];if(t[0]===r){var n=t[1],i=e[3],s=e[2];n.apply(i,s)}})}},7836(e,t,r){"use strict";var n=r(384),i=r(8990),s=r(2646),a=r(5607);const o="nr@context:".concat(a.W),c=function e(t,r){var n={},a={},u={},l=!1;try{l=16===r.length&&d.initializedAgents?.[r]?.runtime.isolatedBacklog}catch(e){}var f={on:p,addEventListener:p,removeEventListener:function(e,t){var r=n[e];if(!r)return;for(var i=0;i<r.length;i++)r[i]===t&&r.splice(i,1)},emit:function(e,r,n,i,s){!1!==s&&(s=!0);if(c.aborted&&!i)return;t&&s&&t.emit(e,r,n);var o=h(n);g(e).forEach(e=>{e.apply(o,r)});var d=v()[a[e]];d&&d.push([f,e,r,o]);return o},get:m,listeners:g,context:h,buffer:function(e,t){const r=v();if(t=t||"feature",f.aborted)return;Object.entries(e||{}).forEach(([e,n])=>{a[n]=t,t in r||(r[t]=[])})},abort:function(){f._aborted=!0,Object.keys(f.backlog).forEach(e=>{delete f.backlog[e]})},isBuffering:function(e){return!!v()[a[e]]},debugId:r,backlog:l?{}:t&&"object"==typeof t.backlog?t.backlog:{},isolatedBacklog:l};return Object.defineProperty(f,"aborted",{get:()=>{let e=f._aborted||!1;return e||(t&&(e=t.aborted),e)}}),f;function h(e){return e&&e instanceof s.y?e:e?(0,i.I)(e,o,()=>new s.y(o)):new s.y(o)}function p(e,t){n[e]=g(e).concat(t)}function g(e){return n[e]||[]}function m(t){return u[t]=u[t]||e(f,t)}function v(){return f.backlog}}(void 0,"globalEE"),d=(0,n.Zm)();d.ee||(d.ee=c),r.d(t,["P",0,o,"ee",0,c])},2646(e,t,r){"use strict";r.d(t,{y:()=>n});class n{constructor(e){this.contextId=e}}},9908(e,t,r){"use strict";r.d(t,{d:()=>n,p:()=>i});var n=r(7836).ee.get("handle");function i(e,t,r,i,s){s?(s.buffer([e],i),s.emit(e,t,r)):(n.buffer([e],i),n.emit(e,t,r))}},3606(e,t,r){"use strict";r.d(t,{i:()=>s});var n=r(9908);s.on=a;var i=s.handlers={};function s(e,t,r,s){a(s||n.d,i,e,t,r)}function a(e,t,r,i,s){s||(s="feature"),e||(e=n.d);var a=t[s]=t[s]||{};(a[r]=a[r]||[]).push([e,i])}},3878(e,t,r){"use strict";function n(e,t){return{capture:e,passive:!1,signal:t}}function i(e,t,r=!1,i){window.addEventListener(e,t,n(r,i))}function s(e,t,r=!1,i){document.addEventListener(e,t,n(r,i))}r.d(t,{DD:()=>s,jT:()=>n,sp:()=>i})},5607(e,t,r){"use strict";const n=(0,r(9566).bz)();r.d(t,["W",0,n])},9566(e,t,r){"use strict";r.d(t,{LA:()=>a,ZF:()=>o,bz:()=>s,el:()=>c});var n=r(6154);function i(e,t){return e?15&e[t]:16*Math.random()|0}function s(){const e=n.gm?.crypto||n.gm?.msCrypto;let t,r=0;return e&&e.getRandomValues&&(t=e.getRandomValues(new Uint8Array(30))),"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".split("").map(e=>"x"===e?i(t,r++).toString(16):"y"===e?(3&i()|8).toString(16):e).join("")}function a(e){const t=n.gm?.crypto||n.gm?.msCrypto;let r,s=0;t&&t.getRandomValues&&(r=t.getRandomValues(new Uint8Array(e)));const a=[];for(var o=0;o<e;o++)a.push(i(r,s++).toString(16));return a.join("")}function o(){return a(16)}function c(){return a(32)}},2614(e,t,r){"use strict";r.d(t,["BB",0,18e5,"Wt",0,"NRBA_SESSION::","g",0,{OFF:0,FULL:1,ERROR:2},"iL",0,{SAME_TAB:"same-tab",CROSS_TAB:"cross-tab"},"tS",0,{STARTED:"session-started",PAUSE:"session-pause",RESET:"session-reset",RESUME:"session-resume",UPDATE:"session-update"},"wk",0,144e5])},733(e,t,r){"use strict";function n(e,t){return function(e){let t=2166136261;for(let r=0;r<e.length;r++)t^=e.charCodeAt(r),t=Math.imul(t,16777619);return(t>>>0).toString(16).padStart(8,"0")}("".concat(String(e),":").concat(String(t)))}r.d(t,{Y:()=>n})},1863(e,t,r){"use strict";function n(){return Math.floor(performance.now())}r.d(t,{t:()=>n})},9119(e,t,r){"use strict";r.d(t,{L:()=>s});var n=/([^?#]*)[^#]*(#[^?]*|$).*/,i=/([^?#]*)().*/;function s(e,t){return e?e.replace(t?n:i,"$1$2"):e}},7485(e,t,r){"use strict";r.d(t,{D:()=>i});var n=r(6154);function i(e){if(0===(e||"").indexOf("data:"))return{protocol:"data"};try{const t=new URL(e,location.href),r={port:t.port,hostname:t.hostname,pathname:t.pathname,search:t.search,protocol:t.protocol.slice(0,t.protocol.indexOf(":")),sameOrigin:t.protocol===n.gm?.location?.protocol&&t.host===n.gm?.location?.host};return r.port&&""!==r.port||("http:"===t.protocol&&(r.port="80"),"https:"===t.protocol&&(r.port="443")),r.pathname&&""!==r.pathname?r.pathname.startsWith("/")||(r.pathname="/".concat(r.pathname)):r.pathname="/",r}catch(e){return{}}}},7866(e,t,r){"use strict";r.d(t,["Nc",0,/^\s*at Function code \(Function code:\d+:\d+\)\s*/i,"cn",0,/^\s*(?:([^@]*)(?:\(.*?\))?@)?((?:file|http|https|chrome|safari-extension).*?):(\d+)(?::(\d+))?\s*$/i,"fL",0,/^\s*at .+ \(eval at \S+ \((?:(?:file|http|https):[^)]+)?\)(?:, [^:]*:\d+:\d+)?\)$/i,"h3",0,/function (.+?)\s*\(/,"hB",0,/^\s*at (?:((?:\[object object\])?(?:[^(]*\([^)]*\))*[^()]*(?: \[as \S+\])?) )?\(?((?:file|http|https|chrome-extension):.*?)?:(\d+)(?::(\d+))?\)?\s*$/i])},944(e,t,r){"use strict";r.d(t,{R:()=>i});var n=r(3241);function i(e,t){"function"==typeof console.debug&&(console.debug("New Relic Warning: https://github.com/newrelic/newrelic-browser-agent/blob/main/docs/warning-codes.md#".concat(e),t),(0,n.W)({drained:null,type:"data",name:"warn",feature:"warn",data:{code:e,secondary:t}}))}},8990(e,t,r){"use strict";r.d(t,{I:()=>i});var n=Object.prototype.hasOwnProperty;function i(e,t,r){if(n.call(e,t))return e[t];var i=r();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(e,t,{value:i,writable:!0,enumerable:!1}),i}catch(e){}return e[t]=i,i}},6389(e,t,r){"use strict";function n(e,t=500,r={}){const n=r?.leading||!1;let i;return(...r)=>{n&&void 0===i&&(e.apply(this,r),i=setTimeout(()=>{i=clearTimeout(i)},t)),n||(clearTimeout(i),i=setTimeout(()=>{e.apply(this,r)},t))}}function i(e){let t=!1;return(...r)=>{t||(t=!0,e.apply(this,r))}}r.d(t,{J:()=>i,s:()=>n})},1910(e,t,r){"use strict";r.d(t,{i:()=>s});var n=r(944);const i=new Map;function s(...e){return e.every(e=>{if(i.has(e))return i.get(e);const t="function"==typeof e?e.toString():"",r=t.includes("[native code]"),s=t.includes("nrWrapper");return r||s||(0,n.R)(64,e?.name||t),i.set(e,r),r})}},3304(e,t,r){"use strict";r.d(t,{A:()=>i});var n=r(7836);function i(e){try{return JSON.stringify(e,(()=>{const e=new WeakSet;return(t,r)=>{if("object"==typeof r&&null!==r){if(e.has(r))return;e.add(r)}return r}})())??""}catch(e){try{n.ee.emit("internal-error",[e])}catch(e){}return""}}},9232(e,t,r){"use strict";r.d(t,["f",0,{MFE:"MFE",BA:"BA"}])},7560(e,t,r){"use strict";r.d(t,{N:()=>a,j:()=>c});var n=r(9119),i=r(944);const s=(0,r(6389).J)(e=>(0,i.R)(80,e));function a(e){if(!Array.isArray(e?.assets)||!e.assets.length)return;
5const t=e.assets.map(o).filter(Boolean);return t.length?{assets:t,scripts:t.filter(e=>e.isScript)}:void 0}function o(e){if(!e||"object"!=typeof e)return;const{matcher:t,type:r}=e;let i="string"==typeof t&&t.endsWith(".js");return void 0!==r&&(!function(e){return"script"===e||"asset"===e}(r)?s(r):i=function(e){return"script"===e}(r)),a=t,"[object RegExp]"===Object.prototype.toString.call(a)?{pattern:t,test:e=>(t.lastIndex=0,t.test((0,n.L)(e))),isScript:i}:"string"==typeof t&&t.length>0?{pattern:t,test:e=>(0,n.L)(e).includes(t),isScript:i}:void s(t);var a}function c(e,t,{scriptsOnly:r=!1}={}){if(!e||!t)return!1;return(r?e.scripts:e.assets).some(e=>e.test(t))}},5718(e,t,r){"use strict";r.d(t,{xo:()=>T,AZ:()=>v,cI:()=>g,Qr:()=>S,QL:()=>y});var n=r(6154),i=r(1863),s=r(9119),a=r(7866);class o{dom=new c;performance=new c;constructor(e){this.url=e,this.claimedBy=new Set}get script(){const e=Math.max(this.dom.start,this.performance.end);return{start:e,end:Math.max(this.dom.end,this.performance.end,e)}}}class c{start=0;end=0;value=void 0}function d(e=()=>{},t){return{get:()=>void 0!==t?t:e(),set:e=>{t=e}}}let u;try{u=v(y())[0]}catch(e){u=v(e)[0]}const l=new Map;let f=[];const h=new WeakMap;function p(e){let t=h.get(e);return t||(t={weighedAssetUrls:new Set,recordManifestScriptWindow:(t,r)=>{t&&(e.scriptStart=e.scriptStart>0?Math.min(e.scriptStart,t):t),r&&(e.scriptEnd=e.scriptEnd>0?Math.max(e.scriptEnd,r):r)}},h.set(e,t)),t}function g(e){return l.get(e)}function m(e){const t=g(e);
5if(t)return t;const r=new o(e);if(l.set(e,r),l.size>1e3){const e=l.keys().next().value;l.delete(e)}return r}if(n.gm.MutationObserver&&n.gm.document){new MutationObserver(e=>{e.forEach(e=>{e.addedNodes.forEach(e=>{if("SCRIPT"===e.nodeName&&e.src){const t=m((0,s.L)(e.src));t.dom.start=(0,i.t)(),t.dom.value=e;const r=()=>{t.dom.end=(0,i.t)()};["load","error"].forEach(t=>e.addEventListener(t,r,{once:!0}))}})})}).observe(n.gm.document,{childList:!0,subtree:!0})}if(n.gm.PerformanceObserver?.supportedEntryTypes.includes("resource")){new PerformanceObserver(e=>{e.getEntries().forEach(e=>{if((e=>"script"===e.initiatorType||["link","fetch"].includes(e.initiatorType)&&(0,s.L)(e.name).endsWith(".js"))(e)){const t=m((0,s.L)(e.name));t.performance.start=Math.floor(e.startTime),t.performance.end=Math.floor(e.responseEnd),t.performance.value=e}if(!f.length)return;const t=[];f.forEach(({test:r,addedAt:n},s)=>{(r(e)||(0,i.t)()-n>1e4)&&t.push(s)}),f=f.filter((e,r)=>!t.includes(r))})}).observe({type:"resource",buffered:!0})}function v(e){if(!e||"string"!=typeof e)return[];const t=new Set,r=e.split("\n");for(const e of r){const r=e.match(a.cn)||e.match(a.hB)||e.match(a.fL);if(r&&r[2])t.add((0,s.L)(r[2]));else{const r=e.match(/\(([^)]+\.js):\d+:\d+\)/)||e.match(/^\s+at\s+([^\s(]+\.js):\d+:\d+/);r&&r[1]&&t.add((0,s.L)(r[1]))}}return[...t]}function y(){let e;try{const t=Error.stackTraceLimit;Error.stackTraceLimit=50,e=(new Error).stack,Error.stackTraceLimit=t}catch(t){e=(new Error).stack}return e}function b(e,t){return(0,s.L)(e.name)===t}function E(e,t){e.fetchStart=Math.floor(t.startTime),e.fetchEnd=Math.floor(t.responseEnd),e.asset=t.name,e.type=t.initiatorType,R(e,t)}function R(e,t){const r=(0,s.L)(t.name),{weighedAssetUrls:n}=p(e);n.has(r)||(n.add(r),e.totalWeight=(e.totalWeight||0)+(t.transferSize||0),"blocking"===t.renderBlockingStatus?e.renderBlocking=!0:"non-blocking"===t.renderBlockingStatus&&!0!==e.renderBlocking&&(e.renderBlocking=!1))}function w(e,t,r,n,i){if(R(e,t),"scripts"!==i&&"all"!==i)return;if("all"===i||r.isScript){const r=Math.floor(t.startTime),n=Math.floor(t.responseEnd);e.fetchStart=e.fetchStart>0?Math.min(e.fetchStart,r):r,e.fetchEnd=e.fetchEnd>0?Math.max(e.fetchEnd,n):n}if(r.isScript){const r=g((0,s.L)(t.name));if(r){const t=()=>{const{start:t,end:n}=r.script;p(e).recordManifestScriptWindow(t,n)};t(),!r.dom.end&&r.dom.value&&["load","error"].forEach(e=>r.dom.value.addEventListener(e,t,{once:!0}))}n.resolved||(e.asset=t.name,e.type=t.initiatorType,n.resolved=!0)}}function T(e,t){const r=t?.manifest;if(!r||!r.assets.length)return;const s={resolved:!1},a=new Set(r.assets);(n.gm.performance?.getEntriesByType("resource")||[]).forEach(r=>{const n=[...a].find(e=>e.test(r.name));n&&(w(e,r,n,s,t.timingMethod),a.delete(n))}),a.size&&function(e,t,r,s){n.gm.PerformanceObserver?.supportedEntryTypes?.includes("resource")&&f.push({addedAt:(0,i.t)(),test:n=>{const i=[...t].find(e=>e.test(n.name));return i&&(w(e,n,i,r,s),t.delete(i)),0===t.size}})}(e,a,s,t.timingMethod)}function S(e){const t=e?.id,r={registeredAt:(0,i.t)(),reportedAt:void 0,fetchStart:0,fetchEnd:0,scriptStart:0,scriptEnd:0,asset:void 0,type:"unknown",totalWeight:0,renderBlocking:void 0},a=y();if(!a)return r;const o=n.gm.performance?.getEntriesByType("navigation")?.[0]?.name||"";try{const e=v(a),c=(e.length>1?e.filter(e=>u!==e):e)[0];if(!c)return r;if(o.includes(c))return r.asset=(0,s.L)(o),r.type="inline",r;r.correlation=g(c);const l=r.correlation?.performance.value||n.gm.performance?.getEntriesByType("resource")?.find(e=>b(e,c));if(l)E(r,l);else{(function(e){if(!e||!n.gm.document)return!1;try{const t=n.gm.document.querySelectorAll('link[rel="preload"][as="script"]');for(const r of t)if((0,s.L)(r.href)===e)return!0}catch(e){}return!1})(c)&&(r.asset=c,r.type="preload"),function(e,t){n.gm.PerformanceObserver?.supportedEntryTypes?.includes("resource")&&f.push({addedAt:(0,i.t)(),test:r=>!!b(r,t)&&(E(e,r),!0)})}(r,c)}const h=r.correlation,m=!!t&&!!h?.claimedBy.has(t);h&&t&&h.claimedBy.add(t);const y=()=>{const e=h?.script.start;if(!m||!e)return!1;return r.registeredAt-e>1e4};let R=0,w=0;p(r).recordManifestScriptWindow=(e,t)=>{e&&(R=R>0?Math.min(R,e):e),t&&(w=w>0?Math.max(w,t):t)},Object.defineProperty(r,"scriptStart",d(()=>{const e=y()?r.registeredAt:h?.script.start??r.fetchEnd;return R>0?Math.min(e,R):e})),Object.defineProperty(r,"scriptEnd",d(()=>{const e=y()?r.registeredAt:h?.script.end??r.registeredAt;return w>0?Math.max(e,w):e}))}catch(e){}return r}},5732(e,t,r){"use strict";r.d(t,{$5:()=>m,B5:()=>g,K6:()=>u,M$:()=>
5o,Ms:()=>d,NG:()=>c,Ux:()=>h,YA:()=>p,yx:()=>l});var n=r(5718),i=r(7560),s=r(9119),a=r(9232);function o(e){return e?.type===a.f.MFE}function c(e,t){if(!y(e,t))return;const r=t.runtime.registeredEntities;return r?.find(t=>t.metadata.target.iframeInterfaceId===e)}function d(e,t){if(!y(e,t))return[];const r=t.runtime.registeredEntities;return r?.filter(t=>String(t.metadata.target.id)===String(e)).map(e=>e.metadata.target)||[]}function u(e,t){if(!y(e,t))return[];const r=t.runtime.registeredEntities,n=(0,s.L)(e),a=r?.filter(t=>{const r=t.metadata.target?.manifest;return r?(0,i.j)(r,e,{scriptsOnly:!1}):!!t.metadata.timings?.asset&&(0,s.L)(t.metadata.timings.asset)===n});return f(a).map(e=>e.metadata.target)}function l(e,t){if(!y(e,t))return[];const r=t.runtime.registeredEntities,n=r?.filter(t=>{const r=t.metadata.target?.manifest;return r?(0,i.j)(r,e,{scriptsOnly:!0}):!!t.metadata.timings?.asset?.endsWith(e)});return f(n).map(e=>e.metadata.target)}function f(e){if(!e?.length)return e||[];const t=new Map,r=[];for(const n of e){const e=n.metadata?.timings?.asset;if(!e){r.push(n);continue}const i="".concat(e,"::").concat(n.metadata?.target?.id),s=t.get(i);if(s){if(s.metadata.target?.blocked&&!n.metadata.target?.blocked){const e=r.indexOf(s);-1!==e&&(r[e]=n),t.set(i,n)}}else t.set(i,n),r.push(n)}return r}function h(e,t){return v(t)?o(e)?e.attributes:t.agentRef.runtime.v2Target.attributes:{}}function p(e,t){return g(e,t)?{"child.id":e.id,"child.type":e.type,...h(void 0,t)}:{}}function g(e,t){return o(e)&&!!v(t)&&t.agentRef.init.api.register.duplicate_data_to_container}function m(e){if(!e?.runtime)return[];if(!y(!0,e)||!e.runtime.registeredEntities?.length)return[e.runtime.v2Target];const t=[];try{var r=(0,n.AZ)((0,n.QL)());let i=r.length-1;for(;r[i];)t.push(...l(r[i--],e))}catch(e){}const i=function(e){const t=new Set,r=[];for(const n of e){const e=n?.instance;t.has(e)||(t.add(e),r.push(n))}return r}(t);return i.length||i.push(e.runtime.v2Target),i}function v(e){return 2===e?.harvestEndpointVersion}function y(e,t){return!!e&&!!t?.init.api.register.enabled}},5289(e,t,r){"use strict";r.d(t,{GG:()=>a,Qr:()=>c,sB:()=>o});var n=r(3878),i=r(6389);function s(){return"undefined"==typeof document||"complete"===document.readyState}function a(e,t){if(s())return e();const r=(0,i.J)(e),a=setInterval(()=>{s()&&(clearInterval(a),r())},500);(0,n.sp)("load",r,t)}function o(e){if(s())return e();(0,n.DD)("DOMContentLoaded",e)}function c(e){if(s())return e();(0,n.sp)("popstate",e)}},384(e,t,r){"use strict";r.d(t,{Zm:()=>c,bQ:()=>u,dV:()=>d,pV:()=>l});var n=r(6154),i=r(1863),s=r(944),a=r(1910);const o={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net"};function c(){return n.gm.NREUM||(n.gm.NREUM={}),void 0===n.gm.newrelic&&(n.gm.newrelic=n.gm.NREUM),n.gm.NREUM}function d(){let e=c();return e.o||(e.o={ST:n.gm.setTimeout,SI:n.gm.setImmediate||n.gm.setInterval,CT:n.gm.clearTimeout,XHR:n.gm.XMLHttpRequest,REQ:n.gm.Request,EV:n.gm.Event,PR:n.gm.Promise,MO:n.gm.MutationObserver,FETCH:n.gm.fetch,WS:n.gm.WebSocket},(0,a.i)(...Object.values(e.o))),e}function u(e,t){let r=c();r.initializedAgents??={},t.initializedAt={ms:(0,i.t)(),date:new Date},r.initializedAgents[e]=t,2===Object.keys(r.initializedAgents).length&&(0,s.R)(69)}function l(){return function(){let e=c();const t=e.info||{};e.info={beacon:o.beacon,errorBeacon:o.errorBeacon,...t}}(),function(){let e=c();const t=e.init||{};e.init={...t}}(),d(),function(){let e=c();const t=e.loader_config||{};e.loader_config={...t}}(),c()}r.d(t,["NT",0,o])},2843(e,t,r){"use strict";r.d(t,{G:()=>s,u:()=>i});var n=r(3878);function i(e,t=!1,r,i){(0,n.DD)("visibilitychange",function(){if(t)return void("hidden"===document.visibilityState&&e());e(document.visibilityState)},r,i)}function s(e,t,r){(0,n.sp)("pagehide",e,t,r)}},8139(e,t,r){"use strict";r.d(t,{u:()=>f});var n=r(7836),i=r(3434),s=r(8990),a=r(6154);const o={},c=a.gm.XMLHttpRequest,d="addEventListener",u="removeEventListener",l="nr@wrapped:".concat(n.P);function f(e,t){var r=function(e){return(e||n.ee).get("events")}(e);if(o[r.debugId]++)return r;o[r.debugId]=1;var f=(0,i.YM)(r,!0,t);function p(e){f.inPlace(e,[d,u],"-",g)}function g(e,t){return e[1]}return"getPrototypeOf"in Object&&(a.RI&&h(document,p),c&&h(c.prototype,p),h(a.gm,p)),r.on(d+"-start",function(e,t){var r=e[1];if(null!==r&&("function"==typeof r||"object"==typeof r)&&"newrelic"!==e[0]){var n=(0,s.I)(r,l,function(){var e={object:function(){if("function"!=typeof r.handleEvent)return;return r.handleEvent.apply(r,arguments)},function:r}[typeof r];return e?f(e,"fn-",null,e.name||"anonymous"):r});this.wrapped=e[1]=n}}),r.on(u+"-start",function(e){e[1]=this.wrapped||e[1]}),r}function h(e,t,...r){let n=e;for(;"object"==typeof n&&!Object.prototype.hasOwnProperty.call(n,d);)n=Object.getPrototypeOf(n);n&&t(n,...r)}},3434(e,t,r){"use strict";r.d(t,{YM:()=>d});var n=r(7836),i=r(5607),s=r(5732);const a="nr@original:".concat(i.W);var o=Object.prototype.hasOwnProperty,c=!1;function d(e,t,r){return e||(e=n.ee),i.inPlace=function(e,t,r,n,s,a){r||(r="");const o="-"===r.charAt(0);for(let c=0;c<t.length;c++){const d=t[c],u=e[d];l(u)||(e[d]=i(u,o?d+r:r,n,d,s,a))}},i.flag=a,i;function i(t,n,i,c,f,h){return l(t)?t:(n||(n=""),nrWrapper[a]=t,function(e,t,r){if(Object.defineProperty&&Object.keys)try{return Object.keys(e).forEach(function(r){Object.defineProperty(t,r,{get:function(){return e[r]},set:function(t){return e[r]=t,t}})}),t}catch(e){u([e],r)}for(var n in e)o.call(e,n)&&(t[n]=e[n])}
5(t,nrWrapper,e),nrWrapper);function nrWrapper(){var a,o,l,p;let g,m;try{o=this,a=[...arguments],m=h?(0,s.$5)(r):[r?.runtime?.v2Target],l="function"==typeof i?i(a,o):i||{}}catch(t){u([t,"",[a,o,c],l],e)}d(n+"start",[a,o,c,m],l,f);const v=performance.now();let y;try{return p=t.apply(o,a),y=performance.now(),p}catch(e){throw y=performance.now(),d(n+"err",[a,o,e,m],l,f),g=e,g}finally{const e=y-v,t={start:v,end:y,duration:e,isLongTask:e>=50,methodName:c,thrownError:g};t.isLongTask&&d("long-task",[t,o,m],l,f),d(n+"end",[a,o,p,m],l,f)}}}function d(r,n,i,s){if(!c||t){var a=c;c=!0;try{e.emit(r,n,i,t,s)}catch(t){u([t,r,n,i],e)}c=a}}}function u(e,t){t||(t=n.ee);try{t.emit("internal-error",e)}catch(e){}}function l(e){return!(e&&"function"==typeof e&&e.apply&&!e[a])}r.d(t,["Jt",0,a])},9300(e,t,r){"use strict";const n=r(860).K7.ajax;r.d(t,["TZ",0,n,"f5",0,"ajaxRequest.id","mo",0,{NONE:"none",FAILURES:"failures",ALL:"all"}])},3333(e,t,r){"use strict";var n=r(981);const i=r(860).K7.genericEvents,s=[n.R.PA,n.R.UA,n.R.BP];r.d(t,["$v",0,{RESOURCES:"experimental.resources",REGISTER:"register"},"TZ",0,i,"Zp",0,["auxclick","click","copy","keydown","paste","scrollend"],"kd",0,s,"qN",0,["focus","blur"]])},6774(e,t,r){"use strict";const n=r(860).K7.jserrors;r.d(t,["T",0,n])},993(e,t,r){"use strict";const n=r(860).K7.logging;r.d(t,["A$",0,{OFF:0,ERROR:1,WARN:2,INFO:3,DEBUG:4,TRACE:5},"TZ",0,n,"p_",0,{ERROR:"ERROR",WARN:"WARN",INFO:"INFO",DEBUG:"DEBUG",TRACE:"TRACE"}])},3785(e,t,r){"use strict";r.d(t,{R:()=>c,b:()=>d});var n=r(9908),i=r(1863),s=r(860),a=r(3969),o=r(993);function c(e,t,r={},c=o.p_.INFO,d=!0,u,l=(0,i.t)()){(0,n.p)(a.xV,["API/logging/".concat(c.toLowerCase(),"/called")],void 0,s.K7.metrics,e),(0,n.p)("log",[l,t,r,c,d,u],void 0,s.K7.logging,e)}function d(e){return"string"==typeof e&&Object.values(o.p_).some(t=>t===e.toUpperCase().trim())}},3969(e,t,r){"use strict";const n=r(860).K7.metrics;r.d(t,["TZ",0,n,"XG",0,"storeEventMetrics","xV",0,"storeSupportabilityMetrics"])},6630(e,t,r){"use strict";const n=r(860).K7.pageViewEvent;r.d(t,["T",0,n])},782(e,t,r){"use strict";const n=r(860).K7.pageViewTiming;r.d(t,["T",0,n])},6344(e,t,r){"use strict";var n=r(2614);const i=r(860).K7.sessionReplay,s={[n.g.ERROR]:15e3,[n.g.FULL]:3e5,[n.g.OFF]:0}
5;r.d(t,["Qb",0,{API:"api",RESUME:"resume",SWITCH_TO_FULL:"switchToFull",INITIALIZE:"initialize",PRELOAD:"preload"},"TZ",0,i,"Vh",0,"errorDuringReplay","_s",0,{DomContentLoaded:0,Load:1,FullSnapshot:2,IncrementalSnapshot:3,Meta:4,Custom:5},"bc",0,{RESET:{message:"Session was reset",sm:"Reset"},IMPORT:{message:"Recorder failed to import",sm:"Import"},TOO_MANY:{message:"429: Too Many Requests",sm:"Too-Many"},TOO_BIG:{message:"Payload was too large",sm:"Too-Big"},CROSS_TAB:{message:"Session Entity was set to OFF on another tab",sm:"Cross-Tab"},ENTITLEMENTS:{message:"Session Replay is not allowed and will not be started",sm:"Entitlement"}},"yP",0,s])},5270(e,t,r){"use strict";r.d(t,{Aw:()=>a,SR:()=>s,rF:()=>o});var n=r(384),i=r(7767);function s(e){return!!(0,n.dV)().o.MO&&(0,i.V)(e)&&!0===e?.session_trace.enabled}function a(e){return!0===e?.session_replay.preload&&s(e)}function o(e,t){try{if("string"==typeof t?.type&&"password"===t.type.toLowerCase())return"*".repeat(e?.length||0);if(void 0!==t?.dataset?.nrUnmask||t?.classList?.contains("nr-unmask"))return e}catch(e){}return"string"==typeof e?e.replace(/[\S]/g,"*"):"*".repeat(e?.length||0)}},3738(e,t,r){"use strict";const n=r(860).K7.sessionTrace,i="-start",s="-end",a="fn"+i,o="fn"+s;r.d(t,["He",0,"bstResource","Kp",0,s,"Lc",0,o,"Rz",0,"pushState","TZ",0,n,"bD",0,"resource","bc",0,{CROSS_TAB:{message:"Session Entity was set to OFF on another tab"},ENTITLEMENTS:{message:"Session Trace is not allowed and will not be started"},RESET:{message:"Session was reset"},SESSION_CHANGED:{message:"Session identifier changed unexpectedly"}},"d3",0,i,"uP",0,a])},4234(e,t,r){"use strict";r.d(t,{W:()=>i});var n=r(1687);class i{constructor(e,t){this.agentRef=e,this.ee=e?.ee,this.featureName=t,this.blocked=!1}deregisterDrain(){(0,n.x3)(this.agentRef,this.featureName)}}},7767(e,t,r){"use strict";var n=r(6154);r.d(t,["V",0,e=>n.RI&&!0===e?.privacy.cookies_enabled])},8362(e,t,r){"use strict";r.d(t,{d:()=>s});var n=r(9566),i=r(1741);class s extends i.W{agentIdentifier=(0,n.LA)(16)}},1741(e,t,r){"use strict";r.d(t,{W:()=>s});var n=r(944),i=r(4261);class s{#e(e,...t){if(this[e]!==s.prototype[e])return this[e](...t);(0,n.R)(35,e)}addPageAction(e,t){return this.#e(i.hG,e,t)}register(e){return this.#e(i.eY,e)}recordCustomEvent(e,t){return this.#e(i.fF,e,t)}setPageViewName(e,t){return this.#e(i.Fw,e,t)}setCustomAttribute(e,t,r){return this.#e(i.cD,e,t,r)}noticeError(e,t){return this.#e(i.o5,e,t)}setUserId(e,t=!1){return this.#e(i.Dl,e,t)}setApplicationVersion(e){return this.#e(i.nb,e)}setErrorHandler(e){return this.#e(i.bt,e)}addRelease(e,t){return this.#e(i.k6,e,t)}log(e,t){return this.#e("log",e,t)}start(){return this.#e("start")}finished(e){return this.#e(i.BL,e)}recordReplay(){return this.#e(i.CH)}pauseReplay(){return this.#e(i.Tb)}addToTrace(e){return this.#e(i.U2,e)}setCurrentRouteName(e){return this.#e(i.PA,e)}interaction(e){return this.#e(i.dT,e)}wrapLogger(e,t,r){return this.#e(i.Wb,e,t,r)}measure(e,t){return this.#e(i.V1,e,t)}consent(e){return this.#e(i.Pv,e)}}},4261(e,t,r){"use strict";r.d(t,["BL",0,"finished","CH",0,"recordReplay","Dl",0,"setUserId","Fw",0,"setPageViewName","PA",0,"setCurrentRouteName","Pv",0,"consent","Tb",0,"pauseReplay","U2",0,"addToTrace","V1",0,"measure","Wb",0,"wrapLogger","bt",0,"setErrorHandler","cD",0,"setCustomAttribute","dT",0,"interaction","eY",0,"register","fF",0,"recordCustomEvent","hG",0,"addPageAction","k6",0,"addRelease","nb",0,"setApplicationVersion","o5",0,"noticeError"])},1738(e,t,r){"use strict";r.d(t,{U:()=>l,Y:()=>u});var n=r(3241),i=r(9908),s=r(1863),a=r(944),o=r(3969),c=r(8362),d=r(860);function u(e,t,r,s){const u=s||r;!u||u[e]&&u[e]!==c.d.prototype[e]||(u[e]=function(){(0,i.p)(o.xV,["API/"+e+"/called"],void 0,d.K7.metrics,r.ee),(0,n.W)({drained:!!r.runtime?.activatedFeatures,type:"data",name:"api",feature:"api-"+e,data:{}});try{return t.apply(this,arguments)}catch(e){(0,a.R)(23,e)}})}function l(e,t,r,n,a){const o=e.info;null===r?delete o.jsAttributes[t]:o.jsAttributes[t]=r,(a||null===r)&&(0,i.p)("api-"+n,[(0,s.t)(),t,r],void 0,"session",e.ee)}},8374(e,t,r){r.nc=(()=>{try{return document?.currentScript?.nonce}catch(e){}return""})()},860(e,t,r){"use strict";const n="events",i="jserrors",s="browser/blobs",a="browser/logs",o={ajax:"ajax",genericEvents:"generic_events",jserrors:i,logging:"logging",metrics:"metrics",pageAction:"page_action",pageViewEvent:"page_view_event",pageViewTiming:"page_view_timing",sessionReplay:"session_replay",sessionTrace:"session_trace",softNav:"soft_navigations"},c={[o.pageViewEvent]:1,[o.pageViewTiming]:2,[o.metrics]:3,[o.jserrors]:4,[o.softNav]:5,[o.ajax]:6,[o.sessionTrace]:7,[o.sessionReplay]:8,[o.logging]:9,[o.genericEvents]:10},d={[o.pageViewEvent]:"rum",[o.pageViewTiming]:n,[o.ajax]:n,[o.softNav]:n,[o.metrics]:i,[o.jserrors]:i,[o.sessionTrace]:s,[o.sessionReplay]:s,[o.logging]:a,[o.genericEvents]:"ins"};r.d(t,["$J",0,d,"K7",0,o,"P3",0,c,"XX",0,i,"Yy",0,a,"df",0,s,"hg",0,"connect"])}};const t={};function r(n){const i=t[n];if(void 0!==i)return i.exports;const s=t[n]={exports:{}};return e[n](s,s.exports,r),s.exports}r.m=e,r.d=(e,t)=>{if(Array.isArray(t))for(var n=0;n<t.length;){var i=t[n++],s=t[n++];r.o(e,i)?0===s&&n++:0===s?Object.defineProperty(e,i,{enumerable:!0,value:t[n++]}):Object.defineProperty(e,i,{enumerable:!0,get:s})}else for(var i in t)r.o(t,i)&&!r.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:t[i]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce((t,n)=>(r.f[n](e,t),t),[])),r.u=e=>({95:"nr-full-compressor",222:"nr-full-recorder",649:"nr-full-iframe-message-handler",89
51:"nr-full"}[e]+"-1.323.0.min.js"),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{const e={},t="NRBA-1.323.0.PROD:";r.l=(n,i,s,a)=>{if(e[n])return void e[n].push(i);let o,c;if(void 0!==s){const e=document.getElementsByTagName("script");for(var d=0;d<e.length;d++){const r=e[d];if(r.getAttribute("src")==n||r.getAttribute("data-webpack")==t+s){o=r;break}}}if(!o){c=!0;var u={891:"sha512-3jboCmrue7pvfLFAQ9FaZC6iM4mLMLaZF6lKolNEXSkSEV504XyvxAZYc2IA7anoBv2V+k1HPTEP1kEgaIYkeg==",222:"sha512-VSWDjY6WtlUmQRPiGWVhKHgN3DMcL8oP9fKdTus8nteEdkVzXz/VhtS6N3wJyto6jHNHRLawzAny60sfcHbBNQ==",95:"sha512-JfHJ5y7GJR1Z5RXbhGTJAaX+pDpLAzH+9IdJQc7Lc7hz3fR+zqyabKG7hPG4eQQ3dZhcuoJKdfj+OhPePveplQ==",649:"sha512-mN3SeCI8QgOG4PdhbG1UlLTWP/P9Ckx3bEoFST53PE7ctYb2Pwk/sVJpCoVwkXTlhP17BH8L/BkzHI4sD+yo6Q=="};o=document.createElement("script"),o.charset="utf-8",r.nc&&o.setAttribute("nonce",r.nc),o.setAttribute("data-webpack",t+s),o.src=n,0!==o.src.indexOf(window.location.origin+"/")&&(o.crossOrigin="anonymous"),u[a]&&(o.integrity=u[a])}e[n]=[i];const l=(t,r)=>{o.onerror=o.onload=null,clearTimeout(f);const i=e[n];if(delete e[n],o.parentNode?.removeChild(o),i?.forEach(e=>e(r)),t)return t(r)},f=setTimeout(l.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=l.bind(null,o.onerror),o.onload=l.bind(null,o.onload),c&&document.head.appendChild(o)}})(),r.r=e=>{Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.p="https://js-agent.newrelic.com/",(()=>{const e={85:0,959:0};r.f.j=(t,n)=>{let i=r.o(e,t)?e[t]:void 0;if(0!==i)if(i)n.push(i[2]);else{const s=new Promise((r,n)=>i=e[t]=[r,n]);n.push(i[2]=s);const a=r.p+r.u(t),o=new Error,c=n=>{if(r.o(e,t)&&(i=e[t],0!==i&&(e[t]=void 0),i)){const e=n&&("load"===n.type?"missing":n.type),r=n&&n.target&&n.target.src;o.message="Loading chunk "+t+" failed: ("+e+": "+r+")",o.name="ChunkLoadError",o.type=e,o.request=r,i[1](o)}};r.l(a,c,"chunk-"+t,t)}};const t=(t,n)=>{let[i,s,a]=n;var o,c,d=0;if(i.some(t=>0!==e[t])){for(o in s)r.o(s,o)&&(r.m[o]=s[o]);if(a)a(r)}for(t&&t(n);d<i.length;d++)c=i[d],r.o(e,c)&&e[c]&&e[c][0](),e[c]=0},n=self["webpackChunk:NRBA-1.323.0.PROD"]=self["webpackChunk:NRBA-1.323.0.PROD"]||[];n.forEach(t.bind(null,0)),n.push=t.bind(null,n.push.bind(n))})(),(()=>{"use strict";r(8374);var e=r(8362),t=r(860);const n=Object.values(t.K7);var i=r(384),s=r(1741);var a=r(2555),o=r(3333),c=r(9300);const d=e=>{if(!e||"string"!=typeof e)return!1;try{document.createDocumentFragment().querySelector(e)}catch{return!1}return!0};var u=r(2614),l=r(944),f=r(8122);const h="[data-nr-mask]",p=e=>(0,f.a)(e,(()=>{const e={feature_flags:[],experimental:{register:!1,resources:!1,iframe_bridge:!1,iframe_domains:[]},mask_selector:"*",block_selector:"[data-nr-block]",mask_input_options:{color:!1,date:!1,"datetime-local":!1,email:!1,month:!1,number:!1,range:!1,search:!1,tel:!1,text:!1,time:!1,url:!1,week:!1,textarea:!1,select:!1,password:!0}};return{ajax:{deny_list:void 0,block_internal:!0,enabled:!0,autoStart:!0,capture_payloads:c.mo.NONE},api:{register:{get enabled(){return e.feature_flags.includes(o.$v.REGISTER)||e.experimental.register},set enabled(t){e.experimental.register=t},duplicate_data_to_container:!1,get allow_iframe_bridge(){return e.feature_flags.includes(o.$v.IFRAME_BRIDGE)||e.experimental.iframe_bridge},set allow_iframe_bridge(t){e.experimental.iframe_bridge=t},get iframe_domains(){return e.experimental.iframe_domains},set iframe_domains(t){Array.isArray(t)?e.experimental.iframe_domains=t:(0,l.R)(1,t)}}},browser_consent_mode:{enabled:!1},distributed_tracing:{enabled:void 0,exclude_newrelic_header:void 0,cors_use_newrelic_header:void 0,cors_use_tracecontext_headers:void 0,allowed_origins:void 0},get feature_flags(){return e.feature_flags},set feature_flags(t){e.feature_flags=t},generic_events:{enabled:!0,autoStart:!0},harvest:{interval:30},jserrors:{enabled:!0,autoStart:!0},logging:{enabled:!0,autoStart:!0},metrics:{enabled:!0,autoStart:!0},obfuscate:void 0,page_action:{enabled:!0},page_view_event:{enabled:!0,autoStart:!0},page_view_timing:{enabled:!0,autoStart:!0},performance:{capture_marks:!1,capture_measures:!1,capture_detail:!0,resources:{get enabled(){return e.feature_flags.includes(o.$v.RESOURCES)||e.experimental.resources},set enabled(t){e.experimental.resources=t},asset_types:[],first_party_domains:[],ignore_newrelic:!0}},privacy:{cookies_enabled:!0},proxy:{assets:void 0,beacon:void 0},session:{expiresMs:u.wk,inactiveMs:u.BB},session_replay:{autoStart:!0,enabled:!1,preload:!1,sampling_rate:10,error_sampling_rate:100,collect_fonts:!1,inl
5ine_images:!1,fix_stylesheets:!0,mask_all_inputs:!0,get mask_text_selector(){return e.mask_selector},set mask_text_selector(t){d(t)?e.mask_selector="".concat(t,",").concat(h):""===t||null===t?e.mask_selector=h:(0,l.R)(5,t)},get block_class(){return"nr-block"},get ignore_class(){return"nr-ignore"},get mask_text_class(){return"nr-mask"},get block_selector(){return e.block_selector},set block_selector(t){d(t)?e.block_selector+=",".concat(t):""!==t&&(0,l.R)(6,t)},get mask_input_options(){return e.mask_input_options},set mask_input_options(t){t&&"object"==typeof t?e.mask_input_options={...t,password:!0}:(0,l.R)(7,t)}},session_trace:{enabled:!0,autoStart:!0},soft_navigations:{enabled:!0,autoStart:!0},ssl:void 0,user_actions:{enabled:!0,elementAttributes:["id","className","tagName","type"]},web_sockets:{enabled:!1}}})());var g=r(6154),m=r(9324);let v=0;const y={buildEnv:"PROD",distMethod:"CDN",version:m.x,originTime:g.WN},b={consented:!1},E={activatedFeatures:void 0,appMetadata:{},configured:!1,get consented(){return this.session?.state?.consent||b.consented},set consented(e){b.consented=e},customTransaction:void 0,denyList:[],disabled:!1,drainRegistry:new Map,connector:void 0,harvester:void 0,v2Target:void 0,isolatedBacklog:!1,isRecording:!1,loaderType:void 0,maxBytes:3e4,obfuscator:void 0,onerror:void 0,ptid:void 0,releaseIds:{},session:void 0,timeKeeper:void 0,registeredEntities:[],jsAttributesMetadata:{bytes:0},get harvestCount(){return++v},listeningForIframeMessages:!1};var R=r(9232);var w=r(7836),T=r(3241);const S={accountID:void 0,trustKey:void 0,agentID:void 0,licenseKey:void 0,applicationID:void 0,xpid:void 0};var A=r(9908),x=r(9752);function _(e,t={},n,o){let{init:c,info:d,loader_config:u,runtime:l={},exposed:h=!0}=t;if(!d){const e=(0,i.pV)();c=e.init,d=e.info,u=e.loader_config}var m;e.init=p(c||{}),e.loader_config=(m=u||{},(0,f.a)(m,S)),d.jsAttributes??={},g.bv&&(d.jsAttributes.isWorker=!0),e.info=(0,a.D)(d);const v=e.init;e.runtime??=(e=>{const t=(0,f.a)(e,E),r=Object.keys(y).reduce((e,t)=>(e[t]={value:y[t],writable:!1,configurable:!0,enumerable:!0},e),{});return Object.defineProperties(t,r)})(l),e.runtime.v2Target??={type:R.f.BA,instance:e.agentIdentifier,get id(){return e.runtime.appMetadata?.agents?.[0]?.entityGuid},get attributes(){return{"entity.guid":this.id,appId:e.info.applicationID}}},v.proxy.assets&&(e=>{const t=e.startsWith("http");e+="/",r.p=t?e:"https://"+e})(v.proxy.assets),e.runtime.configured||(Object.defineProperty(e,"beacons",{get:()=>[e.info.beacon,e.info.errorBeacon,e.init.proxy.assets,e.init.proxy.beacon].filter(Boolean)}),Object.defineProperty(e.runtime,"denyList",{get:()=>[...e.init.ajax.deny_list||[],...e.init.ajax.block_internal?e.beacons:[]]}),e.runtime.ptid=e.agentIdentifier,function(e){const t=(0,i.pV)();Object.getOwnPropertyNames(s.W.prototype).forEach(r=>{const n=s.W.prototype[r];if("function"!=typeof n||"constructor"===n)return;let i=t[r];e[r]&&!1!==e.exposed&&"micro-agent"!==e.runtime?.loaderType&&(t[r]=(...t)=>{const n=e[r](...t);return i?i(...t):n})})}(e),e.runtime.loaderType=n,e.ee=w.ee.get(e.agentIdentifier),e.exposed=h,(0,T.W)({drained:!!e.runtime.activatedFeatures,type:"lifecycle",name:"initialize",feature:void 0,data:e.config}),e.init.api.register.allow_iframe_bridge&&g.gm.addEventListener("message",t=>{"string"==typeof t.data?.type&&t.data.type.startsWith(x.Pl)&&(0,A.p)("iframe-message",[t],void 0,"IFRAME",e.ee)}),e.runtime.configured=!0)}var O=r(1863),k=r(4261),L=r(1738);var M=r(1687),P=r(4234),N=r(5289),j=r(5270),I=r(7767),C=r(6389),D=r(7699);const B=new WeakSet,H=new WeakMap;class W extends P.W{constructor(e,t){super(e,t),this.abortHandler=void 0,this.featAggregate=void 0,this.loadedSuccessfully=void 0,this.onAggregateImported=new Promise(e=>{this.loadedSuccessfully=e}),this.deferred=Promise.resolve(),!1===e.init[this.featureName].autoStart?this.deferred=new Promise((t,r)=>{this.ee.on("manual-start-all",(0,C.J)(()=>{(0,M.Ak)(e,this.featureName),t()}))}):(0,M.Ak)(e,t)}importAggregator(e,t,n={}){if(this.featAggregate)return;const i=async()=>{if(await this.deferred,this.#t(e),!(0,a.f)(e.info))return(0,l.R)(43),e.ee.abort(),void this.loadedSuccessfully(!1);try{await async function(e,t,n){if(H.has(e))return H.get(e);const i=(async()=>
5{if((0,I.V)(e.init))try{const{setupAgentSession:t}=await r.e(891).then(r.bind(r,8766));t(e)}catch(e){(0,l.R)(20,e),t.emit("internal-error",[e]),(0,A.p)(D.qh,[e],void 0,n,t)}if(e.init.api.register.allow_iframe_bridge)try{const{setupIframeMFEMessageListener:t}=await r.e(649).then(r.bind(r,6417));t(e)}catch(e){(0,l.R)(23,e)}const[{Connector:i},{Harvester:s}]=await Promise.all([r.e(891).then(r.bind(r,6589)),r.e(891).then(r.bind(r,5237))]);e.runtime.connector=new i(e),e.runtime.harvester=new s(e);const a=Object.values(e.features).filter(t=>e.runtime.drainRegistry.has(t.featureName));Promise.all(a.map(e=>e.onAggregateImported)).then(()=>e.runtime.harvester.startTimer())})();H.set(e,i),await i}(e,this.ee,this.featureName)}catch(e){return(0,l.R)(79,e),this.ee.abort(),void this.loadedSuccessfully(!1)}try{if(!this.#r(this.featureName,e.runtime.session,e.init))return this.abortHandler?.(),(0,M.Ze)(this.agentRef,this.featureName),void this.loadedSuccessfully(!1);const{Aggregate:r}=await t();this.featAggregate=new r(e,n),e.runtime.harvester.initializedAggregates.push(this.featAggregate),this.loadedSuccessfully(!0)}catch(e){(0,l.R)(34,e),this.abortHandler?.(),(0,M.Ze)(this.agentRef,this.featureName,!0),this.loadedSuccessfully(!1)}};g.RI?(0,N.GG)(()=>i(),!0):i()}#r(e,r,n){if(this.blocked)return!1;switch(e){case t.K7.sessionReplay:return(0,j.SR)(n)&&!!r;case t.K7.sessionTrace:return!!r;default:return!0}}#t(e){if(!B.has(e)&&(B.add(e),!(0,a.f)(e.info))){const t=(0,i.pV)();let r={...t.info?.jsAttributes};try{r={...r,...e.info?.jsAttributes}}catch(e){}_(e,{...t,info:{...t.info,jsAttributes:r},runtime:e.runtime},e.runtime.loaderType)}}}var K=r(6630);class U extends W{static featureName=K.T;constructor(e){var t;super(e,K.T),this.setupInspectionEvents(),t=e,(0,L.Y)(k.Fw,function(e,r){"string"==typeof e&&("/"!==e.charAt(0)&&(e="/"+e),t.runtime.customTransaction=(r||"http://custom.transaction")+e,(0,A.p)("api-"+k.Fw,[(0,O.t)()],void 0,void 0,t.ee))},t),this.importAggregator(e,()=>e.init.feature_flags.includes("rum_v2")?r.e(891).then(r.bind(r,908)):r.e(891).then(r.bind(r,7927)))}setupInspectionEvents(){const e=(e,t)=>{e&&(0,T.W)({timeStamp:e.timeStamp,loaded:"complete"===e.target.readyState,type:"window",name:t,data:e.target.location+""})};(0,N.sB)(t=>{e(t,"DOMContentLoaded")}),(0,N.GG)(t=>{e(t,"load")}),(0,N.Qr)(t=>{e(t,"navigate")}),this.ee.on(u.tS.UPDATE,(e,t)=>{(0,T.W)({type:"lifecycle",name:"session",data:t})})}}class F extends e.d{constructor(e){var t;(super(),g.gm)?(this.features={},(0,i.bQ)(this.agentIdentifier,this),this.desiredFeatures=new Set(e.features||[]),this.desiredFeatures.add(U),_(this,e,e.loaderType||"agent"),t=this,(0,L.Y)(k.cD,function(e,r,n=!1){if("string"==typeof e){if(["string","number","boolean"].includes(typeof r)||null===r)return(0,L.U)(t,e,r,k.cD,n);(0,l.R)(40,typeof r)}else(0,l.R)(39,typeof e)},t),function(e){(0,L.Y)(k.Dl,function(t,r=!1){if("string"!=typeof t&&null!==t)return void(0,l.R)(41,typeof t);const n=e.info.jsAttributes["enduser.id"];r&&null!=n&&n!==t?(0,A.p)("api-setUserIdAndResetSession",[t],void 0,"session",e.ee):(0,L.U)(e,"enduser.id",t,k.Dl,!0)},e)}(this),function(e){(0,L.Y)(k.nb,function(t){if("string"==typeof t||null===t)return(0,L.U)(e,"application.version",t,k.nb,!1);(0,l.R)(42,typeof t)},e)}(this),function(e){(0,L.Y)("start",function(){e.ee.emit("manual-start-all")},e)}(this),function(e){(0,L.Y)(k.Pv,function(t=!0){if("boolean"==typeof t){if((0,A.p)("api-"+k.Pv,[t],void 0,"session",e.ee),e.runtime.consented=t,t){const t=e.features.page_view_event;t.onAggregateImported.then(e=>{const r=t.featAggregate;e&&!r.sentRum&&r.sendRum?.()})}}else(0,l.R)(65,typeof t)},e)}(this),this.run()):(0,l.R)(21)}get config(){return{info:this.info,init:this.init,loader_config:this.loader_config,runtime:this.runtime}}get api(){return this}run(){try{const e=function(e){const t={};return n.forEach(r=>{t[r]=!!e[r]?.enabled}),t}(this.init),r=[...this.desiredFeatures],i=this.init.feature_flags.includes("rum_v2");r.sort((e,r)=>t.P3[e.featureName]-t.P3[r.featureName]),r.forEach(r=>{if(!e[r.featureName]&&(i||r.featureName!==t.K7.pageViewEvent))return;const n=function(e){switch(e){case t.K7.ajax:return[t.K7.jserrors];case t.K7.sessionTrace:return[t.K7.ajax,t.K7.pageViewEvent];case t.K7.sessionReplay:return[t.K7.sessionTrace];case t.K7.pageViewTiming:return[t.K7.pageViewEvent];default:return[]}}(r.featureName).filter(e=>!(e in this.features));n.length>0&&(0,l.R)(36,{targetFeature:r.featureName,missingDependencies:n}),this.features[r.featureName]=new r(this)})}catch(e){(0,l.R)(22,e);for(const e in this.features)this.features[e].abortHandler?.();const t=(0,i.Zm)();delete t.initializedAgents[this.agentIdentifier]?.features,delete this.sharedAggregator;return t.ee.get(this.agentIdentifier).abort(),!1}}}var V=r(2843),z=r(782);class G extends W{static featureName=z.T;constructor(e){super(e,z.T),g.RI&&((0,V.u)(()=>(0,A.p)("docHidden",[(0,O.t)()],void 0,z.T,this.ee),!0),(0,V.G)(()=>(0,A.p)("winPagehide",[(0,O.t)()],void 0,z.T,this.ee)),this.importAggregator(e,()=>r.e(891).then(r.bind(r,9018))))}}var q=r(3969);class Y extends W{static featureName=q.TZ;constructor(e){super(e,q.TZ),this.importAggregator(e,()=>r.e(891).then(r.bind(r,6555)))}}var Z=r(6774),J=r(3878),X=r(3304);class Q{constructor(e,t,r,n,i){this.name="UncaughtError",this.message="string"==typeof e?e:(0,X.A)(e),this.sourceURL=t,this.line=r,this.column=n,this.__newrelic=i}}function ee(e){return ne(e)?e:new Q(void 0!==e?.message?e.message:e,e?.filename||e?.sourceURL,e?.lineno||e?.line,e?.colno||e?.col,e?.__newrelic,e?.cause)}function te(e){const t="Unhandled Promise Rejection: ";if(!e?.reason)return;if(ne(e.reason)){try{e.reason.message.startsWith(t)||(e.reason.message=t+e.reason.message)}catch(e){}return ee(e.reason)}const r=ee(e.reason);return(r.message||"").startsWith(t)||(r.message=t+r.message),r}function re(e){if(e.error instanceof SyntaxError&&!/:\d+$/.test(e.error.stack?.trim())){const t=new Q(e.message,e.filename,e.lineno,e.colno,e.error.__newrelic,e.cause);return t.name=SyntaxError.name,t}return ne(e.error)?e.error:ee(e)}function ne(e){return e instanceof Error&&!!e.stack}function ie(e,r,n,i,s=(0,O.t)()){"string"==typeof e&&(e=new Error(e)),(0,A.p)("err",[e,s,!1,r,n.runtime.isRecording,void 0,i],void 0,t.K7.jserrors,n.ee),(0,A.p)("uaErr",[],void 0,t.K7.genericEvents,n.ee)}var se=r(993),ae=r(3785);function oe(e,{customAttributes:t={},level:r=se.p_.INFO}={},n,i,s=(0,O.t)()){(0,ae.R)(n.ee,e,t,r,!1,i,s)}function ce(e,r,n,i,s=(0,O.t)()){(0,A.p)("api-"+k.hG,[s,e,r,i],void 0,t.K7.genericEvents,n.ee)}function de(e,r,n,i,s=(0,O.t)()){const{start:a,end:o,customAttributes:c}=r||{},d={customAttributes:c||{}};if("object"!=typeof d.customAttributes||"string"!=typeof e||0===e.length)return void(0,l.R)(57);const u=(e,t)=>
5null==e?t:"number"==typeof e?e:e instanceof PerformanceMark?e.startTime:Number.NaN;if(d.start=u(a,0),d.end=u(o,s),Number.isNaN(d.start)||Number.isNaN(d.end))(0,l.R)(57);else{if(d.duration=d.end-d.start,!(d.duration<0))return(0,A.p)("api-"+k.V1,[d,e,i],void 0,t.K7.genericEvents,n.ee),d;(0,l.R)(58)}}function ue(e,r={},n,i,s=(0,O.t)()){(0,A.p)("api-"+k.fF,[s,e,r,i],void 0,t.K7.genericEvents,n.ee)}var le=r(5718);const fe=(e,t)=>e?.nrMfeId===t.id&&(!e?.nrMfeObserved||e?.nrMfeObserved===t.instance),he=e=>{try{return g.gm.CSS.escape(e)}catch(t){return e}},pe=(e,t={})=>{const r=t.id,n=t.instance;if(!e||!r||!n)return!1;try{let r=1===e.nodeType?e:e.parentElement;for(;r?.tagName;){if(fe(r.dataset,t))return r.dataset.nrMfeObserved=n,!0;r=r.parentNode}}catch(e){}return!1},ge=(e,t)=>{const r=g.gm.document?.querySelectorAll('[data-nr-mfe-id="'.concat(he(e.id),'"]')),n=(Array.from(r)||[]).find(t=>fe(t.dataset,e));let i=!!n;i&&(n.dataset.nrMfeObserved??=e.instance);const s=new g.gm.MutationObserver(r=>{r.forEach(r=>{r.addedNodes.forEach(r=>{const n=1===r.nodeType?r:null;!i&&fe(n?.dataset,e)&&(s.disconnect(),s.observe(n,{childList:!0,subtree:!0}),i=!0,n.dataset.nrMfeObserved=e.instance),(e=>{try{return e?.textContent?.trim()||["img","video","canvas","svg"].includes(e?.nodeName?.toLowerCase())}catch(e){return!1}})(r)&&(i||pe(r,e))&&t(r,s)})})});return s.observe(n||g.gm.document,{childList:!0,subtree:!0}),s},me=(e,t,r)=>{try{const n=new g.gm.PerformanceObserver(e=>{e.getEntries().forEach(r)});return n.observe(t),e.push(n),n}catch(e){return null}};function ve(e,t){let r,n,i=!1;const s=e=>null==e?e:e-(t?.scriptStart||t?.registeredAt||0),a={fcp:{get value(){const e=s(r);return e>1e4?void 0:e},set value(e){i||(r=e)}},lcp:{get value(){if(void 0!==a.fcp.value)return s(n)},set value(e){i||(n=e)}},cls:{value:void 0},inp:{value:void 0},disconnect:()=>{}};if(!(e&&g.RI&&g.gm.MutationObserver&&g.gm.PerformanceObserver))return a;const o=[];setTimeout(()=>{r||a.disconnect()},1e4);const c=()=>{if(!i){if(null==r){const e=(0,O.t)();if(s(e)>1e4)return void a.disconnect();r=e}n??=(0,O.t)(),a.cls.value??=0}},d=ge(e,(e,t)=>{c(),t.disconnect()});o.push(d);let u=0,l=null;const f=new Set;try{l=new g.gm.ResizeObserver(e=>{i||e.forEach(e=>{try{const t=e.contentRect.width*e.contentRect.height;t>u&&(u=t,a.lcp.value=(0,O.t)()),l.unobserve(e.target)}catch(e){}})})}catch(e){}const h=ge(e,e=>{if(c(),l)try{const t=1===e.nodeType?e:e.parentElement;t&&!f.has(t)&&(f.add(t),"IMG"===t.tagName?t.complete?l.observe(t):t.addEventListener("load",()=>{l.observe(t)},{once:!0}):"VIDEO"===t.tagName?t.readyState>=2?l.observe(t):t.addEventListener("loadeddata",()=>{l.observe(t)},{once:!0}):l.observe(t))}catch(e){}});l&&o.push(l),o.push(h),me(o,{type:"layout-shift",buffered:!0},t=>{i||t.hadRecentInput||(t.sources||[]).some(r=>!!pe(r.node,e)&&(c(),a.cls.value+=t.value,!0))}),me(o,{type:"event",buffered:!0,durationThreshold:40},t=>{!i&&t.interactionId&&pe(t.target,e)&&(void 0===a.inp.value||t.duration>a.inp.value)&&(c(),a.inp.value=t.duration)});const p=["pointerdown","keydown"],m=()=>{p.forEach(e=>{g.gm.removeEventListener(e,v,{passive:!0})})};a.disconnect=()=>{i=!0,o.forEach(e=>{try{e?.disconnect()}catch(e){}}),m(),["visibilitychange","pagehide"].forEach(e=>{g.gm.removeEventListener(e,a.disconnect,{once:!0,passive:!0})})};const v=t=>{pe(t?.target,e)&&((()=>{try{h?.disconnect(),l?.disconnect()}catch(e){}})(),m())};p.forEach(e=>{g.gm.addEventListener(e,v,{passive:!0})}),["visibilitychange","pagehide"].forEach(e=>{g.gm.addEventListener(e,a.disconnect,{once:!0,passive:!0})});const y=g.gm.document?.querySelectorAll('[data-nr-mfe-id="'.concat(he(e.id),'"]'));return Array.from(y||[]).some(t=>fe(t.dataset,e))&&c(),a}var ye=r(9566),be=r(7560),Ee=r(9119);const Re=["entry","scripts","all"],we=["name","id","type"],Te=new Map([[ce,"addPageAction"],[oe,"log"],[de,"measure"],[ie,"noticeError"],[ue,"recordCustomEvent"]]),Se={experimental:(0,C.J)(()=>(0,l.R)(54,"newrelic.register")),disabled:(0,C.J)(()=>(0,l.R)(55)),invalidTarget:(0,C.J)(e=>(0,l.R)(48,e)),deregistered:(0,C.J)(()=>(0,l.R)(68)),invalidTimingMethod:(0,C.J)(e=>(0,l.R)(80,e)),duplicateName:(0,C.J)(e=>(0,l.R)(81,e)),duplicateId:(0,C.J)(e=>(0,l.R)(82,e))};function Ae(e){(0,L.Y)(k.eY,function(t){return xe(e,t)},e)}function xe(e,r){Se.experimental(),r||={},r.instance=(0,ye.LA)(8),r.type=R.f.MFE,r.licenseKey||=e.info.licenseKey,r.blocked=!1,("object"!=typeof r.tags||null===r.tags||Array.isArray(r.tags))&&(r.tags={}),r.parent??={get id(){return e.runtime.appMetadata.agents?.[0].entityGuid},type:R.f.BA},r.manifest=(0,be.N)(r.manifest),void 0===r.timingMethod||Re.includes(r.timingMethod)||(Se.invalidTimingMethod(r.timingMethod),r.timingMethod=void 0);const n=(0,le.Qr)(r);r.manifest&&(0,le.xo)(n,r);const i=ve(r,n),s=(0,Ee.L)(""+location),a={};Object.prototype.hasOwnProperty.call(r,"attributes")||Object.defineProperty(r,"attributes",{get:()=>({...a,"source.id":r.id,"source.name":r.name,"source.type":r.type,"parent.type":r.parent?.type||R.f.BA,"parent.id":r.parent?.id})}
5),Object.entries(r.tags).forEach(([e,t])=>{we.includes(e)||(a["source.".concat(e)]=t)});let o=()=>{};const c=e.runtime.registeredEntities,d=e=>{r.blocked=!0,o=e};function u(e){return"string"==typeof e&&!!e.trim()&&e.trim().length<501}e.init.api.register.enabled||d(Se.disabled),u(r.id)&&u(r.name)||d(()=>Se.invalidTarget(r)),c.forEach(e=>{try{const{name:t,id:n}=e.metadata.target;t===r.name&&n!==r.id&&Se.duplicateName(r),n===r.id&&t!==r.name&&Se.duplicateId(r)}catch(e){}});const f={addPageAction:(t,n={})=>m(ce,[t,{...a,...n},e],r),deregister:()=>{p(),d(Se.deregistered)},log:(t,n={})=>m(oe,[t,{...n,customAttributes:{...a,...n.customAttributes||{}}},e],r),measure:(t,n={})=>m(de,[t,{...n,customAttributes:{...a,...n.customAttributes||{}}},e],r),noticeError:(t,n={})=>m(ie,[t,{...a,...n},e],r),recordCustomEvent:(t,n={})=>m(ue,[t,{...a,...n},e],r),setApplicationVersion:e=>g("application.version",e),setCustomAttribute:(e,t)=>g(e,t),setUserId:e=>g("enduser.id",e),metadata:{get customAttributes(){return a},target:r,timings:n,vitals:i,events:{latestTimestamp:void 0}}},h=()=>(r.blocked&&o(),r.blocked);function p(){if(n.reportedAt)return;n.reportedAt=(0,O.t)(),i.disconnect(),n.fcp=i.fcp,n.lcp=i.lcp,n.cls=i.cls,n.inp=i.inp;const e=n.fetchEnd-n.fetchStart,t=n.scriptEnd-n.scriptStart,r={assetUrl:n.asset,assetType:n.type,registerUrl:s,deregisterUrl:(0,Ee.L)(""+location),pageUrl:void 0,currentUrl:void 0,timeAlive:n.reportedAt-n.registeredAt,timeToBeRequested:n.fetchStart,timeToExecute:t,timeToFetch:e,timeToLoad:e+t,t
5imeToRegister:n.registeredAt,totalWeight:n.totalWeight,...void 0!==n.renderBlocking&&{renderBlocking:n.renderBlocking},...i.fcp.value>=0&&{"vitals.fcp.value":i.fcp.value},...i.lcp.value>=0&&{"vitals.lcp.value":i.lcp.value},...i.cls.value>=0&&{"vitals.cls.value":i.cls.value},...i.inp.value>=0&&{"vitals.inp.value":i.inp.value}};f.recordCustomEvent("MicroFrontEndTiming",r)}h()||(c.push(f),(0,V.G)(p));const g=(e,t)=>{h()||(a[e]=t)},m=(r,n,i)=>{if(h()&&r!==xe)return;const s=f.metadata.events.latestTimestamp??(0,O.t)();f.metadata.events.latestTimestamp=void 0;const a=Te.get(r)||"unknown";(0,A.p)(q.xV,["API/register/".concat(a,"/called")],void 0,t.K7.metrics,e.ee);try{return r(...n,i,s)}catch(e){(0,l.R)(50,e)}};return f}class _e extends W{static featureName=Z.T;constructor(e){var t;super(e,Z.T),t=e,(0,L.Y)(k.o5,(e,r)=>ie(e,r,t),t),function(e){(0,L.Y)(k.bt,function(t){e.runtime.onerror=t},e)}(e),function(e){let t=0;(0,L.Y)(k.k6,function(e,r){++t>10||(this.runtime.releaseIds[e.slice(-200)]=(""+r).slice(-200))},e)}(e),Ae(e);try{this.removeOnAbort=new AbortController}catch(e){}this.ee.on("internal-error",(t,r)=>{this.abortHandler&&(0,A.p)("ierr",[ee(t),(0,O.t)(),!0,{},e.runtime.isRecording,r],void 0,this.featureName,this.ee)}),g.gm.addEventListener("unhandledrejection",t=>{this.abortHandler&&(0,A.p)("err",[te(t),(0,O.t)(),!1,{unhandledPromiseRejection:1},e.runtime.isRecording],void 0,this.featureName,this.ee)},(0,J.jT)(!1,this.removeOnAbort?.signal)),g.gm.addEventListener("error",t=>{this.abortHandler&&(0,A.p)("err",[re(t),(0,O.t)(),!1,{},e.runtime.isRecording],void 0,this.featureName,this.ee)},(0,J.jT)(!1,this.removeOnAbort?.signal)),this.abortHandler=this.#n,this.importAggregator(e,()=>r.e(891).then(r.bind(r,9377)))}#n(){this.removeOnAbort?.abort(),this.abortHandler=void 0}}var Oe=r(8990);let ke=1;function Le(e){const t=typeof e;return!e||"object"!==t&&"function"!==t?-1:e===g.gm?0:(0,Oe.I)(e,"nr@id",function(){return ke++})}function Me(e){if("string"==typeof e)return e.length;if("object"==typeof e){if("undefined"!=typeof ArrayBuffer&&e instanceof ArrayBuffer&&e.byteLength)return e.byteLength;if("undefined"!=typeof Blob&&e instanceof Blob&&e.size)return e.size;if(!("undefined"!=typeof FormData&&e instanceof FormData))try{return(0,X.A)(e).length}catch(e){return}}}var Pe=r(8139),Ne=r(3434),je=r(5732);const Ie={},Ce=["open","send","setRequestHeader"];function De(e,t){var r=e||w.ee;const n=function(e){return(e||w.ee).get("xhr")}(r);if(void 0===g.gm.XMLHttpRequest)return n;if(Ie[n.debugId]++)return n;Ie[n.debugId]=1,(0,Pe.u)(r,t);var i=(0,Ne.YM)(n,void 0,t),s=g.gm.XMLHttpRequest,a=g.gm.MutationObserver,o=g.gm.Promise,c=g.gm.setInterval,d="readystatechange",u=["onload","onerror","onabort","onloadstart","onloadend","onprogress","ontimeout"],f=[],h=g.gm.XMLHttpRequest=function(e){const r=new s(e),a=n.context(r);a.targets=(0,je.$5)(t);try{n.emit("new-xhr",[r],a),r.addEventListener(d,(o=a,function(){var e=this;e.readyState>3&&!o.resolved&&(o.resolved=!0,n.emit("xhr-resolved",[],e)),i.inPlace(e,u,"fn-",E)}),(0,J.jT)(!1))}catch(e){(0,l.R)(15,e);try{n.emit("internal-error",[e])}catch(e){}}var o;return r};function p(e,t){i.inPlace(t,["onreadystatechange"],"fn-",E)}if(function(e,t){for(var r in e)t[r]=e[r]}(s,h),h.prototype=s.prototype,i.inPlace(h.prototype,Ce,"-xhr-",E),n.on("send-xhr-start",function(e,t){p(e,t),function(e){f.push(e),a&&(m?m.then(b):c?c(b):(v=-v,y.data=v))}(t)}),n.on("open-xhr-start",p),a){var m=o&&o.resolve();if(!c&&!o){var v=1,y=document.createTextNode(v);new a(b).observe(y,{characterData:!0})}}else r.on("fn-end",function(e){e[0]&&e[0].type===d||b()});function b(){for(var e=0;e<f.length;e++)p(0,f[e]);f.length&&(f=[])}function E(e,t){return t}return n}var Be="fetch-",He=Be+"body-",We=["arrayBuffer","blob","json","text","formData"],Ke=g.gm.Request,Ue=g.gm.Response,Fe="prototype";const Ve={};function ze(e,t){const r=function(e){return(e||w.ee).get("fetch")}(e);if(!(Ke&&Ue&&g.gm.fetch))return r;if(Ve[r.debugId]++)return r;function n(e,n,i){var s=e[n];"function"==typeof s&&(e[n]=function(){var e=[...arguments];const n={},a=(0,je.$5)(t);var o;r.emit(i+"before-start",[e],n),n[w.P]&&n[w.P].dt&&(o=n[w.P].dt);var c=s.apply(this,e);return r.emit(i+"start",[e,o],c),c.then(function(e){return r.emit(i+"end",[null,e,a],c),e},function(e){throw r.emit(i+"end",[e,void 0,a],c),e})})}
5return Ve[r.debugId]=1,We.forEach(e=>{n(Ke[Fe],e,He),n(Ue[Fe],e,He)}),n(g.gm,"fetch",Be),r.on(Be+"end",function(e,n,i){var s=this;if(s.targets=i||[t.runtime.v2Target],n){var a=n.headers.get("content-length");null!==a&&(s.rxSize=a),r.emit(Be+"done",[null,n],s)}else r.emit(Be+"done",[e],s)}),r}var Ge=r(7485);class qe{constructor(e){this.agentRef=e}generateTracePayload(e){const t=this.agentRef.loader_config;if(!this.shouldGenerateTrace(e)||!t)return null;var r=(t.accountID||"").toString()||null,n=(t.agentID||"").toString()||null,i=(t.trustKey||"").toString()||null;if(!r||!n)return null;var s,a=(0,ye.ZF)(),o=(0,ye.el)(),c=Date.now();this.agentRef.runtime?.timeKeeper?.ready&&(s=Math.floor(this.agentRef.runtime.timeKeeper.correctAbsoluteTimestamp(c)));var d={spanId:a,traceId:o,timestamp:c,timestampCorrected:s};return(e.sameOrigin||this.isAllowedOrigin(e)&&this.useTraceContextHeadersForCors())&&(d.traceContextParentHeader=this.generateTraceContextParentHeader(a,o),d.traceContextStateHeader=this.generateTraceContextStateHeader(a,s??c,r,n,i)),(e.sameOrigin&&!this.excludeNewrelicHeader()||!e.sameOrigin&&this.isAllowedOrigin(e)&&this.useNewrelicHeaderForCors())&&(d.newrelicHeader=this.generateTraceHeader(a,o,s??c,r,n,i)),d}generateTraceContextParentHeader(e,t){return"00-"+t+"-"+e+"-01"}generateTraceContextStateHeader(e,t,r,n,i){return i+"@nr=0-1-"+r+"-"+n+"-"+e+"----"+t}generateTraceHeader(e,t,r,n,i,s){if(!("function"==typeof g.gm?.btoa))return null;var a={v:[0,1],d:{ty:"Browser",ac:n,ap:i,id:e,tr:t,ti:r}};return s&&n!==s&&(a.d.tk=s),btoa((0,X.A)(a))}shouldGenerateTrace(e){return this.agentRef.init?.distributed_tracing?.enabled&&this.isAllowedOrigin(e)}isAllowedOrigin(e){var t=!1;const r=this.agentRef.init?.distributed_tracing;if(e.sameOrigin)t=!0;else if(r?.allowed_origins instanceof Array)for(var n=0;n<r.allowed_origins.length;n++){var i=(0,Ge.D)(r.allowed_origins[n]);if(e.hostname===i.hostname&&e.protocol===i.protocol&&e.port===i.port){t=!0;break}}return t}excludeNewrelicHeader(){var e=this.agentRef.init?.distributed_tracing;return!!e&&!!e.exclude_newrelic_header}useNewrelicHeaderForCors(){var e=this.agentRef.init?.distributed_tracing;return!!e&&!1!==e.cors_use_newrelic_header}useTraceContextHeadersForCors(){var e=this.agentRef.init?.distributed_tracing;return!!e&&!!e.cors_use_tracecontext_headers}}var Ye=r(7295);function Ze(e){return"string"==typeof e?e:e instanceof(0,i.dV)().o.REQ?e.url:g.gm?.URL&&e instanceof URL?e.href:void 0}function $e(e,t){var r=(0,Ge.D)(t),n=e.params||e;n.hostname=r.hostname,n.port=r.port,n.protocol=r.protocol,n.host=r.hostname+":"+r.port,n.pathname=r.pathname,e.parsedOrigin=r,e.sameOrigin=r.sameOrigin}var Je=["load","error","abort","timeout"],Xe=Je.length,Qe=(0,i.dV)().o.REQ,et=(0,i.dV)().o.XHR;const tt="X-NewRelic-App-Data",rt="internal-error";class nt extends W{static featureName=c.TZ;constructor(e){super(e,c.TZ),this.dt=new qe(e),this.handler=(e,t,r,n)=>(0,A.p)(e,t,r,n,this.ee);try{const e={xmlhttprequest:"xhr",fetch:"fetch",beacon:"beacon"};g.gm?.performance?.getEntriesByType("resource").forEach(r=>{if(r.initiatorType in e&&0!==r.responseStatus){const n={status:r.responseStatus},i={rxSize:r.transferSize,duration:Math.floor(r.duration),cbTime:0};$e(n,r.name),this.handler("xhr",[n,i,r.startTime,r.responseEnd,e[r.initiatorType]],void 0,t.K7.ajax)}})}catch(e){}ze(this.ee,e),De(this.ee,e),function(e,r,n,i){const s=[c.mo.ALL,c.mo.FAILURES].includes(e.init.ajax?.capture_payloads);function a(e){var t=this;t.totalCbs=0,t.called=0,t.cbTime=0,t.end=S,t.ended=!1,t.xhrGuids={},t.lastSize=null,t.loadCaptureCalled=!1,t.params=this.params||{},t.metrics=this.metrics||{},t.latestLongtaskEnd=0,e.addEventListener("load",function(r){_(t,e)},(0,J.jT)(!1)),g.lR||e.addEventListener("progress",function(e){t.lastSize=e.loaded},(0,J.jT)(!1))}function o(e){this.params={method:e[0]},$e(this,e[1]),this.metrics={}}function d(t,r){e.loader_config.xpid&&this.sameOrigin&&r.setRequestHeader("X-NewRelic-ID",e.loader_config.xpid);var n=i.generateTracePayload(this.parsedOrigin);if(n){var s=!1;n.newrelicHeader&&(r.setRequestHeader("newrelic",n.newrelicHeader),s=!0),n.traceContextParentHeader&&(r.setRequestHeader("traceparent",n.traceContextParentHeader),n.traceContextStateHeader&&r.setRequestHeader("tracestate",n.traceContextStateHeader),s=!0),s&&(this.dt=n)}}function u(e,t){s&&e.length>=2&&(this.requestHeaders??={},this.requestHeaders[e[0].toLowerCase()]=e[1])}function l(e,t){var n=this.metrics,i=e[0],s=this;if(n&&i){var a=Me(i);a&&(n.txSize=a)}this.startTime=(0,O.t)(),this.requestBody=i,this.listener=function(e){try{"abort"!==e.type||s.loadCaptureCalled||(s.params.aborted=!0),("load"
5!==e.type||s.called===s.totalCbs&&(s.onloadCalled||"function"!=typeof t.onload)&&"function"==typeof s.end)&&s.end(t)}catch(e){try{r.emit(rt,[e])}catch(e){}}};for(var o=0;o<Xe;o++)t.addEventListener(Je[o],this.listener,(0,J.jT)(!1))}function f(e,t,r){this.cbTime+=e,t?this.onloadCalled=!0:this.called+=1,this.called!==this.totalCbs||!this.onloadCalled&&"function"==typeof r.onload||"function"!=typeof this.end||this.end(r)}function h(e,t){var r=""+Le(e)+!!t;this.xhrGuids&&!this.xhrGuids[r]&&(this.xhrGuids[r]=!0,this.totalCbs+=1)}function p(e,t){var r=""+Le(e)+!!t;this.xhrGuids&&this.xhrGuids[r]&&(delete this.xhrGuids[r],this.totalCbs-=1)}function m(){this.endTime=(0,O.t)()}function v(e,t){t instanceof et&&"load"===e[0]&&r.emit("xhr-load-added",[e[1],e[2]],t)}function y(e,t){t instanceof et&&"load"===e[0]&&r.emit("xhr-load-removed",[e[1],e[2]],t)}function b(e,t,r){t instanceof et&&("onload"===r&&(this.onload=!0),("load"===(e[0]&&e[0].type)||this.onload)&&(this.xhrCbStart=(0,O.t)()))}function E(e,t){this.xhrCbStart&&r.emit("xhr-cb-time",[(0,O.t)()-this.xhrCbStart,this.onload,t],t)}function R(e){var t,r=e[1]||{};if("string"==typeof e[0]?0===(t=e[0]).length&&g.RI&&(t=""+g.gm.location.href):e[0]&&e[0].url?t=e[0].url:g.gm?.URL&&e[0]&&e[0]instanceof URL?t=e[0].href:"function"==typeof e[0].toString&&(t=e[0].toString()),"string"==typeof t&&0!==t.length){t&&(this.parsedOrigin=(0,Ge.D)(t),this.sameOrigin=this.parsedOrigin.sameOrigin);var n=i.generateTracePayload(this.parsedOrigin);if(n&&(n.newrelicHeader||n.traceContextParentHeader))if(e[0]&&e[0].headers)o(e[0].headers,n)&&(this.dt=n);else{var s={};for(var a in r)s[a]=r[a];s.headers=new Headers(r.headers||{}),o(s.headers,n)&&(this.dt=n),e.length>1?e[1]=s:e.push(s)}}function o(e,t){var r=!1;return t.newrelicHeader&&(e.set("newrelic",t.newrelicHeader),r=!0),t.traceContextParentHeader&&(e.set("traceparent",t.traceContextParentHeader),t.traceContextStateHeader&&e.set("tracestate",t.traceContextStateHeader),r=!0),r}}function w(e,t){this.params={},this.metrics={},this.startTime=(0,O.t)(),this.dt=t;let[r,n={}]=e;$e(this,Ze(r));const i=(""+(r&&r instanceof Qe&&r.method||n.method||"GET")).toUpperCase();this.params.method=i,this.txSize=Me(n.body||r?.body)||0;try{var a=n.headers||r?.headers;if(s&&a)if(this.requestHeaders??={},a instanceof Headers)a.forEach(function(e,t){this.requestHeaders[t.toLowerCase()]=e}.bind(this));else if("object"==typeof a)for(var o in a)this.requestHeaders[o.toLowerCase()]=a[o]}catch(e){}this.requestBody=n.body||r?.body}function T(e,t){if(this.endTime=(0,O.t)(),this.params||(this.params={}),(0,Ye.iW)(this.params))return;this.params.status=t?t.status:0;const n=()=>{const e=+this.rxSize,t=null==this.rxSize||isNaN(e)?void 0:e,r={txSize:this.txSize,rxSize:t,duration:this.endTime-this.startTime},n=[this.params,r,this.startTime,this.endTime,"fetch"];this.targets.forEach(e=>x(n,this,e))};t&&s?t.clone().text().then(e=>{this.responseBody=e,this.rxSize&&"0"!==this.rxSize&&0!==this.rxSize||void 0===e||0===this.params.status||(this.rxSize=Me(e)),t?.headers&&(this.responseHeaders={},t.headers.forEach(function(e,t){this.responseHeaders[t.toLowerCase()]=e}.bind(this)))}).catch(e=>{r.emit(rt,[e])}).finally(()=>{n()}):n()}function S(e){const t=this.params,n=this.metrics;if(this.ended)return;this.ended=!0;for(let t=0;t<Xe;t++)e.removeEventListener(Je[t],this.listener,!1);if(t.aborted)return;if((0,Ye.iW)(t))return;if(n.duration=this.endTime-this.startTime,this.loadCaptureCalled||4!==e.readyState?null==t.status&&(t.status=0):_(this,e),n.cbTime=this.cbTime,s){try{this.responseBody=e.responseText}catch(t){this.responseBody=e.response}if((!n.rxSize||0===n.rxSize)&&void 0!==this.responseBody&&0!==t.status){const e=Me(this.responseBody);void 0!==e&&(n.rxSize=e)}try{this.responseHeaders=function(e){const t={};return e?(e.split("\r\n").forEach(function(e){const r=e.indexOf(": ");if(r>0){const n=e.substring(0,r),i=e.substring(r+2);t[n.toLowerCase()]=i}}),t):t}(e.getAllResponseHeaders())}catch(e){r.emit(rt,[e])}}const i=[t,n,this.startTime,this.endTime,"xhr"];this.targets.forEach(e=>x(i,this,e))}function x(e,r,i){n("xhr",[...e,i],r,t.K7.ajax)}function _(e,n){e.params.status=n.status;var i=function(e,t){var r=e.responseType;return"json"===r&&null!==t?t:"arraybuffer"===r||"blob"===r||"json"===r?Me(e.response):"text"===r||""===r||void 0===r?Me(e.responseText):void 0}(n,e.lastSize);if(void 0!==i&&0!==n.status&&(e.metrics.rxSize=i),e.sameOrigin&&n.getAllResponseHeaders().indexOf(tt)>=0){var s=n.getResponseHeader(tt);s&&((0,A.p)("sm",["Ajax/CrossApplicationTracing/Header/Seen"],void 0,t.K7.metrics,r),e.params.cat=s.split(", ").pop())}e.loadCaptureCalled=!0}r.on("new-xhr",a),r.on("open-xhr-start",o),r.on("open-xhr-end",d),r.on("send-xhr-start",l),r.on("setRequestHeader-xhr-start",u),r.on("xhr-cb-time",f),r.on("xhr-load-added",h),r.on("xhr-load-removed",p),r.on("xhr-resolved",m),r.on("addEventListener-end",v),r.on("removeEventListener-end",y),r.on("fn-end",E),r.on("fetch-before-start",R),r.on("fetch-start",w),r.on("fn-start",b),r.on("fetch-done",T)}(e,this.ee,this.handler,this.dt),this.importAggregator(e,()=>r.e(891).then(r.bind(r,3845)))}}const it={},st=["pushState","replaceState"];function at(e,t){const r=function(e){return(e||w.ee).get("history")}(e);return!g.RI||it[r.debugId]++||(it[r.debugId]=1,(0,Ne.YM)(r,void 0,t).inPlace(window.history,st,"-")),r}var ot=r(3738);function ct(e){(0,L.Y)(k.BL,function(r=Date.now()){const n=r-g.WN;n<0&&(0,l.R)(62,r),(0,A.p)(q.XG,[k.BL,{time:n}],void 0,t.K7.metrics,e.ee),e.addToTrace({name:k.BL,start:r,origin:"nr"}),(0,A.p)("api-"+k.hG,[n,k.BL],void 0,t.K7.genericEvents,e.ee)},e)}const{He:dt,bD:ut,d3:lt,Kp:ft,TZ:ht,Lc:pt,uP:gt,Rz:mt}=ot;class vt extends W{static featureName=ht;constructor(e){var n;super(e,ht),n=e,(0,L.Y)(k.U2,function(e){if(!(e&&"object"==typeof e&&e.name&&e.start))return;const r={n:e.name,s:e.start-g.WN,e:(e.end||e.start)-g.WN,o:e.origin||"",t:"api"};r.s<0||r.e<0||r.e<r.s?(0,l.R)(61,{start:r.s,end:r.e}):(0,A.p)("bstApi",[r],void 0,t.K7.sessionTrace,n.ee)},n),ct(e);
5if(!(0,I.V)(e.init))return void this.deregisterDrain();const i=this.ee;let s;at(i,e),this.eventsEE=(0,Pe.u)(i,e),this.eventsEE.on(gt,function(e,t){this.bstStart=(0,O.t)()}),this.eventsEE.on(pt,function(e,r){(0,A.p)("bst",[e[0],r,this.bstStart,(0,O.t)()],void 0,t.K7.sessionTrace,i)}),i.on(mt+lt,function(e){this.time=(0,O.t)(),this.startPath=location.pathname+location.hash}),i.on(mt+ft,function(e){(0,A.p)("bstHist",[location.pathname+location.hash,this.startPath,this.time],void 0,t.K7.sessionTrace,i)});try{s=new PerformanceObserver(e=>{const r=e.getEntries();(0,A.p)(dt,[r],void 0,t.K7.sessionTrace,i)}),s.observe({type:ut,buffered:!0})}catch(e){}this.importAggregator(e,()=>r.e(891).then(r.bind(r,6974)),{resourceObserver:s})}}var yt=r(733),bt=r(6344);class Et extends W{static featureName=bt.TZ;#i;recorder;constructor(e){var n;let i;super(e,bt.TZ),n=e,(0,L.Y)(k.CH,function(){(0,A.p)(k.CH,[],void 0,t.K7.sessionReplay,n.ee)},n),function(e){(0,L.Y)(k.Tb,function(){(0,A.p)(k.Tb,[],void 0,t.K7.sessionReplay,e.ee)},e)}(e);const s="".concat(u.Wt).concat((0,yt.Y)(e.info.licenseKey,e.info.applicationID));try{i=JSON.parse(localStorage.getItem(s))}catch(e){}(0,j.SR)(e.init)&&this.ee.on(k.CH,()=>this.#s()),this.#a(i)&&this.importRecorder().then(e=>{e.startRecording(bt.Qb.PRELOAD,i?.sessionReplayMode)}),this.abortHandler=this.#n,this.importAggregator(this.agentRef,()=>r.e(891).then(r.bind(r,6167)),this),this.ee.on("err",e=>{this.blocked||this.agentRef.runtime.isRecording&&(this.errorNoticed=!0,(0,A.p)(bt.Vh,[e],void 0,this.featureName,this.ee))})}#a(e){return e&&(e.sessionReplayMode===u.g.FULL||e.sessionReplayMode===u.g.ERROR)||(0,j.Aw)(this.agentRef.init)}importRecorder(){return this.recorder?Promise.resolve(this.recorder):(this.#i??=Promise.all([r.e(891),r.e(222)]).then(r.bind(r,4866)).then(({Recorder:e})=>(this.recorder=new e(this),this.recorder)).catch(e=>{throw this.ee.emit("internal-error",[e]),this.blocked=!0,e}),this.#i)}#s(){this.blocked||(this.featAggregate?this.featAggregate.mode!==u.g.FULL&&this.featAggregate.initializeRecording(u.g.FULL,!0,bt.Qb.API):this.importRecorder().then(()=>{this.recorder.startRecording(bt.Qb.API,u.g.FULL)}))}#n(){this.recorder?.stopRecording()}}var Rt=r(981);const wt={},Tt=new Set;function St(e){return"string"==typeof e?{type:"string",size:(new TextEncoder).encode(e).length}:e instanceof ArrayBuffer?{type:"ArrayBuffer",size:e.byteLength}:e instanceof Blob?{type:"Blob",size:e.size}:e instanceof DataView?{type:"DataView",size:e.byteLength}:ArrayBuffer.isView(e)?{type:"TypedArray",size:e.byteLength}:{type:"unknown",size:0}}class At{constructor(e,t){this.timestamp=(0,O.t)(),this.currentUrl=(0,Ee.L)(window.location.href),this.socketId=(0,ye.LA)(8),this.requestedUrl=(0,Ee.L)(e),this.requestedProtocols=Array.isArray(t)?t.join(","):t||"",this.openedAt=void 0,this.protocol=void 0,this.extensions=void 0,this.binaryType=void 0,this.messageOrigin=void 0,this.messageCount=0,this.messageBytes=0,this.messageBytesMin=0,this.messageBytesMax=0,this.messageTypes=void 0,this.sendCount=0,this.sendBytes=0,this.sendBytesMin=0,this.sendBytesMax=0,this.sendTypes=void 0,this.closedAt=void 0,this.closeCode=void 0,this.closeReason="unknown",this.closeWasClean=void 0,this.connectedDuration=0,this.hasErrors=void 0}}class xt extends W{static featureName=o.TZ;constructor(e){super(e,o.TZ);const n=e.init.feature_flags.includes("websockets")||e.init.web_sockets?.enabled,s=!e.init.feature_flags.includes("no_spv"),a=[e.init.page_action.enabled,e.init.performance.capture_marks,e.init.performance.capture_measures,e.init.performance.resources.enabled,e.init.user_actions.enabled,n,s];var c;let d;if(c=e,(0,L.Y)(k.hG,(e,t)=>ce(e,t,c),c),function(e){(0,L.Y)(k.fF,(t,r)=>ue(t,r,e),e)}(e),ct(e),Ae(e),function(e){(0,L.Y)(k.V1,(t,r)=>de(t,r,e),e)}(e),this.removeOnAbort=new AbortController,this.abortHandler=()=>{this.removeOnAbort.abort(),this.abortHandler=void 0},n){const u=function(e,t){if(!(0,i.dV)().o.WS)return e;const r=e.get("websockets");if(wt[r.debugId]++)return r;wt[r.debugId]=1,(0,V.G)(()=>{const e=(0,O.t)();Tt.forEach(t=>{t.nrData.closedAt=e,t.nrData.closeCode=1001,t.nrData.closeReason="Page navigating away",t.nrData.closeWasClean=!1,t.nrData.openedAt&&(t.nrData.connectedDuration=e-t.nrData.openedAt),r.emit("ws",[t.nrData,t.targets],t)})});
5class n extends WebSocket{static name=Rt.R.WS;static toString(){return"function WebSocket() { [native code] }"}toString(){return"[object WebSocket]"}get[Symbol.toStringTag](){return n.name}#o(e){(e.__newrelic??={}).socketId=this.nrData.socketId,this.nrData.hasErrors??=!0}constructor(...e){super(...e),this.nrData=new At(e[0],e[1]),this.targets=(0,je.$5)(t),this.addEventListener("open",()=>{this.nrData.openedAt=(0,O.t)(),["protocol","extensions","binaryType"].forEach(e=>{this.nrData[e]=this[e]}),Tt.add(this)}),this.addEventListener("message",e=>{const{type:t,size:r}=St(e.data);this.nrData.messageOrigin??=(0,Ee.L)(e.origin),this.nrData.messageCount++,this.nrData.messageBytes+=r,this.nrData.messageBytesMin=Math.min(this.nrData.messageBytesMin||1/0,r),this.nrData.messageBytesMax=Math.max(this.nrData.messageBytesMax,r),(this.nrData.messageTypes??"").includes(t)||(this.nrData.messageTypes=this.nrData.messageTypes?"".concat(this.nrData.messageTypes,",").concat(t):t)}),this.addEventListener("close",e=>{this.nrData.closedAt=(0,O.t)(),this.nrData.closeCode=e.code,e.reason&&(this.nrData.closeReason=e.reason),this.nrData.closeWasClean=e.wasClean,this.nrData.connectedDuration=this.nrData.closedAt-this.nrData.openedAt,Tt.delete(this),r.emit("ws",[this.nrData,this.targets],this)})}addEventListener(e,t,...r){const n=this,i="function"==typeof t?function(...e){try{return t.apply(this,e)}catch(e){throw n.#o(e),e}}:t?.handleEvent?{handleEvent:function(...e){try{return t.handleEvent.apply(t,e)}catch(e){throw n.#o(e),e}}}:t;return super.addEventListener(e,i,...r)}send(e){if(this.readyState===WebSocket.OPEN){const{type:t,size:r}=St(e);this.nrData.sendCount++,this.nrData.sendBytes+=r,this.nrData.sendBytesMin=Math.min(this.nrData.sendBytesMin||1/0,r),this.nrData.sendBytesMax=Math.max(this.nrData.sendBytesMax,r),(this.nrData.sendTypes??"").includes(t)||(this.nrData.sendTypes=this.nrData.sendTypes?"".concat(this.nrData.sendTypes,",").concat(t):t)}try{return super.send(e)}catch(e){throw this.#o(e),e}}close(...e){try{super.close(...e)}catch(e){throw this.#o(e),e}}}return g.gm.WebSocket=n,r}(this.ee,e);u.on("ws",(e,t)=>{(0,A.p)("ws-complete",[e,t],void 0,this.featureName,this.ee)})}if(s){if("function"==typeof g.gm.ReportingObserver){const l=new g.gm.ReportingObserver(e=>{e.forEach(e=>{(0,A.p)("spv",[_t(e),(0,O.t)()],void 0,t.K7.genericEvents,this.ee)}),l.disconnect()},{types:["csp-violation"],buffered:!0});l.observe()}g.gm.addEventListener("securitypolicyviolation",e=>{(0,A.p)("spv",[_t(e),e.timeStamp],void 0,t.K7.genericEvents,this.ee)},(0,J.jT)(!1,this.removeOnAbort.signal))}if(g.RI){if(ze(this.ee,e),De(this.ee,e),d=at(this.ee,e),e.init.user_actions.enabled){function f(t){const r=(0,Ge.D)(t);return e.beacons.includes(r.hostname+":"+r.port)}function h(){d.emit("navChange")}o.Zp.forEach(e=>(0,J.sp)(e,e=>(0,A.p)("ua",[e],void 0,this.featureName,this.ee),!0)),o.qN.forEac
5h(e=>{const t=(0,C.s)(e=>{(0,A.p)("ua",[e],void 0,this.featureName,this.ee)},500,{leading:!0});(0,J.sp)(e,t)}),g.gm.addEventListener("error",()=>{(0,A.p)("uaErr",[],void 0,t.K7.genericEvents,this.ee)},(0,J.jT)(!1,this.removeOnAbort.signal)),this.ee.on("open-xhr-start",(e,r)=>{f(e[1])||r.addEventListener("readystatechange",()=>{2===r.readyState&&(0,A.p)("uaXhr",[],void 0,t.K7.genericEvents,this.ee)},(0,J.jT)(void 0,this.removeOnAbort.signal))}),this.ee.on("fetch-start",e=>{e.length>=1&&!f(Ze(e[0]))&&(0,A.p)("uaXhr",[],void 0,t.K7.genericEvents,this.ee)}),d.on("pushState-end",h),d.on("replaceState-end",h),window.addEventListener("hashchange",h,(0,J.jT)(!0,this.removeOnAbort.signal)),window.addEventListener("popstate",h,(0,J.jT)(!0,this.removeOnAbort.signal))}if(e.init.performance.resources.enabled&&g.gm.PerformanceObserver?.supportedEntryTypes.includes("resource")){new PerformanceObserver(e=>{e.getEntries().forEach(e=>{(0,A.p)("browserPerformance.resource",[e],void 0,this.featureName,this.ee)})}).observe({type:"resource",buffered:!0})}}a.some(e=>e)?this.importAggregator(e,()=>r.e(891).then(r.bind(r,8019))):this.deregisterDrain()}}function _t(e){const t=e.body??e;return{blockedUrl:t.blockedURL??e.blockedURI,documentUrl:t.documentURL??e.documentURI,effectiveDirective:t.effectiveDirective,originalPolicy:t.originalPolicy,sourceFile:t.sourceFile,statusCode:t.statusCode,lineNumber:t.lineNumber,columnNumber:t.columnNumber,disposition:"reporting"===t.disposition?"report":t.disposition,sample:t.sample,referrer:t.referrer}}var Ot=r(2646);const kt=new Map;function Lt(e,t,r,n,i=!0,s){if("object"!=typeof t||!t||"string"!=typeof r||!r||"function"!=typeof t[r])return(0,l.R)(29);const a=function(e){return(e||w.ee).get("logger")}(e),o=(0,Ne.YM)(a,void 0,s),c=new Ot.y(w.P);c.level=n.level,c.customAttributes=n.customAttributes,c.autoCaptured=i;const d=t[r]?.[Ne.Jt]||t[r];return kt.set(d,c),o.inPlace(t,[r],"wrap-logger-",()=>kt.get(d),void 0,!0),a}var Mt=r(1910);class Pt extends W{static featureName=se.TZ;constructor(e){var t;super(e,se.TZ),t=e,(0,L.Y)("log",(e,r)=>oe(e,r,t),t),function(e){(0,L.Y)(k.Wb,(t,r,{customAttributes:n={},level:i=se.p_.INFO}={})=>{Lt(e.ee,t,r,{customAttributes:n,level:i},!1,e)},e)}(e),Ae(e);const n=this.ee;["log","error","warn","info","debug","trace"].forEach(t=>{(0,Mt.i)(g.gm.console[t]),Lt(n,g.gm.console,t,{level:"log"===t?"info":t},void 0,e)}),this.ee.on("wrap-logger-end",function([t],r,i,s=[e.runtime.v2Target]){const{level:a,customAttributes:o,autoCaptured:c}=this;s.forEach(e=>{(0,ae.R)(n,t,o,a,c,e)})}),this.importAggregator(e,()=>r.e(891).then(r.bind(r,5288)))}}new F({features:[U,G,vt,Et,nt,Y,_e,xt,Pt],loaderType:"pro"})})()})();</script>
5
6        <meta name="viewport" content="width=device-width,initial-scale=1,user-scalable=yes">
7        <title>New Features &amp; Productivity Tools</title>
8                        
9        <meta name="description" content="See the latest DeskTime updates, new features, and improvements to simplify time tracking and boost team productivity.">
10
11        <meta property="og:title" content="DeskTime | New Features &amp; Productivity Tools">
12                    <meta property="og:image" content="https://desktime.com/static/og/home.png">
13        
14        
15        <meta name="msvalidate.01" content="7E7149BB0536D28D683B219D73FAAF68" />
16        <meta name="yandex-verification" content="3b65641c9c2b206e" />
17
18                    <link rel="canonical" href="https://desktime.com/product-updates" />
19        
20        
21        
22        <link rel="chrome-webstore-item" href="https://chrome.google.com/webstore/detail/kphjfdjkmhnoamhfacepmnlfmmmdedoj">
23
24        <link rel="icon" type="image/png" sizes="32x32" href="/favicon/favicon-32x32.png">
25        <link rel="icon" type="image/png" sizes="16x16" href="/favicon/favicon-16x16.png">
26        <link rel="apple-touch-icon" sizes="76x76" href="/favicon/apple-touch-icon.png">
27        <link rel="manifest" href="/favicon/site.webmanifest">
28        <link rel="mask-icon" href="/favicon/safari-pinned-tab.svg" color="#6CB123">
29        <meta name="msapplication-TileColor" content="#da532c">
30        <meta name="theme-color" content="#ffffff">
31
32        <link type="text/plain" rel="author" href="/humans.txt">
33
34                                    <link rel="alternate" href="https://desktime.com/product-updates" hreflang="en"/>
35                            <link rel="alternate" href="https://desktime.com/es/actualizaciones-de-producto" hreflang="es"/>
36                    
37        <link rel="preload" href="/fonts/Source_Sans_Pro/SourceSansPro-Regular.woff2" as="font" type="font/woff2" crossorigin="anonymous">
38<link rel="preload" href="/fonts/Source_Sans_Pro/SourceSansPro-SemiBold.woff2" as="font" type="font/woff2" crossorigin="anonymous">
39<link rel="preload" href="/fonts/Source_Sans_Pro/SourceSansPro-Bold.woff2" as="font" type="font/woff2" crossorigin="anonymous">
40
41        
41<script
42    src="https://cdn.eu.amplitude.com/script/b5e7603bfc1ab8f359907c95dee1e7c3.experiment.js"
43    type="text/plain"
44    data-cookieconsent="statistics"
45></script>
45
46        <link rel="preload" as="style" href="https://desktime.com/build/assets/public-styles-dsFpTHmh.css" /><link rel="preload" as="style" href="https://desktime.com/build/assets/vite-public-entry-DLeqbe-n.css" /><link rel="preload" as="style" href="https://desktime.com/build/assets/spacing-D5DT8dJ4.css" /><link rel="modulepreload" as="script" href="https://desktime.com/build/assets/vite-public-entry-Buqfu9B5.js" /><link rel="modulepreload" as="script" href="https://desktime.com/build/assets/rolldown-runtime-C0FnF6B9.js" /><link rel="modulepreload" as="script" href="https://desktime.com/build/assets/dt.utility.modules-DL2EgSU4.js" /><link rel="modulepreload" as="script" href="https://desktime.com/build/assets/module.esm-BVRApglD.js" /><link rel="modulepreload" as="script" href="https://desktime.com/build/assets/marketing-banner-C_9Arwgk.js" /><link rel="modulepreload" as="script" href="https://desktime.com/build/assets/lodash-KiHf6lzZ.js" /><link rel="modulepreload" as="script" href="https://desktime.com/build/assets/find-9TWhbH2u.js" /><link rel="stylesheet" href="https://desktime.com/build/assets/public-styles-dsFpTHmh.css" /><link rel="stylesheet" href="https://desktime.com/build/assets/vite-public-entry-DLeqbe-n.css" /><link rel="stylesheet" href="https://desktime.com/build/assets/spacing-D5DT8dJ4.css" />
46<script type="module" src="https://desktime.com/build/assets/vite-public-entry-Buqfu9B5.js"></script>
46
47        
48        
48<script data-cookieconsent="ignore">
49    window.dataLayer = window.dataLayer || [];
50    function gtag() {dataLayer.push(arguments)}
51
52    gtag("consent", "default", {
53        ad_personalization: "denied",
54        ad_storage: "denied",
55        ad_user_data: "denied",
56        analytics_storage: "denied",
57        functionality_storage: "denied",
58        personalization_storage: "denied",
59        security_storage: "granted",
60        wait_for_update: 500
61    });
62    // gtag("set", "ads_data_redaction", true);
63    // gtag("set", "url_passthrough", true);
64</script>
64
65
66
67
68<script>
69    
70    (function(w,d,s,l){w[l]=w[l]||[];w[l].push({'gtm.start':
71    new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
72    j=d.createElement(s),dl=l!='dataLayer'?'?l='+l:'';j.async=true;j.src=
73    'https://tag.desktime.com/EP352MsMpybGJyL5sqdq/'+dl;f.parentNode.insertBefore(j,f);
74    })(window,document,'script','dataLayer');
75
76    </script>
76
77
78
79
80
81<script
82    id="Cookiebot"
83    src="https://consent.cookiebot.com/uc.js"
84    data-cbid="e416fe1c-aa93-4288-a415-1db0613885ce"
85    data-blockingmode="auto"
86    type="text/javascript"
87></script>
87
88
89
90<script>
91    
92    </script>
92
93
94
95<script
96    id="ze-snippet"
97    src="https://static.zdassets.com/ekr/snippet.js?key=66fe34c5-1096-4f5f-ab5c-340818aa6658"
98    type="text/plain"
99    data-cookieconsent="preferences"
100></script>
100
101        
101<script>
102    // This script is used to unregister old service workers that may cause issues with the application. Check if this helps requests, when this is handled, remove this script.
103    if ('serviceWorker' in navigator) {
104        navigator.serviceWorker.ready.then(registration => {
105            registration.unregister().then(success => {
106                if (success) {
107                    console.log('Service Worker unregistered successfully.');
108                } else {
109                    console.log('Service Worker unregistration failed.');
110                }
111            });
112        });
113    }
114</script>
114
115        
115<script>
116        const initAmplitude = () => {
117            if (!window.Amplitude) {
118                console.error("Amplitude bundle not loaded yet.");
119                return;
120            }
121
122                            window.Amplitude.init(JSON.parse('{\u0022userIdentifyPayload\u0022:null,\u0022abIdentifyPayload\u0022:[],\u0022isApp\u0022:false,\u0022isFeatureActive\u0022:false}'));
123                    };
124
125        if (window.Amplitude) {
126            initAmplitude();
127        } else {
128            window.addEventListener('DOMContentLoaded', initAmplitude);
129        }
130    </script>
130
131        <!-- Start VWO Async SmartCode -->
132
133<link rel="preconnect" href="https://dev.visualwebsiteoptimizer.com" />
134<script
135    id="vwoCode"
136    
137    type="text/plain"
138    data-cookieconsent="statistics"
139>
140    window._vwo_code ||
141    (function () {
142        var w=window,
143            d=document;
144        var account_id=1135386,
145            version=2.2,
146            settings_tolerance=2000,
147            hide_element='body',
148            hide_element_style = 'opacity:0 !important;filter:alpha(opacity=0) !important;background:none !important;transition:none !important;';
149        /* DO NOT EDIT BELOW THIS LINE */
150        var f=0, v;
151        if(f=!1,v=d.querySelector('#vwoCode'),cc={},-1<d.URL.indexOf('__vwo_disable__')||w._vwo_code)return;try{var e=JSON.parse(localStorage.getItem('_vwo_'+account_id+'_config'));cc=e&&'object'==typeof e?e:{}}catch(e){}function r(t){try{return decodeURIComponent(t)}catch(e){return t}}var s=function(){var e={combination:[],combinationChoose:[],split:[],exclude:[],uuid:null,consent:null,optOut:null},t=d.cookie||'';if(!t)return e;for(var n,i,o=/(?:^|;\s*)(?:(_vis_opt_exp_(\d+)_combi=([^;]*))|(_vis_opt_exp_(\d+)_combi_choose=([^;]*))|(_vis_opt_exp_(\d+)_split=([^:;]*))|(_vis_opt_exp_(\d+)_exclude=[^;]*)|(_vis_opt_out=([^;]*))|(_vwo_global_opt_out=[^;]*)|(_vwo_uuid=([^;]*))|(_vwo_consent=([^;]*)))/g;null!==(n=o.exec(t));)try{n[1]?e.combination.push({id:n[2],value:r(n[3])}):n[4]?e.combinationChoose.push({id:n[5],value:r(n[6])}):n[7]?e.split.push({id:n[8],value:r(n[9])}):n[10]?e.exclude.push({id:n[11]}):n[12]?e.optOut=r(n[13]):n[14]?e.optOut=!0:n[15]?e.uuid=r(n[16]):n[17]&&(i=r(n[18]),e.consent=i&&3<=i.length?i.substring(0,3):null)}catch(e){}return e}();function i(){var e=function(){if(w.VWO&&Array.isArray(w.VWO))for(var e=0;e<w.VWO.length;e++){var t=w.VWO[e];if(Array.isArray(t)&&('setVisitorId'===t[0]||'setSessionId'===t[0]))return!0}return!1}(),t='a='+account_id+'&u='+encodeURIComponent(w._vis_opt_url||d.URL)+'&vn='+version+'&ph=1'+('undefined'!=typeof platform?'&p='+platform:'')+'&st='+w.performance.now();e||((n=function(){var e,t=[],n={},i=w.VWO&&w.VWO.appliedCampaigns||{};for(e in i){var o=i[e]&&i[e].v;o&&(t.push(e+'-'+o+'-1'),n[e]=!0)}if(s&&s.combination)for(var r=0;r<s.combination.length;r++){var a=s.combination[r];n[a.id]||t.push(a.id+'-'+a.value)}return t.join('|')}())&&(t+='&c='+n),(n=function(){var e=[],t={};if(s&&s.combinationChoose)for(var n=0;n<s.combinationChoose.length;n++){var i=s.combinationChoose[n];e.push(i.id+'-'+i.value),t[i.id]=!0}if(s&&s.split)for(var o=0;o<s.split.length;o++)t[(i=s.split[o]).id]||e.push(i.id+'-'+i.value);return e.join('|')}())&&(t+='&cc='+n),(n=function(){var e={},t=[];if(w.VWO&&Array.isArray(w.VWO))for(var n=0;n<w.VWO.length;n++){var i=w.VWO[n];if(Array.isArray(i)&&'setVariation'===i[0]&&i[1]&&Array.isArray(i[1]))for(var o=0;o<i[1].length;o++){var r,a=i[1][o];a&&'object'==typeof a&&(r=a.e,a=a.v,r&&a&&(e[r]=a))}}for(r in e)t.push(r+'-'+e[r]);return t.join('|')}())&&(t+='&sv='+n)),s&&s.optOut&&(t+='&o='+s.optOut);var n=function(){var e=[],t={};if(s&&s.exclude)for(var n=0;n<s.exclude.length;n++){var i=s.exclude[n];t[i.id]||(e.push(i.id),t[i.id]=!0)}return e.join('|')}();return n&&(t+='&e='+n),s&&s.uuid&&(t+='&id='+s.uuid),s&&s.consent&&(t+='&consent='+s.consent),w.name&&-1<w.name.indexOf('_vis_preview')&&(t+='&pM=true'),w.VWO&&w.VWO.ed&&(t+='&ed='+w.VWO.ed),t}code={script:v,nonce:v&&v.nonce,library_tolerance:function(){return'undefined'!=typeof library_tolerance?library_tolerance:void 0},settings_tolerance:function(){return cc.sT||settings_tolerance},hide_element_style:function(){return'{'+(cc.hES||hide_element_style)+'}'},hide_element:function(){return performance.getEntriesByName('first-contentful-paint')[0]?'':'string'==typeof cc.hE?cc.hE:hide_element},getVersion:function(){return version},finish:function(e){var t;f||(f=!0,(t=d.getElementById('_vis_opt_path_hides'))&&t.parentNode.removeChild(t),e&&((new Image).src='https://dev.visualwebsiteoptimizer.com/ee.gif?a='+account_id+e))},finished:function(){return f},addScript:function(e){var t=d.createElement('script');t.type='text/javascript',e.src?t.src=e.src:t.text=e.text,v&&t.setAttribute('nonce',v.nonce),d.getElementsByTagName('head')[0].appendChild(t)},load:function(e,t){t=t||{};var n=new XMLHttpRequest;n.open('GET',e,!0),n.withCredentials=!t.dSC,n.responseType=t.responseType||'text',n.onload=function(){if(t.onloadCb)return t.onloadCb(n,e);200===n.status?_vwo_code.addScript({text:n.responseText}):_vwo_code.finish('&e=loading_failure:'+e)},n.onerror=function(){if(t.onerrorCb)return t.onerrorCb(e);_vwo_code.finish('&e=loading_failure:'+e)},n.send()},init:function(){var e,t=this.settings_tolerance();w._vwo_settings_timer=setTimeout(function(){_vwo_code.finish()}
151,t),'body'!==this.hide_element()?(n=d.createElement('style'),e=(t=this.hide_element())?t+this.hide_element_style():'',t=d.getElementsByTagName('head')[0],n.setAttribute('id','_vis_opt_path_hides'),v&&n.setAttribute('nonce',v.nonce),n.setAttribute('type','text/css'),n.styleSheet?n.styleSheet.cssText=e:n.appendChild(d.createTextNode(e)),t.appendChild(n)):(n=d.getElementsByTagName('head')[0],(e=d.createElement('div')).style.cssText='z-index: 2147483647 !important;position: fixed !important;left: 0 !important;top: 0 !important;width: 100% !important;height: 100% !important;background: white !important;',e.setAttribute('id','_vis_opt_path_hides'),e.classList.add('_vis_hide_layer'),n.parentNode.insertBefore(e,n.nextSibling));var n='https://dev.visualwebsiteoptimizer.com/j.php?'+i();-1!==w.location.search.indexOf('_vwo_xhr')?this.addScript({src:n}):this.load(n+'&x=true',{l:1})}};w._vwo_code=code;code.init();})();
152</script>
152
153<!-- End VWO Async SmartCode -->
154    </head>
155    <body class="">
156        <div
157    id="zendesk-consent-button"
158    class="d-flex invisible"
159    onclick="zendeskChat.openConsentWindow()"
160>
161    <span class="pr-sm-3" type="Icon">
162        <svg
163            fill="white"
164            xmlns="http://www.w3.org/2000/svg"
165            xmlns:xlink="http://www.w3.org/1999/xlink"
166            x="0px"
167            y="0px"
168            width="20px"
169            height="20px"
170            viewBox="0 0 15 16"
171            xml:space="preserve"
172            aria-hidden="true"
173        >
174            <path d="M1.3,16c-0.7,0-1.1-0.3-1.2-0.8c-0.3-0.8,0.5-1.3,0.8-1.5c0.6-0.4,0.9-0.7,1-1c0-0.2-0.1-0.4-0.3-0.7c0,0,0-0.1-0.1-0.1 C0.5,10.6,0,9,0,7.4C0,3.3,3.4,0,7.5,0C11.6,0,15,3.3,15,7.4s-3.4,7.4-7.5,7.4c-0.5,0-1-0.1-1.5-0.2C3.4,15.9,1.5,16,1.5,16 C1.4,16,1.4,16,1.3,16z M3.3,10.9c0.5,0.7,0.7,1.5,0.6,2.2c0,0.1-0.1,0.3-0.1,0.4c0.5-0.2,1-0.4,1.6-0.7c0.2-0.1,0.4-0.2,0.6-0.1 c0,0,0.1,0,0.1,0c0.4,0.1,0.9,0.2,1.4,0.2c3,0,5.5-2.4,5.5-5.4S10.5,2,7.5,2C4.5,2,2,4.4,2,7.4c0,1.2,0.4,2.4,1.2,3.3 C3.2,10.8,3.3,10.8,3.3,10.9z"></path>
175        </svg>
176    </span>
177    <span class="text-white dt-typography-h6 font-weight-semibold">Support</span>
178</div>
179
180<div
181    id="zendesk-consent-window"
182    class="d-flex flex-column invisible"
183>
184    <div class="consent-window-header">
185        <div class="dt-typography-h5 text-white font-weight-semibold">DeskTime</div>
186        <div
187            id="zendesk-minimize"
188            onclick="zendeskChat.minimize()"
189        >
190            <svg
191                xmlns="http://www.w3.org/2000/svg"
192                width="16"
193                height="16"
194                focusable="false"
195                viewBox="0 0 16 16"
196            >
197                <path stroke="white" stroke-linecap="round" stroke-width="2" d="M3 8h10">
198                </path>
199            </svg>
200        </div>
201    </div>
202    <div class="d-flex flex-column justify-content-between flex-fill" style="padding: 1.25rem">
203        <div>
204            <p class="dt-typography-subtitle font-weight-semibold">🍪 Allow functional cookies?</p>
205            <p class="dt-typography-subtitle-regular">We use Zendesk messaging software for easy communication with our clients. Zendesk uses cookies to interact with website visitors and provide chat history.</p>
206            
207            <p class="dt-typography-subtitle-regular">See our <a href=https://desktime.com/privacy class='text-decoration-underline font-weight-semibold text-gray600'>Privacy Policy</a> for more info. You can change your cookie preferences at any time in our <span class='text-decoration-underline font-weight-semibold hover' onclick='Cookiebot?.renew()'>Cookie Settings</span>.</p>
208        </div>
209        <div class="d-flex justify-content-center">
210            <div class="animation-checkmark d-none"></div>
211            <div
212                id="zendesk-allow-btn"
213                class="text-white d-flex justify-content-center align-items-center py-6 font-weight-semibold rounded w-100"
214                onclick="zendeskChat.allow()"
215            >
216                Allow &amp; continue to chat
217            </div>
218        </div>
219    </div>
220</div>
221
222
223        <div class="content-wrapper-public">
224            <header
225    class="public-navbar"
226    x-data="{ activeMenu: null, hoveredItem: null, mobileMenuOpen: false, langSwitcherOpen: false }"
227    @click.away="activeMenu = null"
228    @resize.window="activeMenu = null; mobileMenuOpen = false; langSwitcherOpen = false"
229    @mouseleave="activeMenu = null"
230>
231    <nav class="container-new">
232        <a href="/" class="home-logo">
233                            <img width="160" height="30" src="/static/logo/logo-dark-without-padding.svg" alt="logo">
234                    </a>
235
236        <div class="d-flex align-items-center">
237            
238                            <div class="d-none d-xl-flex">
239                                            <button
240    class="desktop-nav-item"
241    :class="activeMenu === 'features' && 'active'"
242    @click="activeMenu = activeMenu === 'features' ? null : 'features'; if (activeMenu === 'features') hoveredItem = 'timeTracking'"
243    @mouseenter="activeMenu = 'features'; if (activeMenu === 'features') hoveredItem = 'timeTracking'"
244>
245    Features
246    <i class="icon-chevron-down"></i>
247</button>
248
249                        <div
250                            class="desktop-nav-content"
251                            x-show="activeMenu === 'features'"
252                            x-transition:enter.duration.400ms
253                            x-transition:leave.duration.100ms
254                            x-transition.delay.200ms
255                            x-cloak
256                        >
257                            <div id="features">
258    <div class="desktop-nav-content-container d-none d-xl-flex flex-column">
259            <div>
260            <button
261                class="desktop-nav-content-title"
262                @mouseover="hoveredItem = 'timeTracking'"
263                @click="hoveredItem = 'timeTracking'"
264                :class="hoveredItem === 'timeTracking' && 'active'"
265            >
266                Time Tracking
267                <i class="icon-arrow-right text-gray400 dt-icon__size--18 ml-3"></i>
268            </button>
269        </div>
270            <div>
271            <button
272                class="desktop-nav-content-title"
273                @mouseover="hoveredItem = 'productivity'"
274                @click="hoveredItem = 'productivity'"
275                :class="hoveredItem === 'productivity' && 'active'"
276            >
277                Productivity insights
278                <i class="icon-arrow-right text-gray400 dt-icon__size--18 ml-3"></i>
279            </button>
280        </div>
281            <div>
282            <button
283                class="desktop-nav-content-title"
284                @mouseover="hoveredItem = 'integrations'"
285                @click="hoveredItem = 'integrations'"
286                :class="hoveredItem === 'integrations' && 'active'"
287            >
288                Integrations &amp; API
289                <i class="icon-arrow-right text-gray400 dt-icon__size--18 ml-3"></i>
290            </button>
291        </div>
292            <div>
293            <button
294                class="desktop-nav-content-title"
295                @mouseover="hoveredItem = 'analytics'"
296                @click="hoveredItem = 'analytics'"
297                :class="hoveredItem === 'analytics' && 'active'"
298            >
299                Analytics &amp; reports
300                <i class="icon-arrow-right text-gray400 dt-icon__size--18 ml-3"></i>
301            </button>
302        </div>
303            <div>
304            <button
305                class="desktop-nav-content-title"
306                @mouseover="hoveredItem = 'workforce'"
307                @click="hoveredItem = 'workforce'"
308                :class="hoveredItem === 'workforce' && 'active'"
309            >
310                Workforce management
311                <i class="icon-arrow-right text-gray400 dt-icon__size--18 ml-3"></i>
312            </button>
313        </div>
314    </div>
315
316    
317    <div>
318                    <div x-show="mobileMenuOpen || hoveredItem === 'timeTracking'">
319                <div class="dt-typography-subtitle font-weight-semibold text-secondary d-xl-none mb-9 mt-8">Time Tracking</div>
320
321                <div class="grid-items">
322                                            
323                        
324                                                    <a href="https://desktime.com/features/time-tracking" class="feature-item">
325    <img
326        src="/static/web/menu/icons/time-tracking.svg"
327        alt="Automatic time tracking"
328        width="32"
329        height="32"
330    >
331    <div class="d-flex flex-column ml-3">
332        <div class="text-primary font-weight-semibold">Automatic time tracking</div>
333                    <div class="dt-typography-body-small text-tertiary">Effortless time tracking with our desktop app</div>
334            </div>
335</a>
336                                                                    
337                        
338                                                    <a href="https://desktime.com/features/project-tracking" class="feature-item">
339    <img
340        src="/static/web/menu/icons/projects.svg"
341        alt="Project time tracking"
342        width="32"
343        height="32"
344    >
345    <div class="d-flex flex-column ml-3">
346        <div class="text-primary font-weight-semibold">Project time tracking</div>
347                    <div class="dt-typography-body-small text-tertiary">
347Track time and progress of specific tasks and projects</div>
348            </div>
349</a>
350                                                                    
351                        
352                                                    <a href="https://desktime.com/features/manual-time-tracking" class="feature-item">
353    <img
354        src="/static/web/menu/icons/offline-time.svg"
355        alt="Manual and offline time tracking"
356        width="32"
357        height="32"
358    >
359    <div class="d-flex flex-column ml-3">
360        <div class="text-primary font-weight-semibold">Manual and offline time tracking</div>
361                    <div class="dt-typography-body-small text-tertiary">Track time manually and see when employees take breaks from working</div>
362            </div>
363</a>
364                                                                    
365                        
366                                                    <a href="https://desktime.com/features/private-time" class="feature-item">
367    <img
368        src="/static/web/menu/icons/private-time.svg"
369        alt="Private time"
370        width="32"
371        height="32"
372    >
373    <div class="d-flex flex-column ml-3">
374        <div class="text-primary font-weight-semibold">Private time</div>
375                    <div class="dt-typography-body-small text-tertiary">Let users take a break from tracking when needed</div>
376            </div>
377</a>
378                                                            </div>
379
380                <a href="https://desktime.com/features" class="dt-action-link dt-action-link-icon mt-9">
381                    <span>
382                                                    See all features
383                                            </span>
384                    <i class="icon-arrow-right dt-icon__size--18"></i>
385                </a>
386
387                
388                <div class="border-tertiary-bottom mt-8 mb-8 d-xl-none"></div>
389            </div>
390                    <div x-show="mobileMenuOpen || hoveredItem === 'productivity'">
391                <div class="dt-typography-subtitle font-weight-semibold text-secondary d-xl-none mb-9 mt-8">Productivity insights</div>
392
393                <div class="grid-items">
394                                            
395                        
396                                                    <a href="https://desktime.com/features/productivity-calculation" class="feature-item">
397    <img
398        src="/static/web/menu/icons/productivity.svg"
399        alt="Productivity calculation"
400        width="32"
401        height="32"
402    >
403    <div class="d-flex flex-column ml-3">
404        <div class="text-primary font-weight-semibold">Productivity calculation</div>
405                    <div class="dt-typography-body-small text-tertiary">Get data about your employees’ productivity</div>
406            </div>
407</a>
408                                                                    
409                        
410                                                    <a href="https://desktime.com/features/time-tracking-with-screenshots" class="feature-item">
411    <img
412        src="/static/web/menu/icons/screenshots.svg"
413        alt="Screenshots"
414        width="32"
415        height="32"
416    >
417    <div class="d-flex flex-column ml-3">
418        <div class="text-primary font-weight-semibold">Screenshots</div>
419                    <div class="dt-typography-body-small text-tertiary">Get proof-of-work in cases of questionable productivity or integrity</div>
420            </div>
421</a>
422                                                                    
423                        
424                                                    <a href="https://desktime.com/features/computer-usage-monitoring" class="feature-item">
425    <img
426        src="/static/web/menu/icons/url-tracking.svg"
427        alt="URL &amp; app tracking"
428        width="32"
429        height="32"
430    >
431    <div class="d-flex flex-column ml-3">
432        <div class="text-primary font-weight-semibold">URL &amp; app tracking</div>
433                    <div class="dt-typography-body-small text-tertiary">See what sites and apps your employees visit</div>
434            </div>
435</a>
436                                                                    
437                        
438                                                    <a href="https://desktime.com/features/document-title-tracking" class="feature-item">
439    <img
440        src="/static/web/menu/icons/title-tracking.svg"
441        alt="Document title tracking"
442        width="32"
443        height="32"
444    >
445    <div class="d-flex flex-column ml-3">
446        <div class="text-primary font-weight-semibold">Document title tracking</div>
447                    <div class="dt-typography-body-small text-tertiary">Keep track of document titles and email subjects</div>
448            </div>
449</a>
450                                                                    
451                        
452                                                    <a href="https://desktime.com/features/customization" class="feature-item">
453    <img
454        src="/static/web/menu/icons/customizable-settings.svg"
455        alt="Customizable settings"
456        width="32"
457        height="32"
458    >
459    <div class="d-flex flex-column ml-3">
460        <div class="text-primary font-weight-semibold">Customizable settings</div>
461                    <div class="dt-typography-body-small text-tertiary">
461Personalize DeskTime to fit your exact needs</div>
462            </div>
463</a>
464                                                                    
465                        
466                                                    <a href="https://help.desktime.com/hc/en-us/articles/25130467106077" class="feature-item">
467    <img
468        src="/static/web/menu/icons/notifications.svg"
469        alt="Notifications"
470        width="32"
471        height="32"
472    >
473    <div class="d-flex flex-column ml-3">
474        <div class="text-primary font-weight-semibold">Notifications</div>
475                    <div class="dt-typography-body-small text-tertiary">Receive notifications about important activity updates</div>
476            </div>
477</a>
478                                                            </div>
479
480                <a href="https://desktime.com/features" class="dt-action-link dt-action-link-icon mt-9">
481                    <span>
482                                                    See all features
483                                            </span>
484                    <i class="icon-arrow-right dt-icon__size--18"></i>
485                </a>
486
487                
488                <div class="border-tertiary-bottom mt-8 mb-8 d-xl-none"></div>
489            </div>
490                    <div x-show="mobileMenuOpen || hoveredItem === 'integrations'">
491                <div class="dt-typography-subtitle font-weight-semibold text-secondary d-xl-none mb-9 mt-8">Integrations &amp; API</div>
492
493                <div class="grid-items">
494                                            
495                        
496                                                    <a href="https://desktime.com/features/integrations/jira-time-tracking" class="feature-item align-items-center">
497                                <img
498                                    src="/static/web/menu/integrations/Jira.svg"
499                                    alt="Jira"
500                                    width="32"
501                                    height="32"
502                                >
503                                <div class="text-primary font-weight-semibold pl-2">Jira</div>
504                            </a>
505                                                                    
506                        
507                                                    <a href="https://desktime.com/features/integrations/asana-time-tracking" class="feature-item align-items-center">
508                                <img
509                                    src="/static/web/menu/integrations/Asana.svg"
510                                    alt="Asana"
511                                    width="32"
512                                    height="32"
513                                >
514                                <div class="text-primary font-weight-semibold pl-2">Asana</div>
515                            </a>
516                                                                    
517                        
518                                                    <a href="https://desktime.com/features/integrations/outlook-time-tracking" class="feature-item align-items-center">
519                                <img
520                                    src="/static/web/menu/integrations/Outlook.svg"
521                                    alt="Outlook"
522                                    width="32"
523                                    height="32"
524                                >
525                                <div class="text-primary font-weight-semibold pl-2">Outlook</div>
526                            </a>
527                                                                    
528                        
529                                                    <a href="https://desktime.com/features/integrations/google-calendar-time-tracking" class="feature-item align-items-center">
530                                <img
531                                    src="/static/web/menu/integrations/GoogleCalendar.svg"
532                                    alt="Google Calendar"
533                                    width="32"
534                                    height="32"
535                                >
536                                <div class="text-primary font-weight-semibold pl-2">Google Calendar</div>
537                            </a>
538                                                                    
539                        
540                                                    <a href="https://desktime.com/features/integrations/gitlab-time-tracking" class="feature-item align-items-center">
541                                <img
542                                    src="/static/web/menu/integrations/Gitlab.svg"
543                                    alt="GitLab"
544                                    width="32"
545                                    height="32"
546                                >
547                                <div class="text-primary font-weight-semibold pl-2">GitLab</div>
548                            </a>
549                                                                    
550                        
551                                                    <a href="https://desktime.com/features/integrations/trello-time-tracking" class="feature-item align-items-center">
552                                <img
553                                    src="/static/web/menu/integrations/Trello.svg"
554                                    alt="Trello"
555                                    width="32"
556                                    height="32"
557                                >
558                                <div class="text-primary font-weight-semibold pl-2">Trello</div>
559                            </a>
560                                                                    
561                        
562                                                    <a href="https://desktime.com/features/integrations/zapier-time-tracking" class="feature-item align-items-center">
563                                <img
564                                    src="/static/web/menu/integrations/Zapier.svg"
565                                    alt="Zapier"
566                                    width="32"
567                                    height="32"
568                                >
569                                <div class="text-primary font-weight-semibold pl-2">Zapier</div>
570                            </a>
571                                                            </div>
572
573                <a href="https://desktime.com/features/integrations" class="dt-action-link dt-action-link-icon mt-9">
574                    <span>
575                                                    More about integrations &amp; API
576                                            </span>
577                    <i class="icon-arrow-right dt-icon__size--18"></i>
578                </a>
579
580                
581                <div class="border-tertiary-bottom mt-8 mb-8 d-xl-none"></div>
582            </div>
583                    <div x-show="mobileMenuOpen || hoveredItem === 'analytics'">
584                <div class="dt-typography-subtitle font-weight-semibold text-secondary d-xl-none mb-9 mt-8">Analytics &amp; reports</div>
585
586                <div class="grid-items">
587                                            
588                        
589                                                    <a href="https://desktime.com/features/time-tracking-reports" class="feature-item">
590    <img
591        src="/static/web/menu/icons/reports.svg"
592        alt="Reports"
593        width="32"
594        height="32"
595    >
596    <div class="d-flex flex-column ml-3">
597        <div class="text-primary font-weight-semibold">Reports</div>
598                    <div class="dt-typography-body-small text-tertiary">Get in-depth data about your team’s performance</div>
599            </div>
600</a>
601                                                                    
602                        
603                                                    <a href="https://desktime.com/features/time-tracking-dashboard" class="feature-item">
604    <img
605        src="/static/web/menu/icons/admin.svg"
606        alt="Admin dashboard"
607        width="32"
608        height="32"
609    >
610    <div class="d-flex flex-column ml-3">
611        <div class="text-primary font-weight-semibold">Admin dashboard</div>
612                    <div class="dt-typography-body-small text-tertiary">Gain insights about your employees&#039; work hours and productivity levels</div>
613            </div>
614</a>
615                                                                    
616                        
617                                                    <a href="https://desktime.com/features/my-desktime" class="feature-item">
618    <img
619        src="/static/web/menu/icons/team-members.svg"
620        alt="User dashboard"
621        width="32"
622        height="32"
623    >
624    <div class="d-flex flex-column ml-3">
625        <div class="text-primary font-weight-semibold">User dashboard</div>
626                    <div class="dt-typography-body-small text-tertiary">See your team’s overall activities and performance</div>
627            </div>
628</a>
629                                                                    
630                        
631                                                    <a href="https://desktime.com/features/exports" class="feature-item">
632    <img
633        src="/static/web/menu/icons/exports.svg"
634        alt="Exports"
635        width="32"
636        height="32"
637    >
638    <div class="d-flex flex-column ml-3">
639        <div class="text-primary font-weight-semibold">Exports</div>
640                    <div class="dt-typography-body-small text-tertiary">Download and save tracked data</div>
641            </div>
642</a>
643                                                                    
644                        
645                                                    <a href="https://desktime.com/features/ai-summary" class="feature-item">
646    <img
647        src="/static/web/menu/icons/ai-summary.svg"
648        alt="AI summary"
649        width="32"
650        height="32"
651    >
652    <div class="d-flex flex-column ml-3">
653        <div class="text-primary font-weight-semibold">AI summary</div>
654                    <div class="dt-typography-body-small text-tertiary">See daily and weekly insights instantly with AI-powered summaries</div>
655            </div>
656</a>
657                                                            </div>
658
659                <a href="https://desktime.com/features" class="dt-action-link dt-action-link-icon mt-9">
660                    <span>
661                                                    See all features
662                                            </span>
663                    <i class="icon-arrow-right dt-icon__size--18"></i>
664                </a>
665
666                
667                <div class="border-tertiary-bottom mt-8 mb-8 d-xl-none"></div>
668            </div>
669                    <div x-show="mobileMenuOpen || hoveredItem === 'workforce'">
670                <div class="dt-typography-subtitle font-weight-semibold text-secondary d-xl-none mb-9 mt-8">Workforce management</div>
671
672                <div class="grid-items">
673                                            
674                        
675                                                    <a href="https://desktime.com/features/shift-scheduling" class="feature-item">
676    <img
677        src="/static/web/menu/icons/work-sch.svg"
678        alt="Shift scheduling"
679        width="32"
680        height="32"
681    >
682    <div class="d-flex flex-column ml-3">
683        <div class="text-primary font-weight-semibold">Shift scheduling</div>
684                    <div class="dt-typography-body-small text-tertiary">Plan and manage employee shifts in one place</div>
685            </div>
686</a>
687                                                                    
688                        
689                                                    <a href="https://desktime.com/features/absence-calendar" class="feature-item">
690    <img
691        src="/static/web/menu/icons/absence-calendar.svg"
692        alt="Absence calendar"
693        width="32"
694        height="32"
695    >
696    <div class="d-flex flex-column ml-3">
697        <div class="text-primary font-weight-semibold">Absence calendar</div>
698                    <div class="dt-typography-body-small text-tertiary">See who’s sick, on vacation, OOO and more</div>
699            </div>
700</a>
701                                                                    
702                        
703                                                    <a href="https://desktime.com/time-and-attendance-software" class="feature-item">
704    <img
705        src="/static/web/menu/icons/attendance-management.svg"
706        alt="Attendance management"
707        width="32"
708        height="32"
709    >
710    <div class="d-flex flex-column ml-3">
711        <div class="text-primary font-weight-semibold">Attendance management</div>
712                    <div class="dt-typography-body-small text-tertiary">See how much time your employees spend working</div>
713            </div>
714</a>
715                                                                    
716                        
717                                                    <a href="https://desktime.com/features/team-contacts" class="feature-item">
718    <img
719        src="/static/web/menu/icons/employee-directory.svg"
720        alt="Employee directory"
721        width="32"
722        height="32"
723    >
724    <div class="d-flex flex-column ml-3">
725        <div class="text-primary font-weight-semibold">Employee directory</div>
726                    <div class="dt-typography-body-small text-tertiary">Easily find another colleague’s contact information</div>
727            </div>
728</a>
729                                                                    
730                        
731                                                    <a href="https://desktime.com/features/ip-location" class="feature-item">
732    <img
733        src="/static/web/menu/icons/ip-location.svg"
734        alt="IP location"
735        width="32"
736        height="32"
737    >
738    <div class="d-flex flex-column ml-3">
739        <div class="text-primary font-weight-semibold">IP location</div>
740                    <div class="dt-typography-body-small text-tertiary">See who’s working from the office or remotely</div>
741            </div>
742</a>
743                                                            </div>
744
745                <a href="https://desktime.com/features" class="dt-action-link dt-action-link-icon mt-9">
746                    <span>
747                                                    See all features
748                                            </span>
749                    <i class="icon-arrow-right dt-icon__size--18"></i>
750                </a>
751
752                
753                <div class="border-tertiary-bottom mt-8 mb-8 d-xl-none"></div>
754            </div>
755            </div>
756</div>
757                        </div>
758
759                        <button
760    class="desktop-nav-item"
761    :class="activeMenu === 'solutions' && 'active'"
762    @click="activeMenu = activeMenu === 'solutions' ? null : 'solutions'; if (activeMenu === 'features') hoveredItem = 'timeTracking'"
763    @mouseenter="activeMenu = 'solutions'; if (activeMenu === 'features') hoveredItem = 'timeTracking'"
764>
765    Solutions
766    <i class="icon-chevron-down"></i>
767</button>
768                        
769                        <div
770                            class="desktop-nav-content"
771                            x-show="activeMenu === 'solutions'"
772                            x-transition:enter.duration.400ms
773                            x-transition:leave.duration.100ms
774                            x-transition.delay.200ms
775                            x-cloak
776                        >
777                            <div id="solutions" class="my-8 my-xl-0">
778            <div class="d-flex flex-column">
779            <div class="dt-typography-body-small text-tertiary font-weight-semibold">For managers</div>
780
781                            
782                <a href="https://desktime.com/performance-evaluation" class="text-primary font-weight-semibold mt-6">Performance evaluation</a>
783                            
784                <a href="https://desktime.com/employee-monitoring-software" class="text-primary font-weight-semibold mt-6">Employee monitoring</a>
785                            
786                <a href="https://desktime.com/unlock-team-potential" class="text-primary font-weight-semibold mt-6">Transparency &amp; accountability</a>
787                            
788                <a href="https://desktime.com/remote-employee-monitoring" class="text-primary font-weight-semibold mt-6">Remote work monitoring</a>
789                            
790                <a href="https://desktime.com/employee-productivity-monitoring-software" class="text-primary font-weight-semibold mt-6">Productivity &amp; efficiency</a>
791                    </div>
792            <div class="d-flex flex-column">
793            <div class="dt-typography-body-small text-tertiary font-weight-semibold">For employees</div>
794
795                            
796                <a href="https://desktime.com/employee-wellbeing" class="text-primary font-weight-semibold mt-6">Employee well-being</a>
797                            
798                <a href="https://desktime.com/work-life-balance" class="text-primary font-weight-semibold mt-6">Work-life balance</a>
799                            
800                <a href="https://desktime.com/burnout-prevention" class="text-primary font-weight-semibold mt-6">Burnout prevention</a>
801                            
802                <a href="https://desktime.com/hybrid-work" class="text-primary font-weight-semibold mt-6">Hybrid work support</a>
803                            
804                <a href="https://desktime.com/self-accountability" class="text-primary font-weight-semibold mt-6">Self-accountability</a>
805                    </div>
806            <div class="d-flex flex-column">
807            <div class="dt-typography-body-small text-tertiary font-weight-semibold">By industry</div>
808
809                            
810                <a href="https://desktime.com/it-team-time-tracking" class="text-primary font-weight-semibold mt-6">IT &amp; software</a>
811                            
812                <a href="https://desktime.com/financial-industry-time-tracking" class="text-primary font-weight-semibold mt-6">Financial services</a>
813                            
814                <a href="https://desktime.com/industries/time-tracking-for-consultants" class="text-primary font-weight-semibold mt-6">Consultants</a>
815                            
816                <a href="https://desktime.com/industries/time-management-for-startups" class="text-primary font-weight-semibold mt-6">Startups</a>
817                            
818                <a href="https://desktime.com/agency-time-tracking" class="text-primary font-weight-semibold mt-6">
818Agencies</a>
819                            
820                <a href="https://desktime.com/industries/time-tracking-for-developers" class="text-primary font-weight-semibold mt-6">Developers</a>
821                            
822                <a href="https://desktime.com/industries/time-tracking-for-lawyers" class="text-primary font-weight-semibold mt-6">Lawyers</a>
823                    </div>
824            <div class="d-flex flex-column">
825            <div class="dt-typography-body-small text-tertiary font-weight-semibold">By business size</div>
826
827                            
828                <a href="https://desktime.com/intro" class="text-primary font-weight-semibold mt-6">Enterprises</a>
829                            
830                <a href="https://desktime.com/employee-time-tracking-software-for-companies" class="text-primary font-weight-semibold mt-6">Medium businesses</a>
831                            
832                <a href="https://desktime.com/time-tracking-for-small-businesses" class="text-primary font-weight-semibold mt-6">Small teams</a>
833                            
834                <a href="https://desktime.com/time-tracking-for-freelancers" class="text-primary font-weight-semibold mt-6">Freelancers</a>
835                    </div>
836    
837    <a href="https://www.youtube.com/watch?v=Jpt0L_RzVAA" target="_blank" class="thumbnail-container">
838    <div class="youtube w-play small">
839        <img
840            src="/static/web/menu/what-is-desktime-thumbnail.webp"
841            alt="DeskTime for Managers - a video tutorial that covers the basics of DeskT
841ime and guides through the setup and onboarding process"
842            width="240"
843            height="160"
844            class="rounded-md object-cover"
845            loading="lazy"
846        >
847    </div>
848
849    <div class="dt-typography-body-small text-uppercase text-secondary font-weight-semibold mt-6">Video</div>
850    <div class="d-flex align-items-center my-2 thumbnail-title">
851        Get started with DeskTime <i class="icon-external-link dt-icon__size--18 text-gray300 ml-2"></i>
852    </div>
853    <div class="dt-typography-body-small text-tertiary">Start working with our time tracking tool in 5 easy steps</div>
854
855    </a>
856</div>
857                        </div>
858
859                        <button
860    class="desktop-nav-item"
861    :class="activeMenu === 'resources' && 'active'"
862    @click="activeMenu = activeMenu === 'resources' ? null : 'resources'; if (activeMenu === 'features') hoveredItem = 'timeTracking'"
863    @mouseenter="activeMenu = 'resources'; if (activeMenu === 'features') hoveredItem = 'timeTracking'"
864>
865    Resources
866    <i class="icon-chevron-down"></i>
867</button>
868                        
869                        <div
870                            class="desktop-nav-content"
871                            x-show="activeMenu === 'resources'"
872                            x-transition:enter.duration.400ms
873                            x-transition:leave.duration.100ms
874                            x-transition.delay.200ms
875                            x-cloak
876                        >
877                            <div id="resources" class="my-8 my-xl-0">
878    <div class="content">
879        <div class="d-flex flex-column">
880                            
881                <a href="https://desktime.com/time-tracking-roi-calculator" class="text-primary font-weight-semibold mb-6" >
882                    Time tracking ROI
883                </a>
884                            
885                <a href="https://desktime.com/what-does-desktime-track" class="text-primary font-weight-semibold mb-6" >
886                    What does DeskTime track?
887                </a>
888                            
889                <a href="https://help.desktime.com/hc/en-us" class="text-primary font-weight-semibold mb-6"  target="_blank" rel="noopener noreferrer" >
890                    Help Center
891                </a>
892                            
893                <a href="https://desktime.com/case-studies" class="text-primary font-weight-semibold mb-6" >
894                    Case studies
895                </a>
896                            
897                <a href="https://desktime.com/product-updates" class="text-primary font-weight-semibold mb-6" >
898                    Product updates
899                </a>
900                            
901                <a href="/blog" class="text-primary font-weight-semibold mb-6" >
902                    Blog
903                </a>
904                            
905                <a href="https://desktime.com/alternatives" class="text-primary font-weight-semibold mb-6" >
906                    Competitor comparison
907                </a>
908                            
909                <a href="https://desktime.com/security" class="text-primary font-weight-semibold mb-6" >
910                    Legal &amp; compliance
911                </a>
912                            
913                <a href="https://desktime.com/about" class="text-primary font-weight-semibold mb-6" >
914                    About us
915                </a>
916                            
917                <a href="https://desktime.com/contacts" class="text-primary font-weight-semibold mb-6" >
918                    Contact us
919                </a>
920            
921                            <a href="https://desktime.com/download" class="text-primary font-weight-semibold mb-6">Download</a>
922                    </div>
923
924        <div class="mt-7 mt-xl-0">
925            <a href="https://desktime.com/managers-toolkit" target="_blank" class="thumbnail-container">
926    <div class="">
927        <img
928            src="/static/web/menu/[email protected]"
929            alt="Guide for getting started with DeskTime productivity monitoring software. Setup, configuration, employee unboarding"
930            width="240"
931            height="160"
932            class="rounded-md object-cover"
933            loading="lazy"
934        >
935    </div>
936
937    <div class="dt-typography-body-small text-uppercase text-secondary font-weight-semibold mt-6">FEATURED PAGE</div>
938    <div class="d-flex align-items-center my-2 thumbnail-title">
939        The DeskTime Setup Guide
940    </div>
941    <div class="dt-typography-body-small text-tertiary">Everything you need to get started, personalize your workspace, and set DeskTime up to fit your team</div>
942
943            <div class="dt-action-link">Read more</div>
944    </a>
945
946            <a href="https://desktime.com/security" target="_blank" class="thumbnail-container">
947    <div class="">
948        <img
949            src="/static/web/menu/[email protected]"
950            alt="DeskTime security badges - G2 Users Love Us badge, ISO 27001 and ISO 27701 certifications, GDPR compliance"
951            width="240"
952            height="160"
953            class="rounded-md object-cover"
954            loading="lazy"
955        >
956    </div>
957
958    <div class="dt-typography-body-small text-uppercase text-secondary font-weight-semibold mt-6">FEATURED PAGE</div>
959    <div class="d-flex align-items-center my-2 thumbnail-title">
960        Security at DeskTime
961    </div>
962    <div class="dt-typography-body-small text-tertiary">See what measures we take every day to keep that data safe and secure</div>
963
964            <div class="dt-action-link">Read more</div>
965    </a>
966
967            <a href="https://desktime.com/time-tracking-law-spain" target="_blank" class="thumbnail-container">
968    <div class="">
969        <img
970            src="/static/web/menu/[email protected]"
971            alt="See what&#039;s changing under Spain&#039;s new law and how DeskTime keeps you compliant"
972            width="240"
973            height="160"
974            class="rounded-md object-cover"
975            loading="lazy"
976        >
977    </div>
978
979    <div class="dt-typography-body-small text-uppercase text-secondary font-weight-semibold mt-6">FEATURED PAGE</div>
980    <div class="d-flex align-items-center my-2 thumbnail-title">
981        Spain's 2026 Time Tracking Reform
982    </div>
983    <div class="dt-typography-body-small text-tertiary">See what&#039;s changing under Spain&#039;s new law and how DeskTime keeps you compliant</div>
984
985            <div class="dt-action-link">Read more</div>
986    </a>
987        </div>
988    </div>
989
990    
991    <div class="review-bar d-none d-xl-flex">
992        <img src="/static/web/menu/stars.svg" alt="4.5 stars" class="mr-8">
993        <div>4.5 out of 5 from <a href="https://desktime.com/managers-toolkit" class="dt-link-white">400 reviews</a></div>
994    </div>
995</div>
996                        </div>
997                    
998                    <a
999                        @mouseenter="activeMenu = null"
1000                        href="https://desktime.com/pricing" class="desktop-nav-item"
1001                    >
1002                        Pricing
1003                    </a>
1004                    <a
1005                        @mouseenter="activeMenu = null"
1006                        href="https://desktime.com/demo" class="desktop-nav-item"
1007                    >
1008                        Demo
1009                    </a>
1010                                            <a
1011                            @mouseenter="activeMenu = null"
1012                            href="https://desktime.com/intro"
1013                            class="desktop-nav-item intro"
1014                        >
1015                            Intro call
1016                        </a>
1017                                    </div>
1018
1019                
1020                <div class="d-none d-lg-flex ml-8" @mouseenter="activeMenu = null">
1021                                            <a href="https://desktime.com/register"
1022                           id="nav-signup-primary"
1023                           class="btn btn-primary"
1024                           aria-label="Start a 14-day free trial of DeskTime"
1025                           data-ai-action="signup-start">
1026                            Start free trial
1027                        </a>
1028                                                    <a href="https://desktime.com/login"
1029                               id="nav-login"
1030                               class="btn btn-secondary ml-5"
1031                               aria-label="Log in to your DeskTime account"
1032                               data-ai-action="user-login">
1033                                Log in
1034                            </a>
1035                                                            </div>
1036            
1037            <div class="nav-lang-picker-container" @click.outside="langSwitcherOpen = false">
1038        <button
1039            @click="langSwitcherOpen = langSwitcherOpen !== true"
1040            class="nav-lang-picker"
1041            :class="langSwitcherOpen && 'active'"
1042        >
1043            <i class="icon-globe text-gray400 mr-2"></i>
1044            <span class="text-primary text-uppercase font-weight-semibold">en</span>
1045            <i class="icon-chevron-down dt-icon__size--24 text-gray400 ml-3"></i>
1046        </button>
1047
1048        <template x-if="langSwitcherOpen">
1049            <div class="nav-lang-picker-content">
1050                                    <a
1051                        class="d-flex align-items-center nav-lang-picker-item active"
1052                        href="https://desktime.com/product-updates"
1053                        @click="langSwitcherOpen = false"
1054                    >
1055                        <i
1056                            class="icon-check text-green400 mr-3"
1057                        ></i>
1058                        English
1059                    </a>
1060                                    <a
1061                        class="d-flex align-items-center nav-lang-picker-item"
1062                        href="https://desktime.com/es/actualizaciones-de-producto"
1063                        @click="langSwitcherOpen = false"
1064                    >
1065                        <i
1066                            class="icon-check text-green400 mr-3 d-none"
1067                        ></i>
1068                        Español
1069                    </a>
1070                            </div>
1071        </template>
1072    </div>
1073
1074            
1075            <div class="d-flex d-xl-none border-left pl-6 ml-6">
1076                <button
1077                    class="nav-burger"
1078                    @click="mobileMenuOpen = mobileMenuOpen !== true"
1079                    aria-label="Main menu"
1080                    :aria-expanded="mobileMenuOpen"
1081                    x-init="$watch('mobileMenuOpen', () => document.getElementsByTagName('body')[0].classList.toggle('overflow-hidden'))"
1082                >
1083                    <i x-show="!mobileMenuOpen" class="icon-menu text-gray400 dt-icon__size--32"></i>
1084                    <i x-show="mobileMenuOpen" class="icon-x text-gray400 dt-icon__size--32" x-cloak></i>
1085                </button>
1086            </div>
1087        </div>
1088    </nav>
1089
1090    
1091    <template x-if="mobileMenuOpen" @click.away="mobileMenuOpen = false; activeMenu = null">
1092        <div class="mobile-nav-content">
1093                                                <button
1094    class="mobile-nav-item"
1095    @click="activeMenu = activeMenu === 'features' ? null : 'features'"
1096    :class="activeMenu === 'features' && 'active'"
1097>
1098    Features
1099    <i class="icon-chevron-down text-gray400 dt-icon__size--24"></i>
1100</button>
1101                    <div x-show="activeMenu === 'features'">
1102                        <div id="features">
1103    <div class="desktop-nav-content-container d-none d-xl-flex flex-column">
1104            <div>
1105            <button
1106                class="desktop-nav-content-title"
1107                @mouseover="hoveredItem = 'timeTracking'"
1108                @click="hoveredItem = 'timeTracking'"
1109                :class="hoveredItem === 'timeTracking' && 'active'"
1110            >
1111                Time Tracking
1112                <i class="icon-arrow-right text-gray400 dt-icon__size--18 ml-3"></i>
1113            </button>
1114        </div>
1115            <div>
1116            <button
1117                class="desktop-nav-content-title"
1118                @mouseover="hoveredItem = 'productivity'"
1119                @click="hoveredItem = 'productivity'"
1120                :class="hoveredItem === 'productivity' && 'active'"
1121            >
1122                Productivity insights
1123                <i class="icon-arrow-right text-gray400 dt-icon__size--18 ml-3"></i>
1124            </button>
1125        </div>
1126            <div>
1127            <button
1128                class="desktop-nav-content-title"
1129                @mouseover="hoveredItem = 'integrations'"
1130                @click="hoveredItem = 'integrations'"
1131                :class="hoveredItem === 'integrations' && 'active'"
1132            >
1133                Integrations &amp; API
1134                <i class="icon-arrow-right text-gray400 dt-icon__size--18 ml-3"></i>
1135            </button>
1136        </div>
1137            <div>
1138            <button
1139                class="desktop-nav-content-title"
1140                @mouseover="hoveredItem = 'analytics'"
1141                @click="hoveredItem = 'analytics'"
1142                :class="hoveredItem === 'analytics' && 'active'"
1143            >
1144                Analytics &amp; reports
1145                <i class="icon-arrow-right text-gray400 dt-icon__size--18 ml-3"></i>
1146            </button>
1147        </div>
1148            <div>
1149            <button
1150                class="desktop-nav-content-title"
1151                @mouseover="hoveredItem = 'workforce'"
1152                @click="hoveredItem = 'workforce'"
1153                :class="hoveredItem === 'workforce' && 'active'"
1154            >
1155                Workforce management
1156                <i class="icon-arrow-right text-gray400 dt-icon__size--18 ml-3"></i>
1157            </button>
1158        </div>
1159    </div>
1160
1161    
1162    <div>
1163                    <div x-show="mobileMenuOpen || hoveredItem === 'timeTracking'">
1164                <div class="dt-typography-subtitle font-weight-semibold text-secondary d-xl-none mb-9 mt-8">Time Tracking</div>
1165
1166                <div class="grid-items">
1167                                            
1168                        
1169                                                    <a href="https://desktime.com/features/time-tracking" class="feature-item">
1170    <img
1171        src="/static/web/menu/icons/time-tracking.svg"
1172        alt="Automatic time tracking"
1173        width="32"
1174        height="32"
1175    >
1176    <div class="d-flex flex-column ml-3">
1177        <div class="text-primary font-weight-semibold">Automatic time tracking</div>
1178                    <div class="dt-typography-body-small text-tertiary">Effortless time tracking with our desktop app</div>
1179            </div>
1180</a>
1181                                                                    
1182                        
1183                                                    <a href="https://desktime.com/features/project-tracking" class="feature-item">
1184    <img
1185        src="/static/web/menu/icons/projects.svg"
1186        alt="Project time tracking"
1187        width="32"
1188        height="32"
1189    >
1190    <div class="d-flex flex-column ml-3">
1191        <div class="text-primary font-weight-semibold">Project time tracking</div>
1192                    <div class="dt-typography-body-small text-tertiary">
1192Track time and progress of specific tasks and projects</div>
1193            </div>
1194</a>
1195                                                                    
1196                        
1197                                                    <a href="https://desktime.com/features/manual-time-tracking" class="feature-item">
1198    <img
1199        src="/static/web/menu/icons/offline-time.svg"
1200        alt="Manual and offline time tracking"
1201        width="32"
1202        height="32"
1203    >
1204    <div class="d-flex flex-column ml-3">
1205        <div class="text-primary font-weight-semibold">Manual and offline time tracking</div>
1206                    <div class="dt-typography-body-small text-tertiary">Track time manually and see when employees take breaks from working</div>
1207            </div>
1208</a>
1209                                                                    
1210                        
1211                                                    <a href="https://desktime.com/features/private-time" class="feature-item">
1212    <img
1213        src="/static/web/menu/icons/private-time.svg"
1214        alt="Private time"
1215        width="32"
1216        height="32"
1217    >
1218    <div class="d-flex flex-column ml-3">
1219        <div class="text-primary font-weight-semibold">Private time</div>
1220                    <div class="dt-typography-body-small text-tertiary">Let users take a break from tracking when needed</div>
1221            </div>
1222</a>
1223                                                            </div>
1224
1225                <a href="https://desktime.com/features" class="dt-action-link dt-action-link-icon mt-9">
1226                    <span>
1227                                                    See all features
1228                                            </span>
1229                    <i class="icon-arrow-right dt-icon__size--18"></i>
1230                </a>
1231
1232                
1233                <div class="border-tertiary-bottom mt-8 mb-8 d-xl-none"></div>
1234            </div>
1235                    <div x-show="mobileMenuOpen || hoveredItem === 'productivity'">
1236                <div class="dt-typography-subtitle font-weight-semibold text-secondary d-xl-none mb-9 mt-8">Productivity insights</div>
1237
1238                <div class="grid-items">
1239                                            
1240                        
1241                                                    <a href="https://desktime.com/features/productivity-calculation" class="feature-item">
1242    <img
1243        src="/static/web/menu/icons/productivity.svg"
1244        alt="Productivity calculation"
1245        width="32"
1246        height="32"
1247    >
1248    <div class="d-flex flex-column ml-3">
1249        <div class="text-primary font-weight-semibold">Productivity calculation</div>
1250                    <div class="dt-typography-body-small text-tertiary">Get data about your employees’ productivity</div>
1251            </div>
1252</a>
1253                                                                    
1254                        
1255                                                    <a href="https://desktime.com/features/time-tracking-with-screenshots" class="feature-item">
1256    <img
1257        src="/static/web/menu/icons/screenshots.svg"
1258        alt="Screenshots"
1259        width="32"
1260        height="32"
1261    >
1262    <div class="d-flex flex-column ml-3">
1263        <div class="text-primary font-weight-semibold">Screenshots</div>
1264                    <div class="dt-typography-body-small text-tertiary">Get proof-of-work in cases of questionable productivity or integrity</div>
1265            </div>
1266</a>
1267                                                                    
1268                        
1269                                                    <a href="https://desktime.com/features/computer-usage-monitoring" class="feature-item">
1270    <img
1271        src="/static/web/menu/icons/url-tracking.svg"
1272        alt="URL &amp; app tracking"
1273        width="32"
1274        height="32"
1275    >
1276    <div class="d-flex flex-column ml-3">
1277        <div class="text-primary font-weight-semibold">URL &amp; app tracking</div>
1278                    <div class="dt-typography-body-small text-tertiary">See what sites and apps your employees visit</div>
1279            </div>
1280</a>
1281                                                                    
1282                        
1283                                                    <a href="https://desktime.com/features/document-title-tracking" class="feature-item">
1284    <img
1285        src="/static/web/menu/icons/title-tracking.svg"
1286        alt="Document title tracking"
1287        width="32"
1288        height="32"
1289    >
1290    <div class="d-flex flex-column ml-3">
1291        <div class="text-primary font-weight-semibold">Document title tracking</div>
1292                    <div class="dt-typography-body-small text-tertiary">Keep track of document titles and email subjects</div>
1293            </div>
1294</a>
1295                                                                    
1296                        
1297                                                    <a href="https://desktime.com/features/customization" class="feature-item">
1298    <img
1299        src="/static/web/menu/icons/customizable-settings.svg"
1300        alt="Customizable settings"
1301        width="32"
1302        height="32"
1303    >
1304    <div class="d-flex flex-column ml-3">
1305        <div class="text-primary font-weight-semibold">Customizable settings</div>
1306                    <div class="dt-typography-body-small text-tertiary">
1306Personalize DeskTime to fit your exact needs</div>
1307            </div>
1308</a>
1309                                                                    
1310                        
1311                                                    <a href="https://help.desktime.com/hc/en-us/articles/25130467106077" class="feature-item">
1312    <img
1313        src="/static/web/menu/icons/notifications.svg"
1314        alt="Notifications"
1315        width="32"
1316        height="32"
1317    >
1318    <div class="d-flex flex-column ml-3">
1319        <div class="text-primary font-weight-semibold">Notifications</div>
1320                    <div class="dt-typography-body-small text-tertiary">Receive notifications about important activity updates</div>
1321            </div>
1322</a>
1323                                                            </div>
1324
1325                <a href="https://desktime.com/features" class="dt-action-link dt-action-link-icon mt-9">
1326                    <span>
1327                                                    See all features
1328                                            </span>
1329                    <i class="icon-arrow-right dt-icon__size--18"></i>
1330                </a>
1331
1332                
1333                <div class="border-tertiary-bottom mt-8 mb-8 d-xl-none"></div>
1334            </div>
1335                    <div x-show="mobileMenuOpen || hoveredItem === 'integrations'">
1336                <div class="dt-typography-subtitle font-weight-semibold text-secondary d-xl-none mb-9 mt-8">Integrations &amp; API</div>
1337
1338                <div class="grid-items">
1339                                            
1340                        
1341                                                    <a href="https://desktime.com/features/integrations/jira-time-tracking" class="feature-item align-items-center">
1342                                <img
1343                                    src="/static/web/menu/integrations/Jira.svg"
1344                                    alt="Jira"
1345                                    width="32"
1346                                    height="32"
1347                                >
1348                                <div class="text-primary font-weight-semibold pl-2">Jira</div>
1349                            </a>
1350                                                                    
1351                        
1352                                                    <a href="https://desktime.com/features/integrations/asana-time-tracking" class="feature-item align-items-center">
1353                                <img
1354                                    src="/static/web/menu/integrations/Asana.svg"
1355                                    alt="Asana"
1356                                    width="32"
1357                                    height="32"
1358                                >
1359                                <div class="text-primary font-weight-semibold pl-2">Asana</div>
1360                            </a>
1361                                                                    
1362                        
1363                                                    <a href="https://desktime.com/features/integrations/outlook-time-tracking" class="feature-item align-items-center">
1364                                <img
1365                                    src="/static/web/menu/integrations/Outlook.svg"
1366                                    alt="Outlook"
1367                                    width="32"
1368                                    height="32"
1369                                >
1370                                <div class="text-primary font-weight-semibold pl-2">Outlook</div>
1371                            </a>
1372                                                                    
1373                        
1374                                                    <a href="https://desktime.com/features/integrations/google-calendar-time-tracking" class="feature-item align-items-center">
1375                                <img
1376                                    src="/static/web/menu/integrations/GoogleCalendar.svg"
1377                                    alt="Google Calendar"
1378                                    width="32"
1379                                    height="32"
1380                                >
1381                                <div class="text-primary font-weight-semibold pl-2">Google Calendar</div>
1382                            </a>
1383                                                                    
1384                        
1385                                                    <a href="https://desktime.com/features/integrations/gitlab-time-tracking" class="feature-item align-items-center">
1386                                <img
1387                                    src="/static/web/menu/integrations/Gitlab.svg"
1388                                    alt="GitLab"
1389                                    width="32"
1390                                    height="32"
1391                                >
1392                                <div class="text-primary font-weight-semibold pl-2">GitLab</div>
1393                            </a>
1394                                                                    
1395                        
1396                                                    <a href="https://desktime.com/features/integrations/trello-time-tracking" class="feature-item align-items-center">
1397                                <img
1398                                    src="/static/web/menu/integrations/Trello.svg"
1399                                    alt="Trello"
1400                                    width="32"
1401                                    height="32"
1402                                >
1403                                <div class="text-primary font-weight-semibold pl-2">Trello</div>
1404                            </a>
1405                                                                    
1406                        
1407                                                    <a href="https://desktime.com/features/integrations/zapier-time-tracking" class="feature-item align-items-center">
1408                                <img
1409                                    src="/static/web/menu/integrations/Zapier.svg"
1410                                    alt="Zapier"
1411                                    width="32"
1412                                    height="32"
1413                                >
1414                                <div class="text-primary font-weight-semibold pl-2">Zapier</div>
1415                            </a>
1416                                                            </div>
1417
1418                <a href="https://desktime.com/features/integrations" class="dt-action-link dt-action-link-icon mt-9">
1419                    <span>
1420                                                    More about integrations &amp; API
1421                                            </span>
1422                    <i class="icon-arrow-right dt-icon__size--18"></i>
1423                </a>
1424
1425                
1426                <div class="border-tertiary-bottom mt-8 mb-8 d-xl-none"></div>
1427            </div>
1428                    <div x-show="mobileMenuOpen || hoveredItem === 'analytics'">
1429                <div class="dt-typography-subtitle font-weight-semibold text-secondary d-xl-none mb-9 mt-8">Analytics &amp; reports</div>
1430
1431                <div class="grid-items">
1432                                            
1433                        
1434                                                    <a href="https://desktime.com/features/time-tracking-reports" class="feature-item">
1435    <img
1436        src="/static/web/menu/icons/reports.svg"
1437        alt="Reports"
1438        width="32"
1439        height="32"
1440    >
1441    <div class="d-flex flex-column ml-3">
1442        <div class="text-primary font-weight-semibold">Reports</div>
1443                    <div class="dt-typography-body-small text-tertiary">Get in-depth data about your team’s performance</div>
1444            </div>
1445</a>
1446                                                                    
1447                        
1448                                                    <a href="https://desktime.com/features/time-tracking-dashboard" class="feature-item">
1449    <img
1450        src="/static/web/menu/icons/admin.svg"
1451        alt="Admin dashboard"
1452        width="32"
1453        height="32"
1454    >
1455    <div class="d-flex flex-column ml-3">
1456        <div class="text-primary font-weight-semibold">Admin dashboard</div>
1457                    <div class="dt-typography-body-small text-tertiary">Gain insights about your employees&#039; work hours and productivity levels</div>
1458            </div>
1459</a>
1460                                                                    
1461                        
1462                                                    <a href="https://desktime.com/features/my-desktime" class="feature-item">
1463    <img
1464        src="/static/web/menu/icons/team-members.svg"
1465        alt="User dashboard"
1466        width="32"
1467        height="32"
1468    >
1469    <div class="d-flex flex-column ml-3">
1470        <div class="text-primary font-weight-semibold">User dashboard</div>
1471                    <div class="dt-typography-body-small text-tertiary">See your team’s overall activities and performance</div>
1472            </div>
1473</a>
1474                                                                    
1475                        
1476                                                    <a href="https://desktime.com/features/exports" class="feature-item">
1477    <img
1478        src="/static/web/menu/icons/exports.svg"
1479        alt="Exports"
1480        width="32"
1481        height="32"
1482    >
1483    <div class="d-flex flex-column ml-3">
1484        <div class="text-primary font-weight-semibold">Exports</div>
1485                    <div class="dt-typography-body-small text-tertiary">Download and save tracked data</div>
1486            </div>
1487</a>
1488                                                                    
1489                        
1490                                                    <a href="https://desktime.com/features/ai-summary" class="feature-item">
1491    <img
1492        src="/static/web/menu/icons/ai-summary.svg"
1493        alt="AI summary"
1494        width="32"
1495        height="32"
1496    >
1497    <div class="d-flex flex-column ml-3">
1498        <div class="text-primary font-weight-semibold">AI summary</div>
1499                    <div class="dt-typography-body-small text-tertiary">See daily and weekly insights instantly with AI-powered summaries</div>
1500            </div>
1501</a>
1502                                                            </div>
1503
1504                <a href="https://desktime.com/features" class="dt-action-link dt-action-link-icon mt-9">
1505                    <span>
1506                                                    See all features
1507                                            </span>
1508                    <i class="icon-arrow-right dt-icon__size--18"></i>
1509                </a>
1510
1511                
1512                <div class="border-tertiary-bottom mt-8 mb-8 d-xl-none"></div>
1513            </div>
1514                    <div x-show="mobileMenuOpen || hoveredItem === 'workforce'">
1515                <div class="dt-typography-subtitle font-weight-semibold text-secondary d-xl-none mb-9 mt-8">Workforce management</div>
1516
1517                <div class="grid-items">
1518                                            
1519                        
1520                                                    <a href="https://desktime.com/features/shift-scheduling" class="feature-item">
1521    <img
1522        src="/static/web/menu/icons/work-sch.svg"
1523        alt="Shift scheduling"
1524        width="32"
1525        height="32"
1526    >
1527    <div class="d-flex flex-column ml-3">
1528        <div class="text-primary font-weight-semibold">Shift scheduling</div>
1529                    <div class="dt-typography-body-small text-tertiary">Plan and manage employee shifts in one place</div>
1530            </div>
1531</a>
1532                                                                    
1533                        
1534                                                    <a href="https://desktime.com/features/absence-calendar" class="feature-item">
1535    <img
1536        src="/static/web/menu/icons/absence-calendar.svg"
1537        alt="Absence calendar"
1538        width="32"
1539        height="32"
1540    >
1541    <div class="d-flex flex-column ml-3">
1542        <div class="text-primary font-weight-semibold">Absence calendar</div>
1543                    <div class="dt-typography-body-small text-tertiary">See who’s sick, on vacation, OOO and more</div>
1544            </div>
1545</a>
1546                                                                    
1547                        
1548                                                    <a href="https://desktime.com/time-and-attendance-software" class="feature-item">
1549    <img
1550        src="/static/web/menu/icons/attendance-management.svg"
1551        alt="Attendance management"
1552        width="32"
1553        height="32"
1554    >
1555    <div class="d-flex flex-column ml-3">
1556        <div class="text-primary font-weight-semibold">Attendance management</div>
1557                    <div class="dt-typography-body-small text-tertiary">See how much time your employees spend working</div>
1558            </div>
1559</a>
1560                                                                    
1561                        
1562                                                    <a href="https://desktime.com/features/team-contacts" class="feature-item">
1563    <img
1564        src="/static/web/menu/icons/employee-directory.svg"
1565        alt="Employee directory"
1566        width="32"
1567        height="32"
1568    >
1569    <div class="d-flex flex-column ml-3">
1570        <div class="text-primary font-weight-semibold">Employee directory</div>
1571                    <div class="dt-typography-body-small text-tertiary">Easily find another colleague’s contact information</div>
1572            </div>
1573</a>
1574                                                                    
1575                        
1576                                                    <a href="https://desktime.com/features/ip-location" class="feature-item">
1577    <img
1578        src="/static/web/menu/icons/ip-location.svg"
1579        alt="IP location"
1580        width="32"
1581        height="32"
1582    >
1583    <div class="d-flex flex-column ml-3">
1584        <div class="text-primary font-weight-semibold">IP location</div>
1585                    <div class="dt-typography-body-small text-tertiary">See who’s working from the office or remotely</div>
1586            </div>
1587</a>
1588                                                            </div>
1589
1590                <a href="https://desktime.com/features" class="dt-action-link dt-action-link-icon mt-9">
1591                    <span>
1592                                                    See all features
1593                                            </span>
1594                    <i class="icon-arrow-right dt-icon__size--18"></i>
1595                </a>
1596
1597                
1598                <div class="border-tertiary-bottom mt-8 mb-8 d-xl-none"></div>
1599            </div>
1600            </div>
1601</div>
1602                    </div>
1603
1604                    <button
1605    class="mobile-nav-item"
1606    @click="activeMenu = activeMenu === 'solutions' ? null : 'solutions'"
1607    :class="activeMenu === 'solutions' && 'active'"
1608>
1609    Solutions
1610    <i class="icon-chevron-down text-gray400 dt-icon__size--24"></i>
1611</button>
1612                    <div x-show="activeMenu === 'solutions'">
1613                        <div id="solutions" class="my-8 my-xl-0">
1614            <div class="d-flex flex-column">
1615            <div class="dt-typography-body-small text-tertiary font-weight-semibold">For managers</div>
1616
1617                            
1618                <a href="https://desktime.com/performance-evaluation" class="text-primary font-weight-semibold mt-6">Performance evaluation</a>
1619                            
1620                <a href="https://desktime.com/employee-monitoring-software" class="text-primary font-weight-semibold mt-6">Employee monitoring</a>
1621                            
1622                <a href="https://desktime.com/unlock-team-potential" class="text-primary font-weight-semibold mt-6">Transparency &amp; accountability</a>
1623                            
1624                <a href="https://desktime.com/remote-employee-monitoring" class="text-primary font-weight-semibold mt-6">Remote work monitoring</a>
1625                            
1626                <a href="https://desktime.com/employee-productivity-monitoring-software" class="text-primary font-weight-semibold mt-6">Productivity &amp; efficiency</a>
1627                    </div>
1628            <div class="d-flex flex-column">
1629            <div class="dt-typography-body-small text-tertiary font-weight-semibold">For employees</div>
1630
1631                            
1632                <a href="https://desktime.com/employee-wellbeing" class="text-primary font-weight-semibold mt-6">Employee well-being</a>
1633                            
1634                <a href="https://desktime.com/work-life-balance" class="text-primary font-weight-semibold mt-6">Work-life balance</a>
1635                            
1636                <a href="https://desktime.com/burnout-prevention" class="text-primary font-weight-semibold mt-6">Burnout prevention</a>
1637                            
1638                <a href="https://desktime.com/hybrid-work" class="text-primary font-weight-semibold mt-6">Hybrid work support</a>
1639                            
1640                <a href="https://desktime.com/self-accountability" class="text-primary font-weight-semibold mt-6">Self-accountability</a>
1641                    </div>
1642            <div class="d-flex flex-column">
1643            <div class="dt-typography-body-small text-tertiary font-weight-semibold">By industry</div>
1644
1645                            
1646                <a href="https://desktime.com/it-team-time-tracking" class="text-primary font-weight-semibold mt-6">IT &amp; software</a>
1647                            
1648                <a href="https://desktime.com/financial-industry-time-tracking" class="text-primary font-weight-semibold mt-6">Financial services</a>
1649                            
1650                <a href="https://desktime.com/industries/time-tracking-for-consultants" class="text-primary font-weight-semibold mt-6">Consultants</a>
1651                            
1652                <a href="https://desktime.com/industries/time-management-for-startups" class="text-primary font-weight-semibold mt-6">Startups</a>
1653                            
1654                <a href="https://desktime.com/agency-time-tracking" class="text-primary font-weight-semibold mt-6">Agencies</a>
1655                            
1656                <a href="https://desktime.com/industries/time-tracking-for-developers" class="text-primary font-weight-semibold mt-6">Developers</a>
1657                            
1658                <a href="https://desktime.com/industries/time-tracking-for-lawyers" class="text-primary font-weight-semibold mt-6">Lawyers</a>
1659                    </div>
1660            <div class="d-flex flex-column">
1661            <div class="dt-typography-body-small text-tertiary font-weight-semibold">By business size</div>
1662
1663                            
1664                <a href="https://desktime.com/intro" class="text-primary font-weight-semibold mt-6">Enterprises</a>
1665                            
1666                <a href="https://desktime.com/employee-time-tracking-software-for-companies" class="text-primary font-weight-semibold mt-6">Medium businesses</a>
1667                            
1668                <a href="https://desktime.com/time-tracking-for-small-businesses" class="text-primary font-weight-semibold mt-6">Small teams</a>
1669                            
1670                <a href="https://desktime.com/time-tracking-for-freelancers" class="text-primary font-weight-semibold mt-6">Freelancers</a>
1671                    </div>
1672    
1673    <a href="https://www.youtube.com/watch?v=Jpt0L_RzVAA" target="_blank" class="thumbnail-container">
1674    <div class="youtube w-play small">
1675        <img
1676            src="/static/web/menu/what-is-desktime-thumbnail.webp"
1677            alt="DeskTime for Managers - a video tutorial that c
1677overs the basics of DeskTime and guides through the setup and onboarding process"
1678            width="240"
1679            height="160"
1680            class="rounded-md object-cover"
1681            loading="lazy"
1682        >
1683    </div>
1684
1685    <div class="dt-typography-body-small text-uppercase text-secondary font-weight-semibold mt-6">Video</div>
1686    <div class="d-flex align-items-center my-2 thumbnail-title">
1687        Get started with DeskTime <i class="icon-external-link dt-icon__size--18 text-gray300 ml-2"></i>
1688    </div>
1689    <div class="dt-typography-body-small text-tertiary">Start working with our time tracking tool in 5 easy steps</div>
1690
1691    </a>
1692</div>
1693                    </div>
1694
1695                    <button
1696    class="mobile-nav-item"
1697    @click="activeMenu = activeMenu === 'resources' ? null : 'resources'"
1698    :class="activeMenu === 'resources' && 'active'"
1699>
1700    Resources
1701    <i class="icon-chevron-down text-gray400 dt-icon__size--24"></i>
1702</button>
1703                    <div x-show="activeMenu === 'resources'">
1704                        <div id="resources" class="my-8 my-xl-0">
1705    <div class="content">
1706        <div class="d-flex flex-column">
1707                            
1708                <a href="https://desktime.com/time-tracking-roi-calculator" class="text-primary font-weight-semibold mb-6" >
1709                    Time tracking ROI
1710                </a>
1711                            
1712                <a href="https://desktime.com/what-does-desktime-track" class="text-primary font-weight-semibold mb-6" >
1713                    What does DeskTime track?
1714                </a>
1715                            
1716                <a href="https://help.desktime.com/hc/en-us" class="text-primary font-weight-semibold mb-6"  target="_blank" rel="noopener noreferrer" >
1717                    Help Center
1718                </a>
1719                            
1720                <a href="https://desktime.com/case-studies" class="text-primary font-weight-semibold mb-6" >
1721                    Case studies
1722                </a>
1723                            
1724                <a href="https://desktime.com/product-updates" class="text-primary font-weight-semibold mb-6" >
1725                    Product updates
1726                </a>
1727                            
1728                <a href="/blog" class="text-primary font-weight-semibold mb-6" >
1729                    Blog
1730                </a>
1731                            
1732                <a href="https://desktime.com/alternatives" class="text-primary font-weight-semibold mb-6" >
1733                    Competitor comparison
1734                </a>
1735                            
1736                <a href="https://desktime.com/security" class="text-primary font-weight-semibold mb-6" >
1737                    Legal &amp; compliance
1738                </a>
1739                            
1740                <a href="https://desktime.com/about" class="text-primary font-weight-semibold mb-6" >
1741                    About us
1742                </a>
1743                            
1744                <a href="https://desktime.com/contacts" class="text-primary font-weight-semibold mb-6" >
1745                    Contact us
1746                </a>
1747            
1748                            <a href="https://desktime.com/download" class="text-primary font-weight-semibold mb-6">Download</a>
1749                    </div>
1750
1751        <div class="mt-7 mt-xl-0">
1752            <a href="https://desktime.com/managers-toolkit" target="_blank" class="thumbnail-container">
1753    <div class="">
1754        <img
1755            src="/static/web/menu/[email protected]"
1756            alt="Guide for getting started with DeskTime productivity monitoring software. Setup, configuration, employee unboarding"
1757            width="240"
1758            height="160"
1759            class="rounded-md object-cover"
1760            loading="lazy"
1761        >
1762    </div>
1763
1764    <div class="dt-typography-body-small text-uppercase text-secondary font-weight-semibold mt-6">FEATURED PAGE</div>
1765    <div class="d-flex align-items-center my-2 thumbnail-title">
1766        The DeskTime Setup Guide
1767    </div>
1768    <div class="dt-typography-body-small text-tertiary">Everything you need to get started, personalize your workspace, and set DeskTime up to fit your team</div>
1769
1770            <div class="dt-action-link">Read more</div>
1771    </a>
1772
1773            <a href="https://desktime.com/security" target="_blank" class="thumbnail-container">
1774    <div class="">
1775        <img
1776            src="/static/web/menu/[email protected]"
1777            alt="DeskTime security badges - G2 Users Love Us badge, ISO 27001 and ISO 27701 certifications, GDPR compliance"
1778            width="240"
1779            height="160"
1780            class="rounded-md object-cover"
1781            loading="lazy"
1782        >
1783    </div>
1784
1785    <div class="dt-typography-body-small text-uppercase text-secondary font-weight-semibold mt-6">FEATURED PAGE</div>
1786    <div class="d-flex align-items-center my-2 thumbnail-title">
1787        Security at DeskTime
1788    </div>
1789    <div class="dt-typography-body-small text-tertiary">See what measures we take every day to keep that data safe and secure</div>
1790
1791            <div class="dt-action-link">Read more</div>
1792    </a>
1793
1794            <a href="https://desktime.com/time-tracking-law-spain" target="_blank" class="thumbnail-container">
1795    <div class="">
1796        <img
1797            src="/static/web/menu/[email protected]"
1798            alt="See what&#039;s changing under Spain&#039;s new law and how DeskTime keeps you compliant"
1799            width="240"
1800            height="160"
1801            class="rounded-md object-cover"
1802            loading="lazy"
1803        >
1804    </div>
1805
1806    <div class="dt-typography-body-small text-uppercase text-secondary font-weight-semibold mt-6">FEATURED PAGE</div>
1807    <div class="d-flex align-items-center my-2 thumbnail-title">
1808        Spain's 2026 Time Tracking Reform
1809    </div>
1810    <div class="dt-typography-body-small text-tertiary">See what&#039;s changing under Spain&#039;s new law and how DeskTime keeps you compliant</div>
1811
1812            <div class="dt-action-link">Read more</div>
1813    </a>
1814        </div>
1815    </div>
1816
1817    
1818    <div class="review-bar d-none d-xl-flex">
1819        <img src="/static/web/menu/stars.svg" alt="4.5 stars" class="mr-8">
1820        <div>4.5 out of 5 from <a href="https://desktime.com/managers-toolkit" class="dt-link-white">400 reviews</a></div>
1821    </div>
1822</div>
1823                    </div>
1824                
1825                <a href="https://desktime.com/pricing" class="mobile-nav-item">Pricing</a>
1826                <a href="https://desktime.com/demo" class="mobile-nav-item">Demo</a>
1827                                    <a href="https://desktime.com/intro" class="mobile-nav-item border-bottom-0 text-violet500">Intro call</a>
1828                            
1829            <div class="d-flex d-lg-none flex-column mt-9">
1830                                    <a href="https://desktime.com/register"
1831                       id="nav-signup-primary"
1832                       class="btn btn-primary mb-5"
1833                       aria-label="Start a 14-day free trial of DeskTime"
1834                       data-ai-action="signup-start">
1835                        Start free trial
1836                    </a>
1837                                            <a href="https://desktime.com/login"
1838                           id="nav-login"
1839                           class="btn btn-secondary"
1840                           aria-label="Log in to your DeskTime account"
1841                           data-ai-action="user-login">
1842                            Log in
1843                        </a>
1844                                                </div>
1845        </div>
1846    </template>
1847
1848    </header>
1849
1850            <main id="content">
1851                    <section
1852    class="no-margin inner-padding pu-hero bg-purple-gradient"
1853    style=";"
1854    >
1855    <div class="container-fluid-override container-xl ">
1856        
1857        <div class="container">
1858            <div class="row">
1859                <div class="col-12 col-lg-6 text-center text-lg-left">
1860                    <h1 class="dt-typography-h1 font-weight-semibold font-weight-bold mb-4 text-white">What’s new at DeskTime</h1>
1861                    
1862                    <p class="dt-typography-subtitle mb-0 text-gray100">Check out the latest updates, new features, and what’s coming next to make your time tracking even easier.</p>
1863                    </div>
1864            </div>
1865        </div>
1866
1867        
1868        <div class="pu-svg-container">
1869            <svg class="w-100 h-100 d-block" viewBox="0 0 1440 253" fill="none" xmlns="http://www.w3.org/2000/svg"
1870                 preserveAspectRatio="none">
1871                <path d="M0 192.152L1440 0V253H0V192.152Z" fill="white" />
1872            </svg>
1873        </div>
1874
1875        
1876        <div class="pu-hero-image-container">
1877            <img
1878                
1879                src="/static/web/product-updates/[email protected]"
1880                srcset="/static/web/product-updates/[email protected] 2x /static/web/product-updates/[email protected] 3x"
1881                class="pu-hero-image"
1882                alt="Product Updates"
1883            >
1884        </div>
1885    </div>
1886</section>
1887
1888    
1889    <section
1890    class=""
1891    style=";"
1892    >
1893    <div class="container-fluid-override container-xl ">
1894        
1895        <h3 class="dt-typography-h3 font-weight-semibold font-weight-bold mb-3">Recent DeskTime upgrades</h3>
1896                    
1897        <p class="dt-typography-subtitle mb-9">Explore what’s fresh, improved, and ready to take your productivity to the next level.</p>
1898    
1899        <div class="product-updates-timeline position-relative">
1900                            <div class="row mb-8 mb-sm-9 mb-md-11 position-relative">
1901
1902                    <div
1903                        class="col-lg-3 d-none d-lg-flex justify-content-end align-items-start pr-5 timeline-marker-col">
1904                        <div class="d-flex align-items-center text-nowrap">
1905                            <div class="text-secondary mr-13 dt-typography-subtitle">July 21, 2026</div>
1906                            <div class="d-flex align-items-center justify-content-center position-absolute"
1907                                 style="right: 6px">
1908                                <img src="/static/web/product-updates/purple-circle.svg" class="dt-icon__size--32"
1909                                     alt="marker">
1910                            </div>
1911                        </div>
1912                    </div>
1913
1914                    <div class="col-12 col-lg-9">
1915                        <div class="dt-typography-subtitle-regular text-secondary mb-3 d-flex d-lg-none">
1916                            July 21, 2026
1917                        </div>
1918
1919                        <div class="rounded-lg p-6 mb-6 border-tertiary">
1920    <div class="row">
1921        <div class="col-12 col-md-7 d-flex flex-column justify-content-between">
1922            <div>
1923                                    <div class="d-flex flex-wrap mb-5" style="gap: 8px;">
1924                                                    <div class="badge badge-azure">
1925    
1926            Update
1927    
1928    </div>
1929                                                    <div class="badge badge-pink">
1930    
1931            New Feature
1932    
1933    </div>
1934                                            </div>
1935                
1936                <h4 class="dt-typography-h4 font-weight-semibold font-weight-bold">IP location in Team Members section</h4>
1937                    
1938                <p class="dt-typography-subtitle mb-5 text-secondary dt-typography-subtitle-regular">Team Members now shows who's working from the office or remotely.</p>
1939                </div>
1940
1941                            <a href="https://desktime.com/app/team-members" class="dt-action-link dt-action-link-icon">
1942                    <span>Explore</span>
1943                    <i class="icon-arrow-right"></i>
1944                </a>
1945                    </div>
1946
1947        <div class="col-12 col-md-5 mt-6 mt-md-0 d-flex align-items-center">
1948            <div class="pu-feature-card-image-container">
1949                <img src="/static/web/product-updates/team-members-ip.webp"
1950                                              srcset="/static/web/product-updates/[email protected] 2x, /static/web/product-updates/[email protected] 3x"
1951                                          class="lazyload img-fluid"
1952                     alt="IP location in Team Members section"
1953                >
1954            </div>
1955        </div>
1956    </div>
1957</div>
1958                    </div>
1959                </div>
1960                            <div class="row mb-8 mb-sm-9 mb-md-11 position-relative">
1961
1962                    <div
1963                        class="col-lg-3 d-none d-lg-flex justify-content-end align-items-start pr-5 timeline-marker-col">
1964                        <div class="d-flex align-items-center text-nowrap">
1965                            <div class="text-secondary mr-13 dt-typography-subtitle">July 14, 2026</div>
1966                            <div class="d-flex align-items-center justify-content-center position-absolute"
1967                                 style="right: 6px">
1968                                <img src="/static/web/product-updates/purple-circle.svg" class="dt-icon__size--32"
1969                                     alt="marker">
1970                            </div>
1971                        </div>
1972                    </div>
1973
1974                    <div class="col-12 col-lg-9">
1975                        <div class="dt-typography-subtitle-regular text-secondary mb-3 d-flex d-lg-none">
1976                            July 14, 2026
1977                        </div>
1978
1979                        <div class="rounded-lg p-6 mb-6 border-tertiary">
1980    <div class="row">
1981        <div class="col-12 col-md-7 d-flex flex-column justify-content-between">
1982            <div>
1983                                    <div class="d-flex flex-wrap mb-5" style="gap: 8px;">
1984                                                    <div class="badge badge-azure">
1985    
1986            Update
1987    
1988    </div>
1989                                                    <div class="badge badge-gray">
1990    
1991            Onboarding
1992    
1993    </div>
1994                                            </div>
1995                
1996                <h4 class="dt-typography-h4 font-weight-semibold font-weight-bold">Redesigned New User Experience</h4>
1997                    
1998                <p class="dt-typography-subtitle mb-5 text-secondary dt-typography-subtitle-regular">We have overhauled the onboarding process for new users, making it even faster and simpler to get started with DeskTime.</p>
1999                </div>
2000
2001                            <a href="https://desktime.com/register" class="dt-action-link dt-action-link-icon">
2002                    <span>Sign up</span>
2003                    <i class="icon-arrow-right"></i>
2004                </a>
2005                    </div>
2006
2007        <div class="col-12 col-md-5 mt-6 mt-md-0 d-flex align-items-center">
2008            <div class="pu-feature-card-image-container">
2009                <img src="/static/web/product-updates/onboarding.webp"
2010                                              srcset="/static/web/product-updates/[email protected] 2x, /static/web/product-updates/[email protected] 3x"
2011                                          class="lazyload img-fluid"
2012                     alt="Redesigned New User Experience"
2013                >
2014            </div>
2015        </div>
2016    </div>
2017</div>
2018                    </div>
2019                </div>
2020                            <div class="row mb-8 mb-sm-9 mb-md-11 position-relative">
2021
2022                    <div
2023                        class="col-lg-3 d-none d-lg-flex justify-content-end align-items-start pr-5 timeline-marker-col">
2024                        <div class="d-flex align-items-center text-nowrap">
2025                            <div class="text-secondary mr-13 dt-typography-subtitle">May 25, 2026</div>
2026                            <div class="d-flex align-items-center justify-content-center position-absolute"
2027                                 style="right: 6px">
2028                                <img src="/static/web/product-updates/purple-circle.svg" class="dt-icon__size--32"
2029                                     alt="marker">
2030                            </div>
2031                        </div>
2032                    </div>
2033
2034                    <div class="col-12 col-lg-9">
2035                        <div class="dt-typography-subtitle-regular text-secondary mb-3 d-flex d-lg-none">
2036                            May 25, 2026
2037                        </div>
2038
2039                        <div class="rounded-lg p-6 mb-6 border-tertiary">
2040    <div class="row">
2041        <div class="col-12 col-md-7 d-flex flex-column justify-content-between">
2042            <div>
2043                                    <div class="d-flex flex-wrap mb-5" style="gap: 8px;">
2044                                                    <div class="badge badge-azure">
2045    
2046            Update
2047    
2048    </div>
2049                                                    <div class="badge badge-gray">
2050    
2051            Tracking
2052    
2053    </div>
2054                                            </div>
2055                
2056                <h4 class="dt-typography-h4 font-weight-semibold font-weight-bold">App Categories Overhaul</h4>
2057                    
2058                <p class="dt-typography-subtitle mb-5 text-secondary dt-typography-subtitle-regular">The redesigned App categories panel now allows bulk selection of apps and websites to make categorization faster and easier.</p>
2059                </div>
2060
2061                            <a href="https://help.desktime.com/hc/en-us/articles/4413038887569" class="dt-action-link dt-action-link-icon">
2062                    <span>More details</span>
2063                    <i class="icon-arrow-right"></i>
2064                </a>
2065                    </div>
2066
2067        <div class="col-12 col-md-5 mt-6 mt-md-0 d-flex align-items-center">
2068            <div class="pu-feature-card-image-container">
2069                <img src="/static/web/product-updates/categories.webp"
2070                                              srcset="/static/web/product-updates/[email protected] 2x, /static/web/product-updates/[email protected] 3x"
2071                                          class="lazyload img-fluid"
2072                     alt="App Categories Overhaul"
2073                >
2074            </div>
2075        </div>
2076    </div>
2077</div>
2078                    </div>
2079                </div>
2080                            <div class="row mb-8 mb-sm-9 mb-md-11 position-relative">
2081
2082                    <div
2083                        class="col-lg-3 d-none d-lg-flex justify-content-end align-items-start pr-5 timeline-marker-col">
2084                        <div class="d-flex align-items-center text-nowrap">
2085                            <div class="text-secondary mr-13 dt-typography-subtitle">May 13, 2026</div>
2086                            <div class="d-flex align-items-center justify-content-center position-absolute"
2087                                 style="right: 6px">
2088                                <img src="/static/web/product-updates/purple-circle.svg" class="dt-icon__size--32"
2089                                     alt="marker">
2090                            </div>
2091                        </div>
2092                    </div>
2093
2094                    <div class="col-12 col-lg-9">
2095                        <div class="dt-typography-subtitle-regular text-secondary mb-3 d-flex d-lg-none">
2096                            May 13, 2026
2097                        </div>
2098
2099                        <div class="rounded-lg p-6 mb-6 border-tertiary">
2100    <div class="row">
2101        <div class="col-12 col-md-7 d-flex flex-column justify-content-between">
2102            <div>
2103                                    <div class="d-flex flex-wrap mb-5" style="gap: 8px;">
2104                                                    <div class="badge badge-pink">
2105    
2106            New Feature
2107    
2108    </div>
2109                                                    <div class="badge badge-gray">
2110    
2111            IP location
2112    
2113    </div>
2114                                            </div>
2115                
2116                <h4 class="dt-typography-h4 font-weight-semibold font-weight-bold">IP location in Exports</h4>
2117                    
2118                <p class="dt-typography-subtitle mb-5 text-secondary dt-typography-subtitle-regular">Include IP-based work location data in your exports. See where work happens alongside your existing data for more complete reporting.</p>
2119                </div>
2120
2121                            <a href="https://desktime.com/app/exports" class="dt-action-link dt-action-link-icon">
2122                    <span>Explore</span>
2123                    <i class="icon-arrow-right"></i>
2124                </a>
2125                    </div>
2126
2127        <div class="col-12 col-md-5 mt-6 mt-md-0 d-flex align-items-center">
2128            <div class="pu-feature-card-image-container">
2129                <img src="/static/web/product-updates/ip-location-exports.webp"
2130                                              srcset="/static/web/product-updates/[email protected] 2x, /static/web/product-updates/[email protected] 3x"
2131                                          class="lazyload img-fluid"
2132                     alt="IP location in Exports"
2133                >
2134            </div>
2135        </div>
2136    </div>
2137</div>
2138                    </div>
2139                </div>
2140                            <div class="row mb-8 mb-sm-9 mb-md-11 position-relative">
2141
2142                    <div
2143                        class="col-lg-3 d-none d-lg-flex justify-content-end align-items-start pr-5 timeline-marker-col">
2144                        <div class="d-flex align-items-center text-nowrap">
2145                            <div class="text-secondary mr-13 dt-typography-subtitle">April 20, 2026</div>
2146                            <div class="d-flex align-items-center justify-content-center position-absolute"
2147                                 style="right: 6px">
2148                                <img src="/static/web/product-updates/purple-circle.svg" class="dt-icon__size--32"
2149                                     alt="marker">
2150                            </div>
2151                        </div>
2152                    </div>
2153
2154                    <div class="col-12 col-lg-9">
2155                        <div class="dt-typography-subtitle-regular text-secondary mb-3 d-flex d-lg-none">
2156                            April 20, 2026
2157                        </div>
2158
2159                        <div class="rounded-lg p-6 mb-6 border-tertiary">
2160    <div class="row">
2161        <div class="col-12 col-md-7 d-flex flex-column justify-content-between">
2162            <div>
2163                                    <div class="d-flex flex-wrap mb-5" style="gap: 8px;">
2164                                                    <div class="badge badge-azure">
2165    
2166            Update
2167    
2168    </div>
2169                                                    <div class="badge badge-gray">
2170    
2171            Work Schedule
2172    
2173    </div>
2174                                                    <div class="badge badge-red">
2175            <i class="icon-flame dt-icon__size--12 mr-2"
2176        ></i>
2177    
2178            HOT
2179    
2180    </div>
2181                                            </div>
2182                
2183                <h4 class="dt-typography-h4 font-weight-semibold font-weight-bold">
2183Work schedules & Absences design changes</h4>
2184                    
2185                <p class="dt-typography-subtitle mb-5 text-secondary dt-typography-subtitle-regular">Work Schedules and the Absence Calendar now have a cleaner, more intuitive design. Plan work time and manage absences with ease.</p>
2186                </div>
2187
2188                            <a href="https://desktime.com/app/schedule" class="dt-action-link dt-action-link-icon">
2189                    <span>Explore</span>
2190                    <i class="icon-arrow-right"></i>
2191                </a>
2192                    </div>
2193
2194        <div class="col-12 col-md-5 mt-6 mt-md-0 d-flex align-items-center">
2195            <div class="pu-feature-card-image-container">
2196                <img src="/static/web/product-updates/work-schedules.webp"
2197                                              srcset="/static/web/product-updates/[email protected] 2x, /static/web/product-updates/[email protected] 3x"
2198                                          class="lazyload img-fluid"
2199                     alt="Work schedules &amp; Absences design changes"
2200                >
2201            </div>
2202        </div>
2203    </div>
2204</div>
2205                    </div>
2206                </div>
2207                            <div class="row mb-8 mb-sm-9 mb-md-11 position-relative">
2208
2209                    <div
2210                        class="col-lg-3 d-none d-lg-flex justify-content-end align-items-start pr-5 timeline-marker-col">
2211                        <div class="d-flex align-items-center text-nowrap">
2212                            <div class="text-secondary mr-13 dt-typography-subtitle">March 25, 2026</div>
2213                            <div class="d-flex align-items-center justify-content-center position-absolute"
2214                                 style="right: 6px">
2215                                <img src="/static/web/product-updates/purple-circle.svg" class="dt-icon__size--32"
2216                                     alt="marker">
2217                            </div>
2218                        </div>
2219                    </div>
2220
2221                    <div class="col-12 col-lg-9">
2222                        <div class="dt-typography-subtitle-regular text-secondary mb-3 d-flex d-lg-none">
2223                            March 25, 2026
2224                        </div>
2225
2226                        <div class="rounded-lg p-6 mb-6 border-tertiary">
2227    <div class="row">
2228        <div class="col-12 col-md-7 d-flex flex-column justify-content-between">
2229            <div>
2230                                    <div class="d-flex flex-wrap mb-5" style="gap: 8px;">
2231                                                    <div class="badge badge-pink">
2232    
2233            New Feature
2234    
2235    </div>
2236                                                    <div class="badge badge-gray">
2237    
2238            Tracking
2239    
2240    </div>
2241                                                    <div class="badge badge-red">
2242            <i class="icon-flame dt-icon__size--12 mr-2"
2243        ></i>
2244    
2245            HOT
2246    
2247    </div>
2248                                            </div>
2249                
2250                <h4 class="dt-typography-h4 font-weight-semibold font-weight-bold">IP location tracking</h4>
2251                    
2252                <p class="dt-typography-subtitle mb-5 text-secondary dt-typography-subtitle-regular">Keep track of who’s working from the office and who’s remote. Set your office IP or IP range, and DeskTime will automatically detect the work location.</p>
2253                </div>
2254
2255                            <a href="https://help.desktime.com/hc/en-us/articles/34605873392797" class="dt-action-link dt-action-link-icon">
2256                    <span>More details</span>
2257                    <i class="icon-arrow-right"></i>
2258                </a>
2259                    </div>
2260
2261        <div class="col-12 col-md-5 mt-6 mt-md-0 d-flex align-items-center">
2262            <div class="pu-feature-card-image-container">
2263                <img src="/static/web/product-updates/ip-location.webp"
2264                                              srcset="/static/web/product-updates/[email protected] 2x, /static/web/product-updates/[email protected] 3x"
2265                                          class="lazyload img-fluid"
2266                     alt="IP location tracking"
2267                >
2268            </div>
2269        </div>
2270    </div>
2271</div>
2272                    </div>
2273                </div>
2274                            <div class="row mb-8 mb-sm-9 mb-md-11 position-relative product-updates-hidden d-none">
2275
2276                    <div
2277                        class="col-lg-3 d-none d-lg-flex justify-content-end align-items-start pr-5 timeline-marker-col">
2278                        <div class="d-flex align-items-center text-nowrap">
2279                            <div class="text-secondary mr-13 dt-typography-subtitle">March 24, 2026</div>
2280                            <div class="d-flex align-items-center justify-content-center position-absolute"
2281                                 style="right: 6px">
2282                                <img src="/static/web/product-updates/purple-circle.svg" class="dt-icon__size--32"
2283                                     alt="marker">
2284                            </div>
2285                        </div>
2286                    </div>
2287
2288                    <div class="col-12 col-lg-9">
2289                        <div class="dt-typography-subtitle-regular text-secondary mb-3 d-flex d-lg-none">
2290                            March 24, 2026
2291                        </div>
2292
2293                        <div class="rounded-lg p-6 mb-6 border-tertiary">
2294    <div class="row">
2295        <div class="col-12 col-md-7 d-flex flex-column justify-content-between">
2296            <div>
2297                                    <div class="d-flex flex-wrap mb-5" style="gap: 8px;">
2298                                                    <div class="badge badge-pink">
2299    
2300            New Feature
2301    
2302    </div>
2303                                                    <div class="badge badge-gray">
2304    
2305            AI Summary
2306    
2307    </div>
2308                                                    <div class="badge badge-red">
2309            <i class="icon-flame dt-icon__size--12 mr-2"
2310        ></i>
2311    
2312            HOT
2313    
2314    </div>
2315                                            </div>
2316                
2317                <h4 class="dt-typography-h4 font-weight-semibold font-weight-bold">AI Summary</h4>
2318                    
2319                <p class="dt-typography-subtitle mb-5 text-secondary dt-typography-subtitle-regular">The new AI Summary helps make sense of everyday work data. Get clear daily insights that highlight patterns, focus areas, and workload, all in one click.</p>
2320                </div>
2321
2322                            <a href="https://help.desktime.com/hc/en-us/articles/34163491209629" class="dt-action-link dt-action-link-icon">
2323                    <span>More details</span>
2324                    <i class="icon-arrow-right"></i>
2325                </a>
2326                    </div>
2327
2328        <div class="col-12 col-md-5 mt-6 mt-md-0 d-flex align-items-center">
2329            <div class="pu-feature-card-image-container">
2330                <img src="/static/web/product-updates/ai-summary.webp"
2331                                              srcset="/static/web/product-updates/[email protected] 2x, /static/web/product-updates/[email protected] 3x"
2332                                          class="lazyload img-fluid"
2333                     alt="AI Summary"
2334                >
2335            </div>
2336        </div>
2337    </div>
2338</div>
2339                    </div>
2340                </div>
2341                            <div class="row mb-8 mb-sm-9 mb-md-11 position-relative product-updates-hidden d-none">
2342
2343                    <div
2344                        class="col-lg-3 d-none d-lg-flex justify-content-end align-items-start pr-5 timeline-marker-col">
2345                        <div class="d-flex align-items-center text-nowrap">
2346                            <div class="text-secondary mr-13 dt-typography-subtitle">December 1, 2025</div>
2347                            <div class="d-flex align-items-center justify-content-center position-absolute"
2348                                 style="right: 6px">
2349                                <img src="/static/web/product-updates/purple-circle.svg" class="dt-icon__size--32"
2350                                     alt="marker">
2351                            </div>
2352                        </div>
2353                    </div>
2354
2355                    <div class="col-12 col-lg-9">
2356                        <div class="dt-typography-subtitle-regular text-secondary mb-3 d-flex d-lg-none">
2357                            December 1, 2025
2358                        </div>
2359
2360                        <div class="rounded-lg p-6 mb-6 border-tertiary">
2361    <div class="row">
2362        <div class="col-12 col-md-7 d-flex flex-column justify-content-between">
2363            <div>
2364                                    <div class="d-flex flex-wrap mb-5" style="gap: 8px;">
2365                                                    <div class="badge badge-yellow">
2366    
2367            Apps & Integrations
2368    
2369    </div>
2370                                                    <div class="badge badge-gray">
2371    
2372            Calendar
2373    
2374    </div>
2375                                            </div>
2376                
2377                <h4 class="dt-typography-h4 font-weight-semibold font-weight-bold">Automatic absence logging</h4>
2378                    
2379                <p class="dt-typography-subtitle mb-5 text-secondary dt-typography-subtitle-regular">From now on, approved DeskTime absences will appear <strong>automatically</strong> in your Outlook Calendar.</p>
2380                </div>
2381
2382                            <a href="https://desktime.com/features/integrations/outlook-time-tracking" class="dt-action-link dt-action-link-icon">
2383                    <span>More details</span>
2384                    <i class="icon-arrow-right"></i>
2385                </a>
2386                    </div>
2387
2388        <div class="col-12 col-md-5 mt-6 mt-md-0 d-flex align-items-center">
2389            <div class="pu-feature-card-image-container">
2390                <img src="/static/web/product-updates/outlook-desktime.webp"
2391                                              srcset="/static/web/product-updates/[email protected] 2x, /static/web/product-updates/[email protected] 3x"
2392                                          class="lazyload img-fluid"
2393                     alt="Automatic absence logging"
2394                >
2395            </div>
2396        </div>
2397    </div>
2398</div>
2399                    </div>
2400                </div>
2401                            <div class="row mb-8 mb-sm-9 mb-md-11 position-relative product-updates-hidden d-none">
2402
2403                    <div
2404                        class="col-lg-3 d-none d-lg-flex justify-content-end align-items-start pr-5 timeline-marker-col">
2405                        <div class="d-flex align-items-center text-nowrap">
2406                            <div class="text-secondary mr-13 dt-typography-subtitle">September 24, 2025</div>
2407                            <div class="d-flex align-items-center justify-content-center position-absolute"
2408                                 style="right: 6px">
2409                                <img src="/static/web/product-updates/purple-circle.svg" class="dt-icon__size--32"
2410                                     alt="marker">
2411                            </div>
2412                        </div>
2413                    </div>
2414
2415                    <div class="col-12 col-lg-9">
2416                        <div class="dt-typography-subtitle-regular text-secondary mb-3 d-flex d-lg-none">
2417                            September 24, 2025
2418                        </div>
2419
2420                        <div class="rounded-lg p-6 mb-6 border-tertiary">
2421    <div class="row">
2422        <div class="col-12 col-md-7 d-flex flex-column justify-content-between">
2423            <div>
2424                                    <div class="d-flex flex-wrap mb-5" style="gap: 8px;">
2425                                                    <div class="badge badge-green">
2426    
2427            Upgrade
2428    
2429    </div>
2430                                                    <div class="badge badge-gray">
2431    
2432            Reports
2433    
2434    </div>
2435                                            </div>
2436                
2437                <h4 class="dt-typography-h4 font-weight-semibold font-weight-bold">Upgraded Exports section</h4>
2438                    
2439                <p class="dt-typography-subtitle mb-5 text-secondary dt-typography-subtitle-regular">We’ve given DeskTime Exports a big upgrade to make reporting smoother and more flexible.</p>
2440                </div>
2441
2442                            <a href="https://desktime.com/features/exports" class="dt-action-link dt-action-link-icon">
2443                    <span>More details</span>
2444                    <i class="icon-arrow-right"></i>
2445                </a>
2446                    </div>
2447
2448        <div class="col-12 col-md-5 mt-6 mt-md-0 d-flex align-items-center">
2449            <div class="pu-feature-card-image-container">
2450                <img src="/static/web/product-updates/exports.webp"
2451                                              srcset="/static/web/product-updates/[email protected] 2x, /static/web/product-updates/[email protected] 3x"
2452                                          class="lazyload img-fluid"
2453                     alt="Upgraded Exports section"
2454                >
2455            </div>
2456        </div>
2457    </div>
2458</div>
2459                    </div>
2460                </div>
2461                            <div class="row mb-8 mb-sm-9 mb-md-11 position-relative product-updates-hidden d-none">
2462
2463                    <div
2464                        class="col-lg-3 d-none d-lg-flex justify-content-end align-items-start pr-5 timeline-marker-col">
2465                        <div class="d-flex align-items-center text-nowrap">
2466                            <div class="text-secondary mr-13 dt-typography-subtitle">August 26, 2025</div>
2467                            <div class="d-flex align-items-center justify-content-center position-absolute"
2468                                 style="right: 6px">
2469                                <img src="/static/web/product-updates/purple-circle.svg" class="dt-icon__size--32"
2470                                     alt="marker">
2471                            </div>
2472                        </div>
2473                    </div>
2474
2475                    <div class="col-12 col-lg-9">
2476                        <div class="dt-typography-subtitle-regular text-secondary mb-3 d-flex d-lg-none">
2477                            August 26, 2025
2478                        </div>
2479
2480                        <div class="rounded-lg p-6 mb-6 border-tertiary">
2481    <div class="row">
2482        <div class="col-12 col-md-7 d-flex flex-column justify-content-between">
2483            <div>
2484                                    <div class="d-flex flex-wrap mb-5" style="gap: 8px;">
2485                                                    <div class="badge badge-azure">
2486    
2487            Update
2488    
2489    </div>
2490                                                    <div class="badge badge-gray">
2491    
2492            Settings
2493    
2494    </div>
2495                                            </div>
2496                
2497                <h4 class="dt-typography-h4 font-weight-semibold font-weight-bold">Refreshed DeskTime Settings</h4>
2498                    
2499                <p class="dt-typography-subtitle mb-5 text-secondary dt-typography-subtitle-regular">Your DeskTime Settings now have a cleaner layout that makes finding what you need faster.</p>
2500                </div>
2501
2502                            <a href="https://desktime.com/app/settings/profile" class="dt-action-link dt-action-link-icon">
2503                    <span>Explore</span>
2504                    <i class="icon-arrow-right"></i>
2505                </a>
2506                    </div>
2507
2508        <div class="col-12 col-md-5 mt-6 mt-md-0 d-flex align-items-center">
2509            <div class="pu-feature-card-image-container">
2510                <img src="/static/web/product-updates/settings.webp"
2511                                              srcset="/static/web/product-updates/[email protected] 2x, /static/web/product-updates/[email protected] 3x"
2512                                          class="lazyload img-fluid"
2513                     alt="Refreshed DeskTime Settings"
2514                >
2515            </div>
2516        </div>
2517    </div>
2518</div>
2519                    </div>
2520                </div>
2521                            <div class="row mb-8 mb-sm-9 mb-md-11 position-relative product-updates-hidden d-none">
2522
2523                    <div
2524                        class="col-lg-3 d-none d-lg-flex justify-content-end align-items-start pr-5 timeline-marker-col">
2525                        <div class="d-flex align-items-center text-nowrap">
2526                            <div class="text-secondary mr-13 dt-typography-subtitle">June 9, 2025</div>
2527                            <div class="d-flex align-items-center justify-content-center position-absolute"
2528                                 style="right: 6px">
2529                                <img src="/static/web/product-updates/purple-circle.svg" class="dt-icon__size--32"
2530                                     alt="marker">
2531                            </div>
2532                        </div>
2533                    </div>
2534
2535                    <div class="col-12 col-lg-9">
2536                        <div class="dt-typography-subtitle-regular text-secondary mb-3 d-flex d-lg-none">
2537                            June 9, 2025
2538                        </div>
2539
2540                        <div class="rounded-lg p-6 mb-6 border-tertiary">
2541    <div class="row">
2542        <div class="col-12 col-md-7 d-flex flex-column justify-content-between">
2543            <div>
2544                                    <div class="d-flex flex-wrap mb-5" style="gap: 8px;">
2545                                                    <div class="badge badge-green">
2546    
2547            Upgrade
2548    
2549    </div>
2550                                                    <div class="badge badge-gray">
2551    
2552            Billing
2553    
2554    </div>
2555                                            </div>
2556                
2557                <h4 class="dt-typography-h4 font-weight-semibold font-weight-bold">Billing made simple</h4>
2558                    
2559                <p class="dt-typography-subtitle mb-5 text-secondary dt-typography-subtitle-regular">We’ve refreshed the Billing section to make it easier, so you can manage your DeskTime subscription without the guesswork.</p>
2560                </div>
2561
2562                            <a href="https://desktime.com/app/sett
2562ings/billing" class="dt-action-link dt-action-link-icon">
2563                    <span>Explore</span>
2564                    <i class="icon-arrow-right"></i>
2565                </a>
2566                    </div>
2567
2568        <div class="col-12 col-md-5 mt-6 mt-md-0 d-flex align-items-center">
2569            <div class="pu-feature-card-image-container">
2570                <img src="/static/web/product-updates/billing.webp"
2571                                              srcset="/static/web/product-updates/[email protected] 2x, /static/web/product-updates/[email protected] 3x"
2572                                          class="lazyload img-fluid"
2573                     alt="Billing made simple"
2574                >
2575            </div>
2576        </div>
2577    </div>
2578</div>
2579                    </div>
2580                </div>
2581                            <div class="row mb-8 mb-sm-9 mb-md-11 position-relative product-updates-hidden d-none">
2582
2583                    <div
2584                        class="col-lg-3 d-none d-lg-flex justify-content-end align-items-start pr-5 timeline-marker-col">
2585                        <div class="d-flex align-items-center text-nowrap">
2586                            <div class="text-secondary mr-13 dt-typography-subtitle">March 18, 2025</div>
2587                            <div class="d-flex align-items-center justify-content-center position-absolute"
2588                                 style="right: 6px">
2589                                <img src="/static/web/product-updates/purple-circle.svg" class="dt-icon__size--32"
2590                                     alt="marker">
2591                            </div>
2592                        </div>
2593                    </div>
2594
2595                    <div class="col-12 col-lg-9">
2596                        <div class="dt-typography-subtitle-regular text-secondary mb-3 d-flex d-lg-none">
2597                            March 18, 2025
2598                        </div>
2599
2600                        <div class="rounded-lg p-6 mb-6 border-tertiary">
2601    <div class="row">
2602        <div class="col-12 col-md-7 d-flex flex-column justify-content-between">
2603            <div>
2604                                    <div class="d-flex flex-wrap mb-5" style="gap: 8px;">
2605                                                    <div class="badge badge-gray">
2606    
2607            Tracking
2608    
2609    </div>
2610                                            </div>
2611                
2612                <h4 class="dt-typography-h4 font-weight-semibold font-weight-bold">DeskTime Notifications</h4>
2613                    
2614                <p class="dt-typography-subtitle mb-5 text-secondary dt-typography-subtitle-regular">With in-app and email alerts for Company Owners, Admins, and User Admins, everything you need is delivered straight to you.</p>
2615                </div>
2616
2617                            <a href="https://help.desktime.com/hc/en-us/articles/25130467106077" class="dt-action-link dt-action-link-icon">
2618                    <span>More details</span>
2619                    <i class="icon-arrow-right"></i>
2620                </a>
2621                    </div>
2622
2623        <div class="col-12 col-md-5 mt-6 mt-md-0 d-flex align-items-center">
2624            <div class="pu-feature-card-image-container">
2625                <img src="/static/web/product-updates/notifications.webp"
2626                                              srcset="/static/web/product-updates/[email protected] 2x, /static/web/product-updates/[email protected] 3x"
2627                                          class="lazyload img-fluid"
2628                     alt="DeskTime Notifications"
2629                >
2630            </div>
2631        </div>
2632    </div>
2633</div>
2634                    </div>
2635                </div>
2636                            <div class="row mb-8 mb-sm-9 mb-md-11 position-relative product-updates-hidden d-none">
2637
2638                    <div
2639                        class="col-lg-3 d-none d-lg-flex justify-content-end align-items-start pr-5 timeline-marker-col">
2640                        <div class="d-flex align-items-center text-nowrap">
2641                            <div class="text-secondary mr-13 dt-typography-subtitle">February 5, 2025</div>
2642                            <div class="d-flex align-items-center justify-content-center position-absolute"
2643                                 style="right: 6px">
2644                                <img src="/static/web/product-updates/purple-circle.svg" class="dt-icon__size--32"
2645                                     alt="marker">
2646                            </div>
2647                        </div>
2648                    </div>
2649
2650                    <div class="col-12 col-lg-9">
2651                        <div class="dt-typography-subtitle-regular text-secondary mb-3 d-flex d-lg-none">
2652                            February 5, 2025
2653                        </div>
2654
2655                        <div class="rounded-lg p-6 mb-6 border-tertiary">
2656    <div class="row">
2657        <div class="col-12 col-md-7 d-flex flex-column justify-content-between">
2658            <div>
2659                                    <div class="d-flex flex-wrap mb-5" style="gap: 8px;">
2660                                                    <div class="badge badge-azure">
2661    
2662            Update
2663    
2664    </div>
2665                                            </div>
2666                
2667                <h4 class="dt-typography-h4 font-weight-semibold font-weight-bold">A smoother way to log in</h4>
2668                    
2669                <p class="dt-typography-subtitle mb-5 text-secondary dt-typography-subtitle-regular">The DeskTime log-in experience is becoming easier, simpler, and more efficient.</p>
2670                </div>
2671
2672                            <a href="https://desktime.com/login" class="dt-action-link dt-action-link-icon">
2673                    <span>Explore</span>
2674                    <i class="icon-arrow-right"></i>
2675                </a>
2676                    </div>
2677
2678        <div class="col-12 col-md-5 mt-6 mt-md-0 d-flex align-items-center">
2679            <div class="pu-feature-card-image-container">
2680                <img src="/static/web/product-updates/login.webp"
2681                                              srcset="/static/web/product-updates/[email protected] 2x, /static/web/product-updates/[email protected] 3x"
2682                                          class="lazyload img-fluid"
2683                     alt="A smoother way to log in"
2684                >
2685            </div>
2686        </div>
2687    </div>
2688</div>
2689                    </div>
2690                </div>
2691            
2692                            <div class="row mt-10" id="load-more-container">
2693                    <div class="col-lg-3 d-none d-lg-block"></div>
2694                    <div class="col-12 col-lg-9 pl-lg-5 d-flex justify-content-center">
2695                        <button class="btn btn-outline-secondary px-10" id="load-more-btn">
2696                            Load more
2697                        </button>
2698                    </div>
2699                </div>
2700                    </div>
2701    </div>
2702</section>
2703
2704    
2705    <section
2706    class="inner-padding bg-purple-gradient"
2707    style=";"
2708    >
2709    <div class="container-fluid-override container-xl ">
2710        
2711        <div class="mw-content mx-auto " style="">
2712    <h3 class="dt-typography-h3 font-weight-semibold font-weight-bold text-center mb-3 text-white">What’s coming next</h3>
2713                    
2714            <p class="dt-typography-subtitle mb-9 text-center text-white">Take a look at what we’re building next to help your team work with confidence and efficiency.</p>
2715</div>
2716
2717        <style>
2718    .grid-component.how {
2719        display: grid;
2720        grid-template-columns: 1fr;
2721        gap: 16px;
2722    }
2723
2724    @media(min-width: 576px) {
2725        .grid-component.how {
2726            grid-template-columns: repeat(2, 1fr);
2727            gap: 16px;
2728        }
2729
2730        .grid-component.how > * {
2731            grid-column-end: span 2;
2732        }
2733    }
2734
2735    @media(min-width: 768px) {
2736        .grid-component.how {
2737            grid-template-columns: repeat(6, 1fr);
2738        }
2739
2740                    .grid-component.how > *:last-of-type {
2741                grid-column-start: unset;
2742            }
2743            }
2744
2745    @media(min-width: 992px) {
2746        .grid-component.how {
2747            grid-template-columns: repeat(6, 1fr);
2748            gap: 32px;
2749        }
2750
2751                    .grid-component.how > *:last-of-type {
2752                grid-column-start: unset;
2753            }
2754            }
2755
2756    @media(min-width: 1200px) {
2757        .grid-component.how {
2758            grid-template-columns: repeat(6, 1fr);
2759        }
2760
2761                    .grid-component.how > *:last-of-type {
2762                grid-column-start: unset;
2763            }
2764            }
2765</style>
2766
2767<div class="grid-component how ">
2768    <div class="d-flex flex-column rounded-lg p-8 card-muted">
2769                <div class="d-flex align-items-center mb-3">
2770                    <i class="icon-file-chart-column dt-icon__size--24 mr-4 text-white"></i>
2771                    <h5 class="dt-typography-h5 font-weight-semibold font-weight-bold mb-0 text-white">Improved DeskTime Reports</h5>
2772                                    </div>
2773
2774                <p class="dt-typography-subtitle dt-typography-body text-white mb-0">DeskTime Reports upgrades will enable you to access, customize, and share your reports with ease.</p>
2775                </div>
2776
2777            <div class="d-flex flex-column rounded-lg p-8 card-muted">
2778                <div class="d-flex align-items-center mb-3">
2779                    <i class="icon-code-xml dt-icon__size--24 mr-4 text-white"></i>
2780                    <h5 class="dt-typography-h5 font-weight-semibold font-weight-bold mb-0 text-white">All-new API</h5>
2781                                    </div>
2782
2783                <p class="dt-typography-subtitle dt-typography-body text-white mb-0">We’re rebuilding our API following global OpenAPI standards to make integrations easier, more reliable, and scalable.</p>
2784                </div>
2785
2786            <div class="d-flex flex-column rounded-lg p-8 card-muted">
2787                <div class="d-flex align-items-center mb-3">
2788                    <i class="icon-clipboard-check dt-icon__size--24 mr-4 text-white"></i>
2789                    <h5 class="dt-typography-h5 font-weight-semibold font-weight-bold mb-0 text-white">
2789Spanish ITSS compliance</h5>
2790                                    </div>
2791
2792                <p class="dt-typography-subtitle dt-typography-body text-white mb-0">DeskTime will soon be fully compliant with the 2026 law changes regarding work time tracking in Spain.</p>
2793                </div>
2794</div>
2795    </div>
2796</section>
2797
2798    
2799    <section
2800    class=""
2801    style=";"
2802    >
2803    <div class="container-fluid-override container-xl ">
2804        
2805        <div class="mw-content mx-auto " style="">
2806    <h3 class="dt-typography-h3 font-weight-semibold font-weight-bold text-center mb-3">Stay connected with us</h3>
2807                    
2808            <p class="dt-typography-subtitle text-center mb-9">Follow DeskTime updates, discover real user stories, and help shape the product with your feature suggestions.</p>
2809</div>
2810
2811        
2812        <style>
2813    .grid-component.how-to {
2814        display: grid;
2815        grid-template-columns: 1fr;
2816        gap: 16px;
2817    }
2818
2819    @media(min-width: 576px) {
2820        .grid-component.how-to {
2821            grid-template-columns: repeat(2, 1fr);
2822            gap: 16px;
2823        }
2824
2825        .grid-component.how-to > * {
2826            grid-column-end: span 2;
2827        }
2828    }
2829
2830    @media(min-width: 768px) {
2831        .grid-component.how-to {
2832            grid-template-columns: repeat(2, 1fr);
2833        }
2834
2835                    .grid-component.how-to > *:last-of-type {
2836                grid-column-start: unset;
2837            }
2838            }
2839
2840    @media(min-width: 992px) {
2841        .grid-component.how-to {
2842            grid-template-columns: repeat(6, 1fr);
2843            gap: 32px;
2844        }
2845
2846                    .grid-component.how-to > *:last-of-type {
2847                grid-column-start: unset;
2848            }
2849            }
2850
2851    @media(min-width: 1200px) {
2852        .grid-component.how-to {
2853            grid-template-columns: repeat(6, 1fr);
2854        }
2855
2856                    .grid-component.how-to > *:last-of-type {
2857                grid-column-start: unset;
2858            }
2859            }
2860</style>
2861
2862<div class="grid-component how-to ">
2863    <div class="d-flex flex-column mx-auto">
2864                    <div class="mb-6">
2865                    <img
2866                decoding="async"
2867                width="100"
2868                height="100"
2869                src="/static/web/product-updates/linkedin-preview.png"                 class="img-fluid  w-100"
2870                alt=""
2871                 loading="lazy"             >
2872                    </div>
2873                    <div class="d-flex flex-column justify-content-center w-100 mb-auto">
2874                        <h5 class="font-weight-bold mb-3">Keep in touch on LinkedIn</h5>
2875                        <p class="dt-typography-body text-gray600 mb-0">Follow DeskTime on LinkedIn to stay updated on new features, company news, and helpful tips to get the most out of your time tracking.</p>
2876                    </div>
2877                    <div class="mt-6">
2878                        <a href="https://www.linkedin.com/company/desktime/" class="btn btn-secondary w-100">Follow on Linkedin <i class="icon-external-link ml-2"></i></a>
2879                    </div>
2880                </div>
2881                            <div class="d-flex flex-column mx-auto">
2882                    <div class="mb-6">
2883                    <img
2884                decoding="async"
2885                width="100"
2886                height="100"
2887                src="/static/web/product-updates/blog-preview.png"                 class="img-fluid  w-100"
2888                alt=""
2889                 loading="lazy"             >
2890                    </div>
2891                    <div class="d-flex flex-column justify-content-center w-100 mb-auto">
2892                        <h5 class="font-weight-bold mb-3">DeskTime Blog</h5>
2893                        <p class="dt-typography-body text-gray600 mb-0">Our blog is full of practical guides, insights, and stories from users—everything you need to stay informed and improve your workflows.</p>
2894                    </div>
2895                    <div class="mt-6">
2896                        <a href="https://desktime.com/blog" class="btn btn-secondary w-100">Read blog</a>
2897                    </div>
2898                </div>
2899                            <div class="d-flex flex-column mx-auto">
2900                    <div class="mb-6">
2901                    <img
2902                decoding="async"
2903                width="100"
2904                height="100"
2905                src="/static/web/product-updates/search-preview.png"                 class="img-fluid  w-100"
2906                alt=""
2907                 loading="lazy"             >
2908                    </div>
2909                    <div class="d-flex flex-column justify-content-center w-100 mb-auto">
2910                        <h5 class="font-weight-bold mb-3">Don’t see what you need?</h5>
2911                        <p class="dt-typography-body text-gray600 mb-0">Have an idea or feature suggestion? Share it with us and help shape the future of DeskT
2911ime.</p>
2912                    </div>
2913                    <div class="mt-6">
2914                        <a href="https://desktime.com/feature-requests" class="btn btn-secondary w-100">Request a feature</a>
2915                    </div>
2916                </div>
2917</div>
2918    </div>
2919</section>
2920
2921            </main>
2922
2923            <footer class="d-flex flex-column">
2924            <div class="footer-content">
2925            <div
2926                class="mobile-footer-content"
2927                x-data="{ footerMenu: null }"
2928            >
2929                <button
2930    class="mobile-footer-item"
2931    @click="footerMenu = footerMenu === 'features' ? null : 'features'"
2932    :class="footerMenu === 'features' && 'active'"
2933>
2934    Features
2935    <i class="icon-chevron-down dt-icon__size--24 text-white"></i>
2936</button>
2937                <div x-show="footerMenu === 'features'" x-cloak>
2938                    <div class="footer-column mb-md-10">
2939    <div class="title">Features</div>
2940
2941    <ul>
2942                    <li>
2943                <a href="https://desktime.com/features/time-tracking">Automatic time tracking</a>
2944            </li>
2945                    <li>
2946                <a href="https://desktime.com/features/document-title-tracking">Document title tracking</a>
2947            </li>
2948                    <li>
2949                <a href="https://desktime.com/features/project-tracking">Project time tracking</a>
2950            </li>
2951                    <li>
2952                <a href="https://desktime.com/features/private-time">Private time</a>
2953            </li>
2954                    <li>
2955                <a href="https://desktime.com/features/productivity-calculation">Productivity calculation</a>
2956            </li>
2957                    <li>
2958                <a href="https://desktime.com/features/time-tracking-with-screenshots">Screenshots</a>
2959            </li>
2960                    <li>
2961                <a href="https://desktime.com/features/computer-usage-monitoring">URL &amp; app tracking</a>
2962            </li>
2963                    <li>
2964                <a href="https://desktime.com/features/time-tracking-reports">Reports</a>
2965            </li>
2966                    <li>
2967                <a href="https://desktime.com/features/time-tracking-dashboard">Dashboards</a>
2968            </li>
2969                    <li>
2970                <a href="https://desktime.com/features/ai-summary">AI summary</a>
2971            </li>
2972                    <li>
2973                <a href="https://desktime.com/features/shift-scheduling">Shift scheduling</a>
2974            </li>
2975                    <li>
2976                <a href="https://desktime.com/features/absence-calendar">Absence calendar</a>
2977            </li>
2978                    <li>
2979                <a href="https://desktime.com/time-and-attendance-software">Attendance management</a>
2980            </li>
2981                    <li>
2982                <a href="https://desktime.com/features/integrations">Integrations &amp; API</a>
2983            </li>
2984                    <li>
2985                <a href="https://desktime.com/features/ip-location">IP Location</a>
2986            </li>
2987            </ul>
2988</div>
2989                </div>
2990
2991                <button
2992    class="mobile-footer-item"
2993    @click="footerMenu = footerMenu === 'solutions' ? null : 'solutions'"
2994    :class="footerMenu === 'solutions' && 'active'"
2995>
2996    Solutions
2997    <i class="icon-chevron-down dt-icon__size--24 text-white"></i>
2998</button>
2999                <div x-show="footerMenu === 'solutions'" x-cloak>
3000                    <div class="footer-column">
3001    <div class="title">Solutions</div>
3002
3003    <div class="dt-typography-body-small text-azure200 mb-6 mb-md-3">By use cases</div>
3004    <ul class="mb-9 mb-md-10">
3005                    
3006            <li>
3007                <a href="https://desktime.com/performance-evaluation">Performance evaluation</a>
3008            </li>
3009                    
3010            <li>
3011                <a href="https://desktime.com/employee-monitoring-software">Employee monitoring</a>
3012            </li>
3013                    
3014            <li>
3015                <a href="https://desktime.com/unlock-team-potential">Transparency &amp; accountability</a>
3016            </li>
3017                    
3018            <li>
3019                <a href="https://desktime.com/remote-employee-monitoring">Remote work monitoring</a>
3020            </li>
3021                    
3022            <li>
3023                <a href="https://desktime.com/employee-productivity-monitoring-software">Productivity &amp; efficiency</a>
3024            </li>
3025                    
3026            <li>
3027                <a href="https://desktime.com/employee-wellbeing">Employee well-being</a>
3028            </li>
3029                    
3030            <li>
3031                <a href="https://desktime.com/work-life-balance">Work-life balance</a>
3032            </li>
3033                    
3034            <li>
3035                <a href="https://desktime.com/burnout-prevention">Burnout prevention</a>
3036            </li>
3037                    
3038            <li>
3039                <a href="https://desktime.com/hybrid-work">
3039Hybrid work support</a>
3040            </li>
3041                    
3042            <li>
3043                <a href="https://desktime.com/self-accountability">Self-accountability</a>
3044            </li>
3045            </ul>
3046
3047    <div class="dt-typography-body-small text-azure200 mb-6 mb-md-3">By industries</div>
3048    <ul class="mb-9 mb-md-10">
3049                    
3050            <li>
3051                <a href="https://desktime.com/it-team-time-tracking">IT &amp; software</a>
3052            </li>
3053                    
3054            <li>
3055                <a href="https://desktime.com/financial-industry-time-tracking">Financial services</a>
3056            </li>
3057                    
3058            <li>
3059                <a href="https://desktime.com/industries/time-tracking-for-consultants">Consultants</a>
3060            </li>
3061                    
3062            <li>
3063                <a href="https://desktime.com/industries/time-management-for-startups">Startups</a>
3064            </li>
3065                    
3066            <li>
3067                <a href="https://desktime.com/agency-time-tracking">Agencies</a>
3068            </li>
3069                    
3070            <li>
3071                <a href="https://desktime.com/industries/time-tracking-for-developers">Developers</a>
3072            </li>
3073                    
3074            <li>
3075                <a href="https://desktime.com/industries/time-tracking-for-lawyers">Lawyers</a>
3076            </li>
3077            </ul>
3078
3079    <div class="dt-typography-body-small text-azure200 mb-6 mb-md-3">By business size</div>
3080    <ul>
3081                    <li>
3082                <a href="https://desktime.com/intro">Enterprises</a>
3083            </li>
3084                    <li>
3085                <a href="https://desktime.com/employee-time-tracking-software-for-companies">Medium businesses</a>
3086            </li>
3087                    <li>
3088                <a href="https://desktime.com/time-tracking-for-small-businesses">Small teams</a>
3089            </li>
3090                    <li>
3091                <a href="https://desktime.com/time-tracking-for-freelancers">Freelancers</a>
3092            </li>
3093            </ul>
3094</div>
3095                </div>
3096
3097                <button
3098    class="mobile-footer-item"
3099    @click="footerMenu = footerMenu === 'resources' ? null : 'resources'"
3100    :class="footerMenu === 'resources' && 'active'"
3101>
3102    Resources
3103    <i class="icon-chevron-down dt-icon__size--24 text-white"></i>
3104</button>
3105                <div x-show="footerMenu === 'resources'" x-cloak>
3106                    <div class="footer-column">
3107    <div class="title">Resources</div>
3108
3109    <ul>
3110                    
3111            <li>
3112                <a href="https://desktime.com/time-tracking-roi-calculator" >Time tracking ROI</a>
3113            </li>
3114                    
3115            <li>
3116                <a href="https://desktime.com/what-does-desktime-track" >What does DeskTime track?</a>
3117            </li>
3118                    
3119            <li>
3120                <a href="https://desktime.com/demo" >Demo</a>
3121            </li>
3122                    
3123            <li>
3124                <a href="https://desktime.com/managers-toolkit" >The Desktime setup guide</a>
3125            </li>
3126                    
3127            <li>
3128                <a href="https://help.desktime.com/hc/en-us"  target="_blank" rel="noopener noreferrer" >Help Center</a>
3129            </li>
3130                    
3131            <li>
3132                <a href="/blog" >Blog</a>
3133            </li>
3134                    
3135            <li>
3136                <a href="https://desktime.com/case-studies" >Case studies</a>
3137            </li>
3138                    
3139            <li>
3140                <a href="https://desktime.com/product-updates" >Product updates</a>
3141            </li>
3142                    
3143            <li>
3144                <a href="https://desktime.com/about" >About us</a>
3145            </li>
3146                    
3147            <li>
3148                <a href="https://desktime.com/ai-info" >For AI</a>
3149            </li>
3150                    
3151            <li>
3152                <a href="https://help.desktime.com/hc/en-us/sections/25494426310045"  target="_blank" rel="noopener noreferrer" >API documentation</a>
3153            </li>
3154                    
3155            <li>
3156                <a href="https://desktime.com/software-reseller-program" >Become a reseller</a>
3157            </li>
3158                    
3159            <li>
3160                <a href="https://desktime.com/affiliate" >Affiliate</a>
3161            </li>
3162                <li class="d-flex align-items-center">
3163            <i class="icon-download text-white mr-2"></i> <a href="https://desktime.com/download">
3164                Download app
3165            </a>
3166        </li>
3167    </ul>
3168</div>
3169                </div>
3170
3171                <button
3172    class="mobile-footer-item"
3173    @click="footerMenu = footerMenu === 'contacts' ? null : 'contacts'"
3174    :class="footerMenu === 'contacts' && 'active'"
3175>
3176    Contacts
3177    <i class="icon-chevron-down dt-icon__size--24 text-white"></i>
3178</button>
3179                <div x-show="footerMenu === 'contacts'" x-cloak>
3180                    <div class="footer-column mb-md-10">
3181    <div class="title">Contacts</div>
3182
3183    <ul>
3184        <li>
3185            <a href="https://desktime.com/contacts">Contact us</a>
3186        </li>
3187
3188        <li>
3189            <a href="javascript:;" onclick="zendeskChat.openLiveChat()">Open chat</a>
3190        </li>
3191
3192        <li>
3193            <a href="https://desktime.com/feature-requests">Feature requests</a>
3194        </li>
3195
3196        <li>
3197            <a href="https://desktime.com/press">Media kit</a>
3198        </li>
3199    </ul>
3200</div>
3201                </div>
3202
3203                <button
3204    class="mobile-footer-item"
3205    @click="footerMenu = footerMenu === 'phone-support' ? null : 'phone-support'"
3206    :class="footerMenu === 'phone-support' && 'active'"
3207>
3208    Phone support
3209    <i class="icon-chevron-down dt-icon__size--24 text-white"></i>
3210</button>
3211                <div x-show="footerMenu === 'phone-support'" x-cloak>
3212                    <div class="footer-column mb-md-10">
3213    <div class="title">Phone support</div>
3214
3215    <div class="d-flex flex-column">
3216        <a href="tel:+1(240)623-5586">+1 (240) 623-5586</a>
3217        <span class="text-gray200">
3218            Mon-Fri 9:00-22:00 EEST
3219        </span>
3220    </div>
3221</div>
3222                </div>
3223
3224                <button
3225    class="mobile-footer-item border-0"
3226    @click="footerMenu = footerMenu === 'legal' ? null : 'legal'"
3227    :class="footerMenu === 'legal' && 'active'"
3228>
3229    Legal &amp; Compliance
3230    <i class="icon-chevron-down dt-icon__size--24 text-white"></i>
3231</button>
3232                <div x-show="footerMenu === 'legal'" x-cloak>
3233                    <div class="footer-column border-0">
3234    <div class="title">Legal &amp; Compliance</div>
3235
3236    <ul>
3237                    <li>
3238                <a href="https://desktime.com/security">Security</a>
3239            </li>
3240                    <li>
3241                <a href="https://desktime.com/terms">Terms</a>
3242            </li>
3243                    <li>
3244                <a href="https://desktime.com/privacy">Privacy</a>
3245            </li>
3246                    <li>
3247                <a href="https://desktime.com/cookies">Cookies</a>
3248            </li>
3249                    <li>
3250                <a href="https://desktime.com/beta-terms">Beta tester terms</a>
3251            </li>
3252            </ul>
3253</div>
3254                </div>
3255
3256                <div class="subscribe-contacts-block">
3257    <form x-data="() => {
3258    return {
3259        data: {
3260            email: ''
3261        },
3262        loading: false,
3263        showSuccess: false,
3264        errorText: null,
3265        submit() {
3266            this.loading = true;
3267            this.errorText = null;
3268            const route = document.getElementsByClassName('subscribe-box')[0].getAttribute('action');
3269
3270            fetch(route, {
3271                method: 'POST',
3272                headers: {
3273                    'Content-Type': 'application/json',
3274                    'Accept': 'application/json',
3275                    'X-CSRF-TOKEN': document.querySelector(`input[name='_token']`).value
3276                },
3277                body: JSON.stringify(this.data)
3278            })
3279            .then((res) => res.json())
3280            .then((data) => {
3281                if (data.errors) {
3282                    this.errorText = data.errors.email[0]
3283                } else {
3284                    this.showSuccess = true
3285                }
3286            })
3287            .catch((e) => {
3288                console.error(e);
3289            })
3290            .finally(() => {
3291                this.loading = false;
3292            })
3293        }
3294    }
3295}"
3296      @submit.prevent="submit"
3297      class="subscribe-box"
3298      action="https://desktime.com/newsletter"
3299>
3300    <input type="hidden" name="_token" value="904befNRtTM36nebcOcvZyl2BM8dztugMpE2OikU" autocomplete="off">
3301    <template x-if="showSuccess" x-cloak>
3302        <div class="d-flex justify-content-center align-items-center">
3303            <div class="dt-typography-h5 font-weight-semibold text-center">Subscribed!</div>
3304        </div>
3305    </template>
3306
3307    <template x-if="!showSuccess" x-cloak>
3308        <div class="d-flex flex-column">
3309            <div class="dt-typography-h5 font-weight-semibold text-center">Subscribe to our newsletter</div>
3310
3311            <input type="email" x-model="data.email" class="form-control mt-6" id="newsletter" placeholder="Your work email">
3312
3313            <div class="form-text invalid-feedback" :class="{'d-block mt-3': !!errorText}" x-text="errorText"></div>
3314
3315            <button type="submit"
3316                    class="btn btn-primary btn-lg mt-6"
3317                    :disabled="loading"
3318                    id="footer-newsletter-submit"
3319                    aria-label="Subscribe to the DeskTime newsletter"
3320                    data-ai-action="newsletter-subscribe">
3321                Submit
3322            </button>
3323
3324            <span class="dt-typography-body-small text-secondary pt-6 text-center">By subscribing, you agree to our <a href="https://desktime.com/privacy" class="dt-link font-weight-semibold">privacy policy</a></span>
3325        </div>
3326    </template>
3327</form>
3328
3329    <div class="d-flex flex-column flex-sm-row flex-md-column mt-13 mt-md-0 mt-lg-11">
3330        <div class="d-flex flex-column align-items-center">
3331            <div class="d-flex justify-content-between m-auto m-sm-0" style="width: 200px">
3332                <img src="/static/web/g2-review/footer/en/1.svg" width="54" alt="G2 badge for High Performer in Employee Scheduling software category, Summer 2026" loading="lazy" decoding="async">
3333                <img src="/static/web/g2-review/footer/en/3.svg" width="68" alt="G2 badge for Leader in Employee Monitoring software category, Summer 2026" loading="lazy" decoding="async">
3334                <img src="/static/web/g2-review/footer/en/2.svg" width="54" alt="G2 milestone badge for most loved software in the Automatic Time Tracking category, Summer 2026" loading="lazy" decoding="async">
3335            </div>
3336            <div class="text-white text-center">
3337                4.5 out of 5 from <a href="https://www.g2.com/products/desktime-desktime/reviews" class="dt-link-white">400 reviews</a>
3338            </div>
3339        </div>
3340        <a href="https://desktime.com/security" class="d-flex align-items-center justify-content-center text-white mt-10 mt-sm-0 mt-md-10 ml-sm-11 ml-md-0">
3341            <img src="/static/web/footer/iso-badge.svg" alt="iso-certification" class="mr-6" loading="lazy" decoding="async">
3342            <span style="max-width: 136px">ISO 27001 &amp; 27701 certified</span>
3343        </a>
3344    </div>
3345</div>
3346            </div>
3347
3348            <div class="desktop-footer-content">
3349                <div class="d-flex flex-column flex-md-row w-100">
3350                    <div class="d-flex flex-column w-100">
3351                        <div class="footer-column mb-md-10">
3352    <div class="title">Features</div>
3353
3354    <ul>
3355                    <li>
3356                <a href="https://desktime.com/features/time-tracking">Automatic time tracking</a>
3357            </li>
3358                    <li>
3359                <a href="https://desktime.com/features/document-title-tracking">Document title tracking</a>
3360            </li>
3361                    <li>
3362                <a href="https://desktime.com/features/project-tracking">Project time tracking</a>
3363            </li>
3364                    <li>
3365                <a href="https://desktime.com/features/private-time">Private time</a>
3366            </li>
3367                    <li>
3368                <a href="https://desktime.com/features/productivity-calculation">Productivity calculation</a>
3369            </li>
3370                    <li>
3371                <a href="https://desktime.com/features/time-tracking-with-screenshots">Screenshots</a>
3372            </li>
3373                    <li>
3374                <a href="https://desktime.com/features/computer-usage-monitoring">URL &amp; app tracking</a>
3375            </li>
3376                    <li>
3377                <a href="https://desktime.com/features/time-tracking-reports">Reports</a>
3378            </li>
3379                    <li>
3380                <a href="https://desktime.com/features/time-tracking-dashboard">Dashboards</a>
3381            </li>
3382                    <li>
3383                <a href="https://desktime.com/features/ai-summary">AI summary</a>
3384            </li>
3385                    <li>
3386                <a href="https://desktime.com/features/shift-scheduling">Shift scheduling</a>
3387            </li>
3388                    <li>
3389                <a href="https://desktime.com/features/absence-calendar">Absence calendar</a>
3390            </li>
3391                    <li>
3392                <a href="https://desktime.com/time-and-attendance-software">Attendance management</a>
3393            </li>
3394                    <li>
3395                <a href="https://desktime.com/features/integrations">Integrations &amp; API</a>
3396            </li>
3397                    <li>
3398                <a href="https://desktime.com/features/ip-location">IP Location</a>
3399            </li>
3400            </ul>
3401</div>
3402
3403                        <div class="footer-column">
3404    <div class="title">Resources</div>
3405
3406    <ul>
3407                    
3408            <li>
3409                <a href="https://desktime.com/time-tracking-roi-calculator" >Time tracking ROI</a>
3410            </li>
3411                    
3412            <li>
3413                <a href="https://desktime.com/what-does-desktime-track" >What does DeskTime track?</a>
3414            </li>
3415                    
3416            <li>
3417                <a href="https://desktime.com/demo" >Demo</a>
3418            </li>
3419                    
3420            <li>
3421                <a href="https://desktime.com/managers-toolkit" >The Desktime setup guide</a>
3422            </li>
3423                    
3424            <li>
3425                <a href="https://help.desktime.com/hc/en-us"  target="_blank" rel="noopener noreferrer" >Help Center</a>
3426            </li>
3427                    
3428            <li>
3429                <a href="/blog" >Blog</a>
3430            </li>
3431                    
3432            <li>
3433                <a href="https://desktime.com/case-studies" >Case studies</a>
3434            </li>
3435                    
3436            <li>
3437                <a href="https://desktime.com/product-updates" >Product updates</a>
3438            </li>
3439                    
3440            <li>
3441                <a href="https://desktime.com/about" >About us</a>
3442            </li>
3443                    
3444            <li>
3445                <a href="https://desktime.com/ai-info" >For AI</a>
3446            </li>
3447                    
3448            <li>
3449                <a href="https://help.desktime.com/hc/en-us/sections/25494426310045"  target="_blank" rel="noopener noreferrer" >API documentation</a>
3450            </li>
3451                    
3452            <li>
3453                <a href="https://desktime.com/software-reseller-program" >Become a reseller</a>
3454            </li>
3455                    
3456            <li>
3457                <a href="https://desktime.com/affiliate" >Affiliate</a>
3458            </li>
3459                <li class="d-flex align-items-center">
3460            <i class="icon-download text-white mr-2"></i> <a href="https://desktime.com/download">
3461                Download app
3462            </a>
3463        </li>
3464    </ul>
3465</div>
3466                    </div>
3467
3468                     <div class="w-100">
3469                         <div class="footer-column">
3470    <div class="title">Solutions</div>
3471
3472    <div class="dt-typography-body-small text-azure200 mb-6 mb-md-3">By use cases</div>
3473    <ul class="mb-9 mb-md-10">
3474                    
3475            <li>
3476                <a href="https://desktime.com/performance-evaluation">Performance evaluation</a>
3477            </li>
3478                    
3479            <li>
3480                <a href="https://desktime.com/employee-monitoring-software">Employee monitoring</a>
3481            </li>
3482                    
3483            <li>
3484                <a href="https://desktime.com/unlock-team-potential">Transparency &amp; accountability</a>
3485            </li>
3486                    
3487            <li>
3488                <a href="https://desktime.com/remote-employee-monitoring">Remote work monitoring</a>
3489            </li>
3490                    
3491            <li>
3492                <a href="https://desktime.com/employee-productivity-monitoring-software">Productivity &amp; efficiency</a>
3493            </li>
3494                    
3495            <li>
3496                <a href="https://desktime.com/employee-wellbeing">Employee well-being</a>
3497            </li>
3498                    
3499            <li>
3500                <a href="https://desktime.com/work-life-balance">Work-life balance</a>
3501            </li>
3502                    
3503            <li>
3504                <a href="https://desktime.com/burnout-prevention">Burnout prevention</a>
3505            </li>
3506                    
3507            <li>
3508                <a href="https://desktime.com/hybrid-work">
3508Hybrid work support</a>
3509            </li>
3510                    
3511            <li>
3512                <a href="https://desktime.com/self-accountability">Self-accountability</a>
3513            </li>
3514            </ul>
3515
3516    <div class="dt-typography-body-small text-azure200 mb-6 mb-md-3">By industries</div>
3517    <ul class="mb-9 mb-md-10">
3518                    
3519            <li>
3520                <a href="https://desktime.com/it-team-time-tracking">IT &amp; software</a>
3521            </li>
3522                    
3523            <li>
3524                <a href="https://desktime.com/financial-industry-time-tracking">Financial services</a>
3525            </li>
3526                    
3527            <li>
3528                <a href="https://desktime.com/industries/time-tracking-for-consultants">Consultants</a>
3529            </li>
3530                    
3531            <li>
3532                <a href="https://desktime.com/industries/time-management-for-startups">Startups</a>
3533            </li>
3534                    
3535            <li>
3536                <a href="https://desktime.com/agency-time-tracking">Agencies</a>
3537            </li>
3538                    
3539            <li>
3540                <a href="https://desktime.com/industries/time-tracking-for-developers">Developers</a>
3541            </li>
3542                    
3543            <li>
3544                <a href="https://desktime.com/industries/time-tracking-for-lawyers">Lawyers</a>
3545            </li>
3546            </ul>
3547
3548    <div class="dt-typography-body-small text-azure200 mb-6 mb-md-3">By business size</div>
3549    <ul>
3550                    <li>
3551                <a href="https://desktime.com/intro">Enterprises</a>
3552            </li>
3553                    <li>
3554                <a href="https://desktime.com/employee-time-tracking-software-for-companies">Medium businesses</a>
3555            </li>
3556                    <li>
3557                <a href="https://desktime.com/time-tracking-for-small-businesses">Small teams</a>
3558            </li>
3559                    <li>
3560                <a href="https://desktime.com/time-tracking-for-freelancers">Freelancers</a>
3561            </li>
3562            </ul>
3563</div>
3564                     </div>
3565
3566                    <div class="w-100">
3567                        <div class="footer-column mb-md-10">
3568    <div class="title">Contacts</div>
3569
3570    <ul>
3571        <li>
3572            <a href="https://desktime.com/contacts">Contact us</a>
3573        </li>
3574
3575        <li>
3576            <a href="javascript:;" onclick="zendeskChat.openLiveChat()">Open chat</a>
3577        </li>
3578
3579        <li>
3580            <a href="https://desktime.com/feature-requests">Feature requests</a>
3581        </li>
3582
3583        <li>
3584            <a href="https://desktime.com/press">Media kit</a>
3585        </li>
3586    </ul>
3587</div>
3588                        <div class="footer-column mb-md-10">
3589    <div class="title">Phone support</div>
3590
3591    <div class="d-flex flex-column">
3592        <a href="tel:+1(240)623-5586">+1 (240) 623-5586</a>
3593        <span class="text-gray200">
3594            Mon-Fri 9:00-22:00 EEST
3595        </span>
3596    </div>
3597</div>
3598                        <div class="footer-column border-0">
3599    <div class="title">Legal &amp; Compliance</div>
3600
3601    <ul>
3602                    <li>
3603                <a href="https://desktime.com/security">Security</a>
3604            </li>
3605                    <li>
3606                <a href="https://desktime.com/terms">Terms</a>
3607            </li>
3608                    <li>
3609                <a href="https://desktime.com/privacy">Privacy</a>
3610            </li>
3611                    <li>
3612                <a href="https://desktime.com/cookies">Cookies</a>
3613            </li>
3614                    <li>
3615                <a href="https://desktime.com/beta-terms">Beta tester terms</a>
3616            </li>
3617            </ul>
3618</div>
3619                    </div>
3620                </div>
3621
3622                <div class="subscribe-contacts-block">
3623    <form x-data="() => {
3624    return {
3625        data: {
3626            email: ''
3627        },
3628        loading: false,
3629        showSuccess: false,
3630        errorText: null,
3631        submit() {
3632            this.loading = true;
3633            this.errorText = null;
3634            const route = document.getElementsByClassName('subscribe-box')[0].getAttribute('action');
3635
3636            fetch(route, {
3637                method: 'POST',
3638                headers: {
3639                    'Content-Type': 'application/json',
3640                    'Accept': 'application/json',
3641                    'X-CSRF-TOKEN': document.querySelector(`input[name='_token']`).value
3642                },
3643                body: JSON.stringify(this.data)
3644            })
3645            .then((res) => res.json())
3646            .then((data) => {
3647                if (data.errors) {
3648                    this.errorText = data.errors.email[0]
3649                } else {
3650                    this.showSuccess = true
3651                }
3652            })
3653            .catch((e) => {
3654                console.error(e);
3655            })
3656            .finally(() => {
3657                this.loading = false;
3658            })
3659        }
3660    }
3661}"
3662      @submit.prevent="submit"
3663      class="subscribe-box"
3664      action="https://desktime.com/newsletter"
3665>
3666    <input type="hidden" name="_token" value="904befNRtTM36nebcOcvZyl2BM8dztugMpE2OikU" autocomplete="off">
3667    <template x-if="showSuccess" x-cloak>
3668        <div class="d-flex justify-content-center align-items-center">
3669            <div class="dt-typography-h5 font-weight-semibold text-center">Subscribed!</div>
3670        </div>
3671    </template>
3672
3673    <template x-if="!showSuccess" x-cloak>
3674        <div class="d-flex flex-column">
3675            <div class="dt-typography-h5 font-weight-semibold text-center">Subscribe to our newsletter</div>
3676
3677            <input type="email" x-model="data.email" class="form-control mt-6" id="newsletter" placeholder="Your work email">
3678
3679            <div class="form-text invalid-feedback" :class="{'d-block mt-3': !!errorText}" x-text="errorText"></div>
3680
3681            <button type="submit"
3682                    class="btn btn-primary btn-lg mt-6"
3683                    :disabled="loading"
3684                    id="footer-newsletter-submit"
3685                    aria-label="Subscribe to the DeskTime newsletter"
3686                    data-ai-action="newsletter-subscribe">
3687                Submit
3688            </button>
3689
3690            <span class="dt-typography-body-small text-secondary pt-6 text-center">By subscribing, you agree to our <a href="https://desktime.com/privacy" class="dt-link font-weight-semibold">privacy policy</a></span>
3691        </div>
3692    </template>
3693</form>
3694
3695    <div class="d-flex flex-column flex-sm-row flex-md-column mt-13 mt-md-0 mt-lg-11">
3696        <div class="d-flex flex-column align-items-center">
3697            <div class="d-flex justify-content-between m-auto m-sm-0" style="width: 200px">
3698                <img src="/static/web/g2-review/footer/en/1.svg" width="54" alt="G2 badge for High Performer in Employee Scheduling software category, Summer 2026" loading="lazy" decoding="async">
3699                <img src="/static/web/g2-review/footer/en/3.svg" width="68" alt="G2 badge for Leader in Employee Monitoring software category, Summer 2026" loading="lazy" decoding="async">
3700                <img src="/static/web/g2-review/footer/en/2.svg" width="54" alt="G2 milestone badge for most loved software in the Automatic Time Tracking category, Summer 2026" loading="lazy" decoding="async">
3701            </div>
3702            <div class="text-white text-center">
3703                4.5 out of 5 from <a href="https://www.g2.com/products/desktime-desktime/reviews" class="dt-link-white">400 reviews</a>
3704            </div>
3705        </div>
3706        <a href="https://desktime.com/security" class="d-flex align-items-center justify-content-center text-white mt-10 mt-sm-0 mt-md-10 ml-sm-11 ml-md-0">
3707            <img src="/static/web/footer/iso-badge.svg" alt="iso-certification" class="mr-6" loading="lazy" decoding="async">
3708            <span style="max-width: 136px">ISO 27001 &amp; 27701 certified</span>
3709        </a>
3710    </div>
3711</div>
3712            </div>
3713        </div>
3714    
3715    <div class="footer-contacts">
3716        <div class="footer-logos">
3717            <div class="d-flex flex-column justify-content-center justify-content-sm-start align-items-center align-items-sm-start">
3718                <a href="/">
3719                    <img width="160" height="36" src="/static/logo/logo-white-without-padding.svg" alt="logo">
3720                </a>
3721                <div class="footer-tagline">A hassle-free automatic time tracker. Set it and forget it.</div>
3722            </div>
3723            <div class="d-flex flex-column">
3724                <div class="d-flex justify-content-center justify-content-sm-end mb-8 mt-11 mt-sm-0">
3725                    <a
3726                        href="https://www.linkedin.com/company/desktime-com"
3727                        class="text-decoration-none"
3728                        target="_blank"
3729                        rel="nofollow noreferrer noopener"
3730                        title="Linkedin"
3731                    >
3732                        <i class="icon-dt-linkedin bg-aqua100 mr-6" style="width: 28px; height: 28px"></i>
3733                    </a>
3734                    <a
3735                        href="https://www.youtube.com/@desktime"
3736                        class="text-decoration-none"
3737                        target="_blank"
3738                        rel="noreferrer noopener"
3739                        title="Youtube"
3740                    >
3741                        <i class="icon-dt-youtube bg-aqua100 mr-6" style="width: 28px; height: 28px"></i>
3742                    </a>
3743                    <a
3744                        href="https://www.instagram.com/teamdesktime/"
3745                        class="text-decoration-none"
3746                        target="_blank"
3747                        rel="nofollow noreferrer noopener"
3748                        title="Instagram"
3749                    >
3750                        <i class="icon-dt-instagram bg-aqua100 mr-6" style="width: 28px; height: 28px"></i>
3751                    </a>
3752                    <a
3753                        href="https://x.com/desktime" target="_blank"
3754                        class="text-decoration-none"
3755                        rel="nofollow noreferrer noopener"
3756                        title="X"
3757                    >
3758                        <i class="icon-dt-x bg-aqua100 mr-6" style="width: 28px; height: 28px"></i>
3759                    </a>
3760                    <a
3761                        href="https://www.facebook.com/desktime/"
3762                        class="text-decoration-none"
3763                        target="_blank"
3764                        rel="nofollow noreferrer noopener"
3765                        title="Facebook"
3766                    >
3767                        <i class="icon-dt-facebook bg-aqua100" style="width: 28px; height: 28px"></i>
3768                    </a>
3769                </div>
3770
3771                <div class="d-flex justify-content-center justify-content-sm-end">
3772                    <a
3773                        href="https://play.google.com/store/apps/details?id=desktime.main"
3774                        rel="nofollow"
3775                        target="_blank"
3776                        title="Google Play"
3777                    >
3778                        <i class="dt-badge-google"></i>
3779                    </a>
3780                    <a
3781                        href="https://itunes.apple.com/us/app/desktime-for-iphone/id452994124?mt=8"
3782                        rel="nofollow"
3783                        target="_blank"
3784                        title="Apple app store"
3785                    >
3786                        <i class="dt-badge-apple"></i>
3787                    </a>
3788                </div>
3789            </div>
3790        </div>
3791
3792        <div class="footer-copyright-container">
3793            <div class="footer-copyright">
3794                <div class="dt-typography-body-extra-small text-azure100">
3795                    © 2011 - 2026 DeskTime
3796                </div>
3797                <div>
3798                    <a href="https://draugiemgroup.com" target="_blank" rel="noreferrer noopener" title="https://draugiemgroup.com">
3799                        <img width="142" height="20" src="/static/web/footer/draugiem-group-logo.svg" alt="draugiem-group-logo">
3800                    </a>
3801                </div>
3802            </div>
3803        </div>
3804    </div>
3805</footer>
3806        </div>
3807
3808        <!-- Uncomment for web vitals troubleshooting. https://github.com/GoogleChrome/web-vitals -->
3809    
3810    
3811
3812    
3813    
3814
3815        
3815<script type="application/ld+json">
3816            {
3817              "@context": "https://schema.org",
3818              "@type": "WebSite",
3819              "name": "DeskTime",
3820              "url": "https://desktime.com/"
3821            }
3822        </script>
3822
3823
3824        
3824<script>
3825            document.addEventListener("DOMContentLoaded", function(event) {
3826                    
3827    const buttonContainer = document.getElementById('load-more-container');
3828    const loadMoreBtn = document.getElementById('load-more-btn');
3829    const hiddenItems = document.querySelectorAll('.product-updates-hidden');
3830
3831    if (loadMoreBtn) {
3832        loadMoreBtn.addEventListener('click', function(e) {
3833            e.preventDefault();
3834
3835            // Show all hidden items
3836            hiddenItems.forEach(item => {
3837                item.classList.remove('d-none');
3838            });
3839
3840            // Hide the "Load more" button row
3841            buttonContainer.classList.add('d-none');
3842        });
3843    }
3844            });
3845        </script>
3845
3846
3847        
3848    
3849    
3850    
3850<script>
3851    function recaptchaScript() {
3852        var recaptcha_token_input = document.getElementById("recaptcha_token");
3853
3854        if(recaptcha_token_input) {
3855            var recaptcha_script = document.createElement('script');
3856            recaptcha_script.onload = function () {
3857                grecaptcha.ready(function () {
3858                    function recaptcha_execute(callback) {
3859                        grecaptcha.execute('6LfiRpkUAAAAAEIOzxFzW9Ftvd5xXeYQ05nTYNIS', {action: 'homepage'}).then(function (token) {
3860                            recaptcha_token_input.value = token;
3861                            callback();
3862                        });
3863                    }
3864
3865                    function recaptcha_timeout() {
3866                        setTimeout(function () {
3867                            recaptcha_execute(function () {
3868                                recaptcha_timeout();
3869                            });
3870                        }, 1000 * 100);
3871                    }
3872
3873                    recaptcha_execute(function () {
3874                        recaptcha_timeout();
3875                    });
3876                });
3877            };
3878
3879            recaptcha_script.src = "https://www.google.com/recaptcha/api.js?render=6LfiRpkUAAAAAEIOzxFzW9Ftvd5xXeYQ05nTYNIS";
3880
3881            document.head.appendChild(recaptcha_script);
3882        }
3883    }
3884
3885    recaptchaScript();
3886
3887    document.addEventListener('shown.bs.modal', function () {
3888        recaptchaScript();
3889    });
3890
3891    document.addEventListener('dt.popup.content-loaded', function(){
3892        recaptchaScript();
3893    })
3894</script>
3894
3895    
3896    
3897    
3897<script type="text/javascript">window.NREUM||(NREUM={});NREUM.info={"beacon":"bam.nr-data.net","licenseKey":"87a2541869","applicationID":"47292941","transactionName":"bgMGbBZUWxFRVRdcCVdJJVsQXFoMH0YRWgJMBRAVEUVRA0RTEA==","queueTime":0,"applicationTime":61,"atts":"QkQFGl5OSB8=","errorBeacon":"bam.nr-data.net","agent":""}</script>
3897</body>
3898</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.