1(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,28883,e=>{e.v({description:"feature-navigation-module__y7iYOq__description",footer:"feature-navigation-module__y7iYOq__footer",groups:"feature-navigation-module__y7iYOq__groups",heading:"feature-navigation-module__y7iYOq__heading",item:"feature-navigation-module__y7iYOq__item",items:"feature-navigation-module__y7iYOq__items",mobile:"feature-navigation-module__y7iYOq__mobile",panel:"feature-navigation-module__y7iYOq__panel",title:"feature-navigation-module__y7iYOq__title"})},69342,57701,e=>{"use strict";var t=e.i(43476),a=e.i(22016),i=e.i(57688),r=e.i(71645),n=e.i(18566);let s=(0,e.i(75254).default)("menu",[["path",{d:"M4 5h16",key:"1tepv9"}],["path",{d:"M4 12h16",key:"1lakjw"}],["path",{d:"M4 19h16",key:"1djgab"}]]);var o=e.i(37727),l=e.i(64659),c=e.i(72520),d=e.i(48988),u=e.i(56579),p=e.i(28883);let h=[{title:"AI Notes & Dentist Zone",description:"For your clinical day",items:[{id:"ai-notes",title:"AI dental notes",description:"Talk, review your draft, then copy."},{id:"clinical-portfolio",title:"Your own dental website",description:"Show your profile, cases and reviews."},{id:"patient-media-consent",title:"Patient education",description:"Explain treatment with videos and images."}
1,{id:"voice-charting",title:"Voice perio charting",description:"Enter six-point measurements by voice."},{id:"plans",title:"Patient care plans",description:"Share plans patients can revisit."},{id:"templates",title:"Templates and instructions",description:"Use your own structure and wording."},{id:"clinical-forms",title:"Clinical forms",description:"Draft forms in their original layout."},{id:"income-tracker",title:"Associate finances",description:"Track work, costs and expected pay."}]},{title:"Practice Hub",description:"For your shared team work",items:[{id:"compliance-helpers",href:"/practice-organizer",title:"Practice Hub overview",description:"See how the team tools fit together."},{id:"rota",title:"Dental rota",description:"Plan shifts, leave and attendance."},{id:"checks-logs",title:"Checks and logs",description:"See what needs doing and follow up."},{id:"shared-lab",title:"Shared lab tracker",description:"Follow cases and expected returns."},{id:"stock-control",title:"Stock and orders",description:"Know what to reorder and use first."},{id:"associate-finances",title:"Associate pay",description:"Calculate pay and review statements."},{id:"invoice-manager",title:"Invoice manager",description:"Extract invoice details for review."},{id:"boards-templates",title:"Boards and templates",description:"Organise tasks and repeat processes."},{id:"compliance-helpers",title:"Practice compliance",description:"Keep policies and evidence together."},{id:"team-meetings",title:"Meeting notes and actions",description:"Share decisions and follow-up work."}]},{title:"Learning & growth",description:"More ways to develop and connect",items:[{id:"cpd",title:"CPD tracker and PDP",description:"Keep learning and certificates together."},{id:"course-directory",title:"Dental courses",description:"Find your next course."},{id:"course-creator",title:"Create a course",description:"Publish a listing and manage learners."},{id:"referrals",title:"Dental specialists",description:"Explore the UK referral directory."},{id:"growth",title:"AI website chatbot",description:"Answer enquiries. Optional add-on."}]}];function m({mobile:e=!1,onNavigate:i}){return(0,t.jsxs)("div",{className:`${p.default.panel} ${e?p.default.mobile:""}`,children:[(0,t.jsx)("div",{className:p.default.groups,children:h.map(e=>(0,t.jsxs)("section",{"aria-label":e.title,children:[(0,t.jsxs)("div",{className:p.default.heading,children:[(0,t.jsx)("h2",{children:e.title}),(0,t.jsx)("p",{children:e.description})]}),(0,t.jsx)("ul",{className:p.default.items,children:e.items.map(e=>(0,t.jsx)("li",{children:(0,t.jsxs)(a.default,{href:"href"in e?e.href:(0,u.getFeatureDestination)(e.id),onClick:i,className:p.default.item,children:[(0,t.jsx)(d.FeatureIllustration,{id:e.id,size:44}),(0,t.jsxs)("span",{children:[(0,t.jsx)("span",{className:p.default.title,children:e.title}),(0,t.jsx)("span",{className:p.default.description,children:e.description})]})]})},"href"in e?e.href:e.id))})]},e.title))}),(0,t.jsxs)("div",{className:p.default.footer,children:[(0,t.jsxs)(a.default,{href:"/features",onClick:i,children:["Explore all features ",(0,t.jsx)(c.ArrowRight,{size:16,"aria-hidden":"true"})]}),(0,t.jsxs)(a.default,{href:"/pricing",onClick:i,children:["Compare plans ",(0,t.jsx)(c.ArrowRight,{size:16,"aria-hidden":"true"})]})]})]})}var f=e.i(46932),g=e.i(88653),b=e.i(70551),y=e.i(37986),w=e.i(58461),x=e.i(27864);function v(e){return e.startsWith("/us")?null:["/dental-rota","/best-dental-rota-software-uk","/staff-scheduling-software","/resources/dental-rota-template","/compare/excel-vs-rota-software","/compare/iteam-rota-alternative","/compare/denttrack-alternative","/compare/staffport-alternative","/compare/bizimply-alternative","/compare/deputy-alternative","/compare/rotacloud-alternative","/compare/findmyshift-alternative"].includes(e)?"rota":["/practice-organizer","/dental-stock-control","/associate-wages-software","/dental-invoice-software","/dental-practice-templates","/cqc-compliance-software","/blog/mastering-cqc-compliance-in-2025-a-complete-dental-practice-guide","/blog/workflow-automation-for-dental-practices-let-ai-handle-the-busywork"].includes(e)?"hub":"/"===e||["/ai-dental-notes","/best-ai-dental-notes-uk","/voice-perio-charting","/clinical-forms","/associate-finances-tax-prep","/blog/palmer-notation-charting-symbols","/blog/6ppc-dental-chart-six-point-pocket-charting-guide"].includes(e)?"notes":null}function k(){let[e,i]=(0,r.useState)(!1),s=(0,n.usePathname)();if((0,r.useEffect)(()=>
1{if(!localStorage.getItem("us-geo-banner-dismissed"))try{let e=Intl.DateTimeFormat().resolvedOptions().timeZone;e.startsWith("America/")&&["America/New_York","America/Chicago","America/Denver","America/Los_Angeles","America/Phoenix","America/Anchorage","America/Adak","Pacific/Honolulu","America/Detroit","America/Indiana","America/Kentucky","America/Boise","America/Juneau","America/Nome","America/Sitka","America/Yakutat","America/Menominee","America/North_Dakota"].some(t=>e.startsWith(t))&&window.requestAnimationFrame(()=>i(!0))}catch{}},[]),!e||s.startsWith("/us"))return null;let l="/"===s?"/us":`/us${"/pricing"===s?"/pricing":"/ai-dental-notes"===s?"/ai-dental-notes":"/dental-rota"===s?"/dental-scheduling":""}`;return(0,t.jsxs)("div",{className:"bg-gradient-to-r from-blue-600 via-indigo-600 to-blue-700 text-white py-2.5 px-4 text-center relative",children:[(0,t.jsxs)(a.default,{href:l,className:"inline-flex items-center gap-2 text-sm font-medium hover:underline",onClick:()=>(0,b.trackCTAClick)("us_geo_banner","promo_banner"),children:[(0,t.jsx)("span",{className:"text-lg",children:"ðºð¸"}),(0,t.jsx)("span",{className:"hidden sm:inline font-bold",children:"It looks like you're in the US! View HIPAA-compliant pricing in USD"}),(0,t.jsx)("span",{className:"sm:hidden font-bold",children:"US visitor? View USD pricing"}),(0,t.jsx)(c.ArrowRight,{className:"w-4 h-4"})]}),(0,t.jsx)("button",{onClick:e=>{e.preventDefault(),e.stopPropagation(),i(!1),localStorage.setItem("us-geo-banner-dismissed","true")},className:"absolute right-2 top-1/2 -translate-y-1/2 p-1 hover:bg-white/20 rounded","aria-label":"Dismiss banner",children:(0,t.jsx)(o.X,{className:"w-4 h-4"})})]})}e.s(["getUkMarketingProduct",()=>v],57701);let _=[{href:"/features",label:"Features",hasDropdown:!0},{href:"/pricing",label:"Pricing"},{href:"/book-demo",label:"Book Demo",highlight:!0},{href:"/blog",label:"Blog"},{href:"/contact-us",label:"Contact"}],P="(max-width: 767px)",j=e=>{let t=window.matchMedia(P);return t.addEventListener("change",e),()=>t.removeEventListener("change",e)},C=()=>window.matchMedia(P).matches,S=e=>(window.addEventListener("scroll",e,{passive:!0}),window.addEventListener("resize",e),()=>{window.removeEventListener("scroll",e),window.removeEventListener("resize",e)});function E({mobileCta:e}={}){let[c,d]=(0,r.useState)(!1),[u,p]=(0,r.useState)(!1),[h,P]=(0,r.useState)(!1),[N,D]=(0,r.useState)(80),A=(0,r.useRef)(null),I=(0,r.useRef)(null),R=(0,n.usePathname)(),O=R.startsWith("/us"),L=(e=>{let t=v(e);if("rota"===t)return{currency:"GBP",eventName:"marketing.trial_cta_click",href:"https://app.dentistrydashboard.com/auth/register?plan=73&growth_signup_intent=practice_hub_from_rota",labelDesktop:"Try Practice Hub for 14 days",labelMobile:"Try Practice Hub",planId:"73",planName:"Practice Hub",price:99,trialDays:14};if(e.startsWith("/us/ai-dental-notes")){let e=(0,x.getAiNotesMarketingCta)("us");return{currency:e.currency,eventName:e.eventName,href:e.href,labelDesktop:e.label,labelMobile:e.mobileLabel,planId:e.planId,planName:e.planName,price:e.price,signupIntent:e.signupIntent,trialDays:e.trialDays}}if(e.startsWith("/us/dental-scheduling"))return{currency:"USD",eventName:"marketing.trial_cta_click",href:"https://us.dentistrydashboard.com/auth/register?plan=6",planId:"6",planName:"Practice Hub",price:125,trialDays:21};if(e.startsWith("/us"))return{currency:"USD",eventName:"marketing.signup_cta_click",href:"https://us.dentistrydashboard.com/auth/register",planName:"General Signup",price:79,trialDays:14};if("notes"===t||e.startsWith("/ai-dental-notes")||e.startsWith("/best-ai-dental-notes-uk")){let e=(0,x.getAiNotesMarketingCta)("uk");return{currency:e.currency,eventName:e.eventName,href:e.href,labelDesktop:e.label,labelMobile:e.mobileLabel,planId:e.planId,planName:e.planName,price:e.price,signupIntent:e.signupIntent,trialDays:e.trialDays}}return"hub"===t||e.startsWith("/practice-organizer")?{currency:"GBP",eventName:"marketing.trial_cta_click",href:"https://app.dentistrydashboard.com/auth/register?plan=73&growth_signup_intent=practice_hub",planId:"73",planName:"Practice Hub",price:99,trialDays:14,labelDesktop:"Try Practice Hub",labelMobile:"Try Practice Hub",signupIntent:"practice_hub"}:{currency:"GBP",eventName:"marketing.signup_cta_click",href:"https://app.dentistrydashboard.com/auth/register",planName:"General Signup",price:40,trialDays:21}})(R),M=O?"https://us.dentistrydashboard.com/auth/login":"https://app.dentistrydashboard.com/",[T,z]=(0,r.useState)(L.href),$=(0,r.useRef)(null),q=e?.mode==="after-hero",F=(0,r.useSyncExternalStore)(j,C,()=>!0),U=(0,r.useSyncExternalStore)(S,()=>{if(!q)return!0;let e=document.getElementById("hero-trial-cta");if(!e)return!0;let t=I.current?.getBoundingClientRect().height||80;return e.getBoundingClientRect().bottom<t},()=>!q),B=q&&!U,H=B&&F;return(0,r.useEffect)(()=>{let e=window.requestAnimationFrame(()=>{z((0,w.buildTrackedAppUrl)(L.href))});return()=>window.cancelAnimationFrame(e)},[L.href]),(0,r.useEffect)(()=>{let e=e=>{"Escape"===e.key&&(d(!1),p(!1))};return document.addEventListener("keydown",e),()=>document.removeEventListener("keydown",e)},[]),(0,r.useEffect)(()=>(c?document.body.style.overflow="hidden":document.body.style.overflow="",()=>{document.body.style.overflow=""}),[c]),(0,r.useEffect)(()=>
1{if(!u)return;let e=e=>{A.current?.contains(e.target)||p(!1)},t=e=>{"Escape"===e.key&&$.current?.focus()};return document.addEventListener("pointerdown",e),document.addEventListener("keydown",t),()=>{document.removeEventListener("pointerdown",e),document.removeEventListener("keydown",t)}},[u]),(0,r.useEffect)(()=>{let e=()=>{I.current&&D(I.current.getBoundingClientRect().height)};e();let t=new ResizeObserver(e);return I.current&&t.observe(I.current),window.addEventListener("resize",e),()=>{t.disconnect(),window.removeEventListener("resize",e)}},[]),(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{ref:I,className:"fixed top-0 left-0 right-0 z-[70]",children:[(0,t.jsx)(k,{}),(0,t.jsx)("header",{className:"border-b border-gray-200/50 bg-white/70 backdrop-blur-md",children:(0,t.jsxs)("div",{className:"max-w-7xl mx-auto px-6 h-20 flex items-center justify-between",children:[(0,t.jsx)(a.default,{href:"/",className:"flex items-center gap-2 group shrink-0","aria-label":"Dentistry Dashboard home",children:(0,t.jsx)(i.default,{src:"/Dentistry_Dashboard_Logo_Dark.svg",alt:"Dentistry Dashboard",width:157,height:45,className:"h-9 sm:h-10 w-auto object-contain",priority:!0})}),(0,t.jsx)("nav",{className:"hidden md:flex items-center gap-8 text-sm font-medium text-gray-600",children:_.map(e=>e.hasDropdown?(0,t.jsxs)("div",{className:"relative",ref:A,children:[(0,t.jsxs)("button",{ref:$,onClick:()=>p(e=>!e),"aria-controls":"desktop-feature-navigation",className:"flex items-center gap-1 hover:text-gray-900 transition-colors py-2","aria-expanded":u,"aria-haspopup":"true",children:[e.label,(0,t.jsx)(f.motion.span,{animate:{rotate:180*!!u},transition:{duration:.2},children:(0,t.jsx)(l.ChevronDown,{className:"w-4 h-4"})})]}),(0,t.jsx)(g.AnimatePresence,{children:u&&(0,t.jsx)(f.motion.div,{initial:{opacity:0,y:10,scale:.95},animate:{opacity:1,y:0,scale:1},exit:{opacity:0,y:10,scale:.95},transition:{duration:.2,ease:"easeOut"},id:"desktop-feature-navigation",className:"fixed left-1/2 -translate-x-1/2 pt-2",style:{top:N},children:(0,t.jsx)(m,{onNavigate:()=>p(!1)})})})]},e.href):(0,t.jsx)(a.default,{href:e.href,className:`${e.highlight?"text-blue-600 hover:text-blue-700 font-semibold transition-colors":"hover:text-gray-900 transition-colors"}`,children:e.label},e.href))}),(0,t.jsxs)("div",{className:"flex items-center gap-2 sm:gap-4",children:[(0,t.jsx)(a.default,{href:M,className:"hidden md:block text-sm font-medium text-gray-600 hover:text-gray-900 transition-colors",children:"Login"}),(0,t.jsxs)(a.default,{href:T,"aria-hidden":H||void 0,tabIndex:H?-1:void 0,onClick:e=>{e.currentTarget.href=(0,w.buildTrackedAppUrl)(L.href),(0,b.trackCTAClick)("get_started","navbar"),(0,b.markHighValueSession)(),(0,w.trackMarketingGrowthEvent)(L.eventName,{currency:L.currency,planId:L.planId,planName:L.planName,signupIntent:L.signupIntent,trialDays:L.trialDays,payload:{ctaSurface:"navbar"}}),"marketing.trial_cta_click"===L.eventName&&(0,y.trackTrialIntent)(L.planName,L.price,L.currency,L.trialDays)},className:`${q?"rounded-full bg-gradient-to-br from-[#8F77F4] to-[#7C63EA] hover:from-[#7C63EA] hover:to-[#7C63EA] px-3.5 py-2 text-[13px] font-bold shadow-[0_8px_20px_rgba(143,119,244,0.30)] hover:shadow-none md:px-5 md:py-2.5 md:text-sm":"px-3 py-2 sm:px-5 sm:py-2.5 rounded-lg bg-blue-600 hover:bg-blue-700 text-xs sm:text-sm font-medium shadow-lg shadow-blue-900/10 hover:shadow-blue-600/20"} ${B?"opacity-0 pointer-events-none md:opacity-100 md:pointer-events-auto":"opacity-100"} text-white transition-all duration-300 whitespace-nowrap`,children:[(0,t.jsx)("span",{className:"hidden sm:inline",children:L.labelDesktop||"Get Started"}),(0,t.jsx)("span",{className:"sm:hidden",children:e?.label||L.labelMobile||"Free Trial"})]}),(0,t.jsx)("button",{onClick:()=>d(!c),className:"md:hidden p-2 -mr-2 text-gray-600 hover:text-gray-900 transition-colors","aria-label":c?"Close menu":"Open menu","aria-expanded":c,children:c?(0,t.jsx)(o.X,{className:"w-6 h-6"}):(0,t.jsx)(s,{className:"w-6 h-6"})})]})]})})]}),(0,t.jsx)("div",{className:`fixed inset-0 z-[60] bg-black/50 backdrop-blur-sm transition-opacity duration-300 md:hidden ${c?"opacity-100":"opacity-0 pointer-events-none"}`,onClick:()=>d(!1),"aria-hidden":"true"}
1),(0,t.jsx)("nav",{style:{top:N},className:`fixed left-0 right-0 bottom-0 z-[60] bg-white overflow-y-auto transform transition-all duration-300 ease-out md:hidden ${c?"translate-y-0 opacity-100":"-translate-y-4 opacity-0 pointer-events-none"}`,inert:!c,"aria-label":"Mobile navigation",children:(0,t.jsxs)("div",{className:"max-w-7xl mx-auto px-6 py-6 pb-40 space-y-1",children:[_.map(e=>e.hasDropdown?(0,t.jsxs)("div",{className:"rounded-lg overflow-hidden",children:[(0,t.jsxs)("button",{onClick:()=>P(!h),className:"flex items-center justify-between w-full py-3 px-4 rounded-lg text-base font-medium text-gray-700 hover:bg-gray-100 hover:text-gray-900 transition-colors","aria-expanded":h,children:[(0,t.jsx)("span",{children:e.label}),(0,t.jsx)(f.motion.span,{animate:{rotate:180*!!h},transition:{duration:.2},children:(0,t.jsx)(l.ChevronDown,{className:"w-5 h-5 text-gray-400"})})]}),(0,t.jsx)(g.AnimatePresence,{children:h&&(0,t.jsx)(f.motion.div,{initial:{height:0,opacity:0},animate:{height:"auto",opacity:1},exit:{height:0,opacity:0},transition:{duration:.3,ease:"easeInOut"},className:"overflow-hidden",children:(0,t.jsx)(m,{mobile:!0,onNavigate:()=>{d(!1),P(!1)}})})})]},e.href):(0,t.jsx)(a.default,{href:e.href,onClick:()=>d(!1),className:`block py-3 px-4 rounded-lg text-base font-medium transition-colors ${e.highlight?"text-blue-600 bg-blue-50 hover:bg-blue-100":"text-gray-700 hover:bg-gray-100 hover:text-gray-900"}`,children:e.label},e.href)),(0,t.jsxs)("div",{className:"pt-4 mt-4 border-t border-gray-200 space-y-3",children:[(0,t.jsx)(a.default,{href:M,onClick:()=>d(!1),className:"block w-full py-3 px-4 rounded-lg border border-slate-900/15 bg-slate-50 hover:bg-slate-100 text-slate-900 text-center text-base font-semibold transition-colors",children:"Login"}),(0,t.jsx)(a.default,{href:T,onClick:e=>{d(!1),e.currentTarget.href=(0,w.buildTrackedAppUrl)(L.href),(0,b.trackCTAClick)("get_started","mobile_menu"),(0,b.markHighValueSession)(),(0,w.trackMarketingGrowthEvent)(L.eventName,{currency:L.currency,planId:L.planId,planName:L.planName,signupIntent:L.signupIntent,trialDays:L.trialDays,payload:{ctaSurface:"mobile_menu"}}),"marketing.trial_cta_click"===L.eventName&&(0,y.trackTrialIntent)(L.planName,L.price,L.currency,L.trialDays)},className:"block w-full py-3 px-4 rounded-lg bg-blue-600 hover:bg-blue-700 text-white text-center text-base font-medium transition-all shadow-lg shadow-blue-900/10",children:L.labelDesktop||"Get Started"})]})]})})]})}e.s(["Navbar",()=>E],69342)},37727,e=>{"use strict";let t=(0,e.i(75254).default)("x",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]);e.s(["X",()=>t],37727)},95220,e=>{e.v({artwork:"feature-illustration-module__2h6ZrW__artwork",frame:"feature-illustration-module__2h6ZrW__frame"})},48988,e=>{"use strict";var t=e.i(43476),a=e.i(95220);let i={"ai-notes":{sheet:"additional",index:0},"quick-treatment":{sheet:"dentist",index:0},templates:{sheet:"additional",index:1},letters:{sheet:"additional",index:2},plans:{sheet:"additional",index:3},rewrite:{sheet:"additional",index:4},languages:{sheet:"additional",index:5},"clinical-forms":{sheet:"dentist",index:5},"clinical-portfolio":{sheet:"website"},"patient-media-consent":{sheet:"dentist",index:1},"voice-charting":{sheet:"dentist",index:3},"perio-tools":{sheet:"dentist",index:4},"personal-lab":{sheet:"practice",index:7},"patient-comms":{sheet:"dentist",index:8},referrals:{sheet:"dentist",index:6},"income-tracker":{sheet:"dentist",index:11},"live-workflows":{sheet:"dentist",index:9},"tasks-insights":{sheet:"dentist",index:13},rota:{sheet:"practice",index:0},"shared-lab":{sheet:"practice",index:7},"stock-control":{sheet:"practice",index:5},"invoice-manager":{sheet:"practice",index:4},"associate-finances":{sheet:"practice",index:2},"boards-templates":{sheet:"dentist",index:9},"checks-logs":{sheet:"practice",index:14},"compliance-helpers":{sheet:"practice",index:10},"team-meetings":{sheet:"practice",index:3},"form-builder":{sheet:"additional",index:6},cpd:{sheet:"dentist",index:14},"course-directory":{sheet:"dentist",index:15}
1,"course-creator":{sheet:"additional",index:7},growth:{sheet:"practice",index:6}},r=[40,344,639,931],n={dentist:"/feature-illustrations/dentist-tools.webp",practice:"/feature-illustrations/practice-tools.webp",additional:"/feature-illustrations/additional-features.webp",website:"/feature-illustrations/my-website.webp"};function s({id:e,size:s=64}){let o=i[e];if(!o)return null;let l={width:s,height:s,backgroundImage:`url(${n[o.sheet]})`,backgroundSize:"contain",backgroundPosition:"center"};if("website"!==o.sheet){let e=Math.floor(o.index/4),t=o.index%4*100/3;"dentist"===o.sheet?(l.height=290*s*4/1254,l.backgroundSize="400% auto",l.backgroundPosition=`${t}% ${100*r[e]/964}%`):(l.backgroundSize="additional"===o.sheet?"400% 200%":"400% 400%",l.backgroundPosition=`${t}% ${"additional"===o.sheet?100*e:100*e/3}%`)}return(0,t.jsx)("span",{"aria-hidden":"true",className:a.default.frame,style:{width:s,height:s},children:(0,t.jsx)("span",{className:a.default.artwork,style:l})})}e.s(["FeatureIllustration",()=>s])},64659,e=>{"use strict";let t=(0,e.i(75254).default)("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);e.s(["ChevronDown",()=>t],64659)},56579,e=>{"use strict";function t(e){let t=a.flatMap(e=>e.features).find(t=>t.id===e);if(!t)throw Error(`Unknown marketing feature: ${e}`);return t.href??`/features#${e}`}let a=[{id:"notes",label:"AI Notes",title:"Start with the conversation.",description:"Speak naturally with your patient, then turn the appointment into a draft you can review. Keep the same details working for you after the consultation.",access:"AI Notes is part of Dentist Zone. See pricing for allowances and plan details.",href:"/ai-dental-notes",linkLabel:"See AI Notes in action",features:[{id:"ai-notes",title:"Consultation recording",description:"Turn your consultation into structured clinical notes. Choose a template, record, then check and approve the draft before copying it to your patient record system.",example:"Spend the appointment talking to your patient, with a draft ready to review afterwards.",href:"/ai-dental-notes",linkLabel:"Explore AI dental notes"},{id:"quick-treatment",title:"Clickable treatment notes",description:"Choose treatment options, teeth, materials and other details to build a note without recording. Useful when speaking is not practical.",example:"Document a routine treatment by selecting the details that apply."},{id:"templates",title:"Your templates and instructions",description:"Start with a ready-made template, paste your own structure or upload a Word or PDF template. Save wording preferences and share your own templates with colleagues.",example:"Keep the headings and level of detail you already like, appointment after appointment."},{id:"letters",title:"Letters, referrals and consent drafts",description:"Create patient letters, referral letters and consent documents, with or without generating a clinical note first. Review every draft before using it.",example:"Turn appointment details into a clear explanation for the patient without starting again."},{id:"plans",title:"Interactive patient care plans",description:"Create a patient-friendly care plan from your notes, review and edit it, then share a link the patient can revisit.",example:"Give patients an explanation of their proposed care to read again at home."},{id:"rewrite",title:"Dictation and AI Rewrite",description:"Dictate extra text into the note editor or ask AI Rewrite for a specific change in plain English. Review the result before approving it.",example:"Ask for bullet points or a shorter summary instead of rewriting the whole note."},{id:"languages",title:"Multilingual consultations",description:"Choose supported transcription languages before recording. Precision transcription supports a second language for consultations that move between two languages.",example:"Keep your usual note structure while consulting in a supported language.",href:"/ai-dental-notes-supported-languages",linkLabel:"Check supported languages"},{id:"clinical-forms",title:"Clinical forms in their original layout",description:"Draft fields in supported practice, Trust or hospital forms from a transcript, or fill them in yourself. Review and export the completed form in its original layout.",example:"Request conversion of a blank form your team already uses.",href:"/clinical-forms",linkLabel:"Explore clinical forms"}]},{id:"dentist",label:"Dentist Zone",title:"More support for your working day.",description:"Show patients what you mean, keep track of cases and build your own professional presence. Find practical tools for each part of your working day.",access:"These tools sit in Dentist Zone. Referrals and discovery also have their own access options; check current plans.",href:"/pricing",linkLabel:"Compare Dentist Zone plans",features:[{id:"clinical-portfolio",title:"Your own dental website",description:"Build a website with your profile, treatments, case galleries, reviews and contact details. Check a private preview, then publish when you are ready.",example:"Share one professional link so prospective patients can see your work before getting in touch."},{id:"patient-media-consent",title:"Patient education",description:"Show treatment videos, images, PDFs and your own media during appointments. Search by topic and organise materials into reusable presentations.",example:"Explain a crown, implant or gum condition visually, then use the same presentation again."}
1,{id:"voice-charting",title:"Voice perio charting",description:"Call out six-point pocket depths, recession and bleeding while charting. Review the chart and perio markers before using them in the record.",example:"Keep your hands on the examination while entering the measurements by voice.",href:"/voice-perio-charting",linkLabel:"See voice charting"},{id:"perio-tools",title:"Perio calculators and prescribing references",description:"Use perio staging, grading and stability tools, and open SDCEP or BNF prescribing references from AI Notes.",example:"Keep useful chairside references close to your notes."},{id:"personal-lab",title:"Personal lab tracker",description:"Track cases from sent out to returned and fitted. Keep expected return dates, labs and work types in one personal board or table.",example:"See which cases you are waiting for before the next appointment. Practice Hub adds a shared team tracker."},{id:"patient-comms",title:"Patient communications",description:"Find generated letters, care plans and patient messages by patient, type, date or status. Copy care-plan links and resend patient emails.",example:"Find the plan you already sent instead of creating it again."},{id:"referrals",title:"Referrals and clinician discovery",description:"Find clinicians who accept referrals, send and receive referrals with attachments, and follow messages and status updates in one place.",example:"Create a referral profile so colleagues can discover where and what you accept.",href:"/find-dental-specialist",linkLabel:"Explore the referral directory"},{id:"income-tracker",title:"Associate finances and income tracking",description:"Log UDAs and private work, record expenses and lab costs, compare expected pay with practice statements, and prepare records for tax time.",example:"Log completed work from AI Notes and see it in your finance work log.",href:"/associate-finances-tax-prep",linkLabel:"Explore associate finances"},{id:"live-workflows",title:"Checklists with QR sharing",description:"Create reusable reminders for equipment setup, appointments and repeat tasks. Share a checklist by QR code or link so others can open it on their device.",example:"Give a nurse the setup list for a treatment without printing another sheet."},{id:"tasks-insights",title:"Tasks and note insights",description:"Keep daily reminders and follow-ups together. Use the note analysis tools to explore patterns across selected saved notes.",example:"Review recurring documentation themes or keep a follow-up on your task list."}]},{id:"practice",label:"Practice Hub",title:"Keep the whole team moving.",description:"Replace scattered spreadsheets and messages with a shared place for rotas, lab work, stock, checks and practice administration.",access:"Practice Hub includes the team rota. Practice tools and clinician AI Notes licences have different allowances; compare plans for your team.",href:"/practice-organizer",linkLabel:"Explore Practice Hub",features:[{id:"rota",title:"Team rota, leave and attendance",description:"Plan who is working and where, manage leave and cover, and keep attendance, overtime and TOIL records with the schedule.",example:"See staffing and leave together before agreeing the next change.",href:"/dental-rota",linkLabel:"Explore the dental rota"},{id:"shared-lab",title:"Shared lab tracker",description:"Give the team a common view of cases, expected returns and progress. Update work as it is sent, returned and fitted.",example:"Let reception and clinicians check progress without chasing a personal lab book."},{id:"stock-control",title:"Stock and supplier orders",description:"Scan barcodes, track batches and expiry dates, check stock levels and build supplier orders from the same workspace.",example:"See what needs ordering and which batches need using first.",href:"/dental-stock-control",linkLabel:"Explore dental stock control"},{id:"invoice-manager",title:"AI invoice manager",description:"Extract details from lab invoices into a review queue. Check costs, dentist allocation and lab shares before using them in statements.",example:"Reduce retyping while keeping a review step for c
1osts and allocations.",href:"/dental-invoice-software",linkLabel:"Explore invoice management"},{id:"associate-finances",title:"Associate wages and statements",description:"Calculate pay with sliding scales, lab shares and deductions. Send statements for associates to accept or query, and export accounting CSVs.",example:"Keep the calculation and the conversation about pay together.",href:"/associate-wages-software",linkLabel:"Explore associate wages"},{id:"boards-templates",title:"Boards and practice templates",description:"Start from ready-made dental boards or create your own with AI. Track patient journeys, referrals, complaints and everyday practice work.",example:"Choose a board and adapt it to your own process instead of building a spreadsheet.",href:"/dental-practice-templates",linkLabel:"Browse practice templates"},{id:"checks-logs",title:"Checks, logs and equipment",description:"Keep recurring checks, practice logs and equipment records together, with a shared view of work that needs attention.",example:"Make daily checks easier to find and follow up."},{id:"compliance-helpers",title:"Practice compliance",description:"Organise policies, COSHH assessments, risk assessments, audits and incident records. Keep supporting evidence together for review.",example:"Find the record you need without searching several folders. The tools support your compliance work; they do not guarantee compliance.",href:"/cqc-compliance-software",linkLabel:"Explore compliance tools"},{id:"team-meetings",title:"Meeting notes and actions",description:"Record a team meeting and generate draft minutes and actions to review and share with attendees.",example:"Leave with a clear record of decisions and follow-up work.",href:"/practice-organizer",linkLabel:"Explore team meetings in Practice Hub"},{id:"form-builder",title:"Digital forms and QR forms",description:"Build forms for information collection and link responses to your boards. Share forms with a link or printable QR code.",example:"Collect the details your team needs without retyping paper responses.",href:"/dental-practice-templates",linkLabel:"Explore forms and boards"}]},{id:"learning",label:"Learning and growth",title:"Develop your skills. Grow your reach.",description:"Support professional development, teach your own courses and help prospective patients connect with the practice.",access:"Course, CPD and directory access varies by feature. The website chatbot is an optional add-on, separate from the personal website builder.",href:"/pricing",linkLabel:"See plans and add-ons",features:[{id:"cpd",title:"CPD tracker and PDP",description:"Keep hours, certificates and development plans together. Check progress and expiring requirements, and create an AI-assisted Personal Development Plan.",example:"Prepare for a CPD review with your learning record in one place.",href:"/cpd-portal",linkLabel:"Explore CPD tools"},{id:"course-directory",title:"Discover dental courses",description:"Browse dental courses by topic, location and date to find learning that fits your interests and schedule.",example:"Find your next course or an option for team training.",href:"/dental-courses",linkLabel:"Browse dental courses"},{id:"course-creator",title:"Create and manage courses",description:"Publish your own course listing and manage attendees, certificates and feedback through the course creator tools.",example:"Give learners one place to find the details and take the next step.",href:"/list-your-course",linkLabel:"Explore course creation"},{id:"growth",title:"AI website chatbot",description:"Add a chatbot to your practice website to answer configured questions and capture enquiries outside reception hours. Available as an optional add-on.",example:"Give website visitors a way to ask about treatment and leave an enquiry.",href:"/dental-ai-chatbots",linkLabel:"Explore the chatbot add-on"}]}];e.s(["featureGroups",0,a,"getFeatureDestination",()=>t])},88653,e=>{"use strict";e.i(47167);var t=e.i(43476),a=e.i(71645),i=e.i(31178),r=e.i(47414),n=e.i(74008),s=e.i(21476),o=e.i(21186),l=a,c=e.i(37806);function d(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}class u extends l.Component{getSnapshotBeforeUpdate(e){let t=this.props.childRef.current;if(t&&e.isPresent&&!this.props.isPresent){let e=t.offsetParent,a=(0,o.isHTMLElement)(e)&&e.offsetWidth||0,i=this.props.sizeRef.current;i.height=t.offsetHeight||0,i.width=t.offsetWidth||0,i.top=t.offsetTop,i.left=t.offsetLeft,i.right=a-i.width-i.left}return null}componentDidUpdate(){}render(){return this.props.children}}function p({children:e,isPresent:i,anchorX:r,root:n}){let s=(0,l.useId)(),o=(0,l.useRef)(null),p=(0,l.useRef)({width:0,height:0,top:0,left:0,right:0}),{nonce:h}=(0,l.useContext)(c.MotionConfigContext),m=function(...e){return a.useCallback(function(...e){return t=>{let a=!1,i=e.map(e=>{let i=d(e,t);return a||"function"!=typeof i||(a=!0),i});if(a)return()=>{for(let t=0;t<i.length;t++){let a=i[t];"function"==typeof a?a():d(e[t],null)}}}}(...e),e)}(o,e?.ref);return(0,l.useInsertionEffect)(()=>{let{width:e,height:t,top:a,left:l,right:c}=p.current;if(i||!o.current||!e||!t)return;let d="left"===r?`left: ${l}`:`right: ${c}`;o.current.dataset.motionPopId=s;let u=document.createElement("style");h&&(u.nonce=h);let m=n??document.head;return m.appendChild(u),u.sheet&&u.sheet.insertRule(` 2 [data-motion-pop-id="${s}"] { 3 position: absolute !important; 4 width: ${e}px !important; 5 height: ${t}px !important; 6 ${d}px !important; 7 top: ${a}px !important; 8 } 9 `),()=>{m.contains(u)&&m.removeChild(u)}},[i]),(0,t.jsx)(u,{isPresent:i,childRef:o,sizeRef:p,children:l.cloneElement(e,{ref:m})})}let h=({children:e,initial:i,isPresent:n,onExitComplete:o,custom:l,presenceAffectsLayout:c,mode:d,anchorX:u,root:h})=>{let f=(0,r.useConstant)(m),g=(0,a.useId)(),b=!0,y=(0,a.useMemo)(()=>(b=!1,{id:g,initial:i,isPresent:n,custom:l,onExitComplete:e=>
9{for(let t of(f.set(e,!0),f.values()))if(!t)return;o&&o()},register:e=>(f.set(e,!1),()=>f.delete(e))}),[n,f,o]);return c&&b&&(y={...y}),(0,a.useMemo)(()=>{f.forEach((e,t)=>f.set(t,!1))},[n]),a.useEffect(()=>{n||f.size||!o||o()},[n]),"popLayout"===d&&(e=(0,t.jsx)(p,{isPresent:n,anchorX:u,root:h,children:e})),(0,t.jsx)(s.PresenceContext.Provider,{value:y,children:e})};function m(){return new Map}var f=e.i(64978);let g=e=>e.key||"";function b(e){let t=[];return a.Children.forEach(e,e=>{(0,a.isValidElement)(e)&&t.push(e)}),t}let y=({children:e,custom:s,initial:o=!0,onExitComplete:l,presenceAffectsLayout:c=!0,mode:d="sync",propagate:u=!1,anchorX:p="left",root:m})=>{let[y,w]=(0,f.usePresence)(u),x=(0,a.useMemo)(()=>b(e),[e]),v=u&&!y?[]:x.map(g),k=(0,a.useRef)(!0),_=(0,a.useRef)(x),P=(0,r.useConstant)(()=>new Map),[j,C]=(0,a.useState)(x),[S,E]=(0,a.useState)(x);(0,n.useIsomorphicLayoutEffect)(()=>{k.current=!1,_.current=x;for(let e=0;e<S.length;e++){let t=g(S[e]);v.includes(t)?P.delete(t):!0!==P.get(t)&&P.set(t,!1)}},[S,v.length,v.join("-")]);let N=[];if(x!==j){let e=[...x];for(let t=0;t<S.length;t++){let a=S[t],i=g(a);v.includes(i)||(e.splice(t,0,a),N.push(a))}return"wait"===d&&N.length&&(e=N),E(b(e)),C(x),null}let{forceRender:D}=(0,a.useContext)(i.LayoutGroupContext);return(0,t.jsx)(t.Fragment,{children:S.map(e=>{let a=g(e),i=(!u||!!y)&&(x===S||v.includes(a));return(0,t.jsx)(h,{isPresent:i,initial:(!k.current||!!o)&&void 0,custom:s,presenceAffectsLayout:c,mode:d,root:m,onExitComplete:i?void 0:()=>{if(!P.has(a))return;P.set(a,!0);let e=!0;P.forEach(t=>{t||(e=!1)}),e&&(D?.(),E(_.current),u&&w?.(),l&&l())},anchorX:p,children:e},a)})})};e.s(["AnimatePresence",()=>y],88653)},88143,(e,t,a)=>{"use strict";function i({widthInt:e,heightInt:t,blurWidth:a,blurHeight:i,blurDataURL:r,objectFit:n}){let s=a?40*a:e,o=i?40*i:t,l=s&&o?`viewBox='0 0 ${s} ${o}'`:"";return`%3Csvg xmlns='http://www.w3.org/2000/svg' ${l}%3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='${l?"none":"contain"===n?"xMidYMid":"cover"===n?"xMidYMid slice":"none"}' style='filter: url(%23b);' href='${r}'/%3E%3C/svg%3E`}Object.defineProperty(a,"__esModule",{value:!0}),Object.defineProperty(a,"getImageBlurSvg",{enumerable:!0,get:function(){return i}})},87690,(e,t,a)=>{"use strict";Object.defineProperty(a,"__esModule",{value:!0});var i={VALID_LOADERS:function(){return n},imageConfigDefault:function(){return s}};for(var r in i)Object.defineProperty(a,r,{enumerable:!0,get:i[r]});let n=["default","imgix","cloudinary","akamai","custom"],s={deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],path:"/_next/image",loader:"default",loaderFile:"",domains:[],disableStaticImages:!1,minimumCacheTTL:14400,formats:["image/webp"],maximumRedirects:3,dangerouslyAllowLocalIP:!1,dangerouslyAllowSVG:!1,contentSecurityPolicy:"script-src 'none'; frame-src 'none'; sandbox;",contentDispositionType:"attachment",localPatterns:void 0,remotePatterns:[],qualities:[75],unoptimized:!1}},4857,(e,t,a)=>{"use strict";Object.defineProperty(a,"__esModule",{value:!0}),Object.defineProperty(a,"getImgProps",{enumerable:!0,get:function(){return l}}),e.r(33525);let i=e.r(88143),r=e.r(87690),n=["-moz-initial","fill","none","scale-down",void 0];function s(e){return void 0!==e.default}function o(e){return void 0===e?e:"number"==typeof e?Number.isFinite(e)?e:NaN:"string"==typeof e&&/^[0-9]+$/.test(e)?parseInt(e,10):NaN}function l({src:e,sizes:t,unoptimized:a=!1,priority:l=!1,preload:c=!1,loading:d,className:u,quality:p,width:h,height:m,fill:f=!1,style:g,overrideSrc:b,onLoad:y,onLoadingComplete:w,placeholder:x="empty",blurDataURL:v,fetchPriority:k,decoding:_="async",layout:P,objectFit:j,objectPosition:C,lazyBoundary:S,lazyRoot:E,...N},D){var A;let I,R,O,{imgConf:L,showAltText:M,blurComplete:T,defaultLoader:z}=D,$=L||r.imageConfigDefault;if("allSizes"in $)I=$;else{let e=[...$.deviceSizes,...$.imageSizes].sort((e,t)=>
9e-t),t=$.deviceSizes.sort((e,t)=>e-t),a=$.qualities?.sort((e,t)=>e-t);I={...$,allSizes:e,deviceSizes:t,qualities:a}}if(void 0===z)throw Object.defineProperty(Error("images.loaderFile detected but the file is missing default export.\nRead more: https://nextjs.org/docs/messages/invalid-images-config"),"__NEXT_ERROR_CODE",{value:"E163",enumerable:!1,configurable:!0});let q=N.loader||z;delete N.loader,delete N.srcSet;let F="__next_img_default"in q;if(F){if("custom"===I.loader)throw Object.defineProperty(Error(`Image with src "${e}" is missing "loader" prop. 10Read more: https://nextjs.org/docs/messages/next-image-missing-loader`),"__NEXT_ERROR_CODE",{value:"E252",enumerable:!1,configurable:!0})}else{let e=q;q=t=>{let{config:a,...i}=t;return e(i)}}if(P){"fill"===P&&(f=!0);let e={intrinsic:{maxWidth:"100%",height:"auto"},responsive:{width:"100%",height:"auto"}}[P];e&&(g={...g,...e});let a={responsive:"100vw",fill:"100vw"}[P];a&&!t&&(t=a)}let U="",B=o(h),H=o(m);if((A=e)&&"object"==typeof A&&(s(A)||void 0!==A.src)){let t=s(e)?e.default:e;if(!t.src)throw Object.defineProperty(Error(`An object should only be passed to the image component src parameter if it comes from a static image import. It must include src. Received ${JSON.stringify(t)}`),"__NEXT_ERROR_CODE",{value:"E460",enumerable:!1,configurable:!0});if(!t.height||!t.width)throw Object.defineProperty(Error(`An object should only be passed to the image component src parameter if it comes from a static image import. It must include height and width. Received ${JSON.stringify(t)}`),"__NEXT_ERROR_CODE",{value:"E48",enumerable:!1,configurable:!0});if(R=t.blurWidth,O=t.blurHeight,v=v||t.blurDataURL,U=t.src,!f)if(B||H){if(B&&!H){let e=B/t.width;H=Math.round(t.height*e)}else if(!B&&H){let e=H/t.height;B=Math.round(t.width*e)}}else B=t.width,H=t.height}let G=!l&&!c&&("lazy"===d||void 0===d);(!(e="string"==typeof e?e:U)||e.startsWith("data:")||e.startsWith("blob:"))&&(a=!0,G=!1),I.unoptimized&&(a=!0),F&&!I.dangerouslyAllowSVG&&e.split("?",1)[0].endsWith(".svg")&&(a=!0);let W=o(p),K=Object.assign(f?{position:"absolute",height:"100%",width:"100%",left:0,top:0,right:0,bottom:0,objectFit:j,objectPosition:C}:{},M?{}:{color:"transparent"},g),Y=T||"empty"===x?null:"blur"===x?`url("data:image/svg+xml;charset=utf-8,${(0,i.getImageBlurSvg)({widthInt:B,heightInt:H,blurWidth:R,blurHeight:O,blurDataURL:v||"",objectFit:K.objectFit})}")`:`url("${x}")`,V=n.includes(K.objectFit)?"fill"===K.objectFit?"100% 100%":"cover":K.objectFit,X=Y?{backgroundSize:V,backgroundPosition:K.objectPosition||"50% 50%",backgroundRepeat:"no-repeat",backgroundImage:Y}:{},Z=function({config:e,src:t,unoptimized:a,width:i,quality:r,sizes:n,loader:s}){if(a)return{src:t,srcSet:void 0,sizes:void 0};let{widths:o,kind:l}=function({deviceSizes:e,allSizes:t},a,i){if(i){let a=/(^|\s)(1?\d?\d)vw/g,r=[];for(let e;e=a.exec(i);)r.push(parseInt(e[2]));if(r.length){let a=.01*Math.min(...r);return{widths:t.filter(t=>t>=e[0]*a),kind:"w"}}return{widths:t,kind:"w"}}return"number"!=typeof a?{widths:e,kind:"w"}:{widths:[...new Set([a,2*a].map(e=>t.find(t=>t>=e)||t[t.length-1]))],kind:"x"}}(e,i,n),c=o.length-1;return{sizes:n||"w"!==l?n:"100vw",srcSet:o.map((a,i)=>`${s({config:e,src:t,quality:r,width:a})} ${"w"===l?a:i+1}${l}`).join(", "),src:s({config:e,src:t,quality:r,width:o[c]})}}({config:I,src:e,unoptimized:a,width:B,quality:W,sizes:t,loader:q}),Q=G?"lazy":d;return{props:{...N,loading:Q,fetchPriority:k,width:B,height:H,decoding:_,className:u,style:{...K,...X},sizes:Z.sizes,srcSet:Z.srcSet,src:b||Z.src},meta:{unoptimized:a,preload:c||l,placeholder:x,fill:f}}}},98879,(e,t,a)=>{"use strict";Object.defineProperty(a,"__esModule",{value:!0}),Object.defineProperty(a,"default",{enumerable:!0,get:function(){return o}});let i=e.r(71645),r="undefined"==typeof window,n=r?()=>{}:i.useLayoutEffect,s=r?()=>{}:i.useEffect;function o(e){let{headManager:t,reduceComponentsToState:a}=e;function o(){if(t&&t.mountedInstances){let e=i.Children.toArray(Array.from(t.mountedInstances).filter(Boolean));t.updateHead(a(e))}}return r&&(t?.mountedInstances?.add(e.children),o()),n(()=>(t?.mountedInstances?.add(e.children),()=>{t?.mountedInstances?.delete(e.children)})),n(()=>
10(t&&(t._pendingUpdate=o),()=>{t&&(t._pendingUpdate=o)})),s(()=>(t&&t._pendingUpdate&&(t._pendingUpdate(),t._pendingUpdate=null),()=>{t&&t._pendingUpdate&&(t._pendingUpdate(),t._pendingUpdate=null)})),null}},25633,(e,t,a)=>{"use strict";Object.defineProperty(a,"__esModule",{value:!0});var i={default:function(){return f},defaultHead:function(){return u}};for(var r in i)Object.defineProperty(a,r,{enumerable:!0,get:i[r]});let n=e.r(55682),s=e.r(90809),o=e.r(43476),l=s._(e.r(71645)),c=n._(e.r(98879)),d=e.r(42732);function u(){return[(0,o.jsx)("meta",{charSet:"utf-8"},"charset"),(0,o.jsx)("meta",{name:"viewport",content:"width=device-width"},"viewport")]}function p(e,t){return"string"==typeof t||"number"==typeof t?e:t.type===l.default.Fragment?e.concat(l.default.Children.toArray(t.props.children).reduce((e,t)=>"string"==typeof t||"number"==typeof t?e:e.concat(t),[])):e.concat(t)}e.r(33525);let h=["name","httpEquiv","charSet","itemProp"];function m(e){let t,a,i,r;return e.reduce(p,[]).reverse().concat(u().reverse()).filter((t=new Set,a=new Set,i=new Set,r={},e=>{let n=!0,s=!1;if(e.key&&"number"!=typeof e.key&&e.key.indexOf("$")>0){s=!0;let a=e.key.slice(e.key.indexOf("$")+1);t.has(a)?n=!1:t.add(a)}switch(e.type){case"title":case"base":a.has(e.type)?n=!1:a.add(e.type);break;case"meta":for(let t=0,a=h.length;t<a;t++){let a=h[t];if(e.props.hasOwnProperty(a))if("charSet"===a)i.has(a)?n=!1:i.add(a);else{let t=e.props[a],i=r[a]||new Set;("name"!==a||!s)&&i.has(t)?n=!1:(i.add(t),r[a]=i)}}}return n})).reverse().map((e,t)=>{let a=e.key||t;return l.default.cloneElement(e,{key:a})})}let f=function({children:e}){let t=(0,l.useContext)(d.HeadManagerContext);return(0,o.jsx)(c.default,{reduceComponentsToState:m,headManager:t,children:e})};("function"==typeof a.default||"object"==typeof a.default&&null!==a.default)&&void 0===a.default.__esModule&&(Object.defineProperty(a.default,"__esModule",{value:!0}),Object.assign(a.default,a),t.exports=a.default)},18556,(e,t,a)=>{"use strict";Object.defineProperty(a,"__esModule",{value:!0}),Object.defineProperty(a,"ImageConfigContext",{enumerable:!0,get:function(){return n}});let i=e.r(55682)._(e.r(71645)),r=e.r(87690),n=i.default.createContext(r.imageConfigDefault)},65856,(e,t,a)=>{"use strict";Object.defineProperty(a,"__esModule",{value:!0}),Object.defineProperty(a,"RouterContext",{enumerable:!0,get:function(){return i}});let i=e.r(55682)._(e.r(71645)).default.createContext(null)},70965,(e,t,a)=>{"use strict";function i(e,t){let a=e||75;return t?.qualities?.length?t.qualities.reduce((e,t)=>Math.abs(t-a)<Math.abs(e-a)?t:e,0):a}Object.defineProperty(a,"__esModule",{value:!0}),Object.defineProperty(a,"findClosestQuality",{enumerable:!0,get:function(){return i}})},1948,(e,t,a)=>{"use strict";Object.defineProperty(a,"__esModule",{value:!0}),Object.defineProperty(a,"default",{enumerable:!0,get:function(){return n}});let i=e.r(70965);function r({config:e,src:t,width:a,quality:r}){if(t.startsWith("/")&&t.includes("?")&&e.localPatterns?.length===1&&"**"===e.localPatterns[0].pathname&&""===e.localPatterns[0].search)throw Object.defineProperty(Error(`Image with src "${t}" is using a query string which is not configured in images.localPatterns. 11Read more: https://nextjs.org/docs/messages/next-image-unconfigured-localpatterns`),"__NEXT_ERROR_CODE",{value:"E871",enumerable:!1,configurable:!0});let n=(0,i.findClosestQuality)(r,e);return`${e.path}?url=${encodeURIComponent(t)}&w=${a}&q=${n}${t.startsWith("/_next/static/media/"),""}`}r.__next_img_default=!0;let n=r},85437,(e,t,a)=>{"use strict";Object.defineProperty(a,"__esModule",{value:!0}),Object.defineProperty(a,"Image",{enumerable:!0,get:function(){return x}});let i=e.r(55682),r=e.r(90809),n=e.r(43476),s=r._(e.r(71645)),o=i._(e.r(74080)),l=i._(e.r(25633)),c=e.r(4857),d=e.r(87690),u=e.r(18556);e.r(33525);let p=e.r(65856),h=i._(e.r(1948)),m=e.r(18581),f={deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],qualities:[75],path:"/_next/image",loader:"default",dangerouslyAllowSVG:!1,unoptimized:!1};function g(e,t,a,i,r,n,s){let o=e?.src;e&&e["data-loaded-src"]!==o&&(e["data-loaded-src"]=o,("decode"in e?e.decode():Promise.resolve()).catch(()=>{}).then(()=>
11{if(e.parentElement&&e.isConnected){if("empty"!==t&&r(!0),a?.current){let t=new Event("load");Object.defineProperty(t,"target",{writable:!1,value:e});let i=!1,r=!1;a.current({...t,nativeEvent:t,currentTarget:e,target:e,isDefaultPrevented:()=>i,isPropagationStopped:()=>r,persist:()=>{},preventDefault:()=>{i=!0,t.preventDefault()},stopPropagation:()=>{r=!0,t.stopPropagation()}})}i?.current&&i.current(e)}}))}function b(e){return s.use?{fetchPriority:e}:{fetchpriority:e}}"undefined"==typeof window&&(globalThis.__NEXT_IMAGE_IMPORTED=!0);let y=(0,s.forwardRef)(({src:e,srcSet:t,sizes:a,height:i,width:r,decoding:o,className:l,style:c,fetchPriority:d,placeholder:u,loading:p,unoptimized:h,fill:f,onLoadRef:y,onLoadingCompleteRef:w,setBlurComplete:x,setShowAltText:v,sizesInput:k,onLoad:_,onError:P,...j},C)=>{let S=(0,s.useCallback)(e=>{e&&(P&&(e.src=e.src),e.complete&&g(e,u,y,w,x,h,k))},[e,u,y,w,x,P,h,k]),E=(0,m.useMergedRef)(C,S);return(0,n.jsx)("img",{...j,...b(d),loading:p,width:r,height:i,decoding:o,"data-nimg":f?"fill":"1",className:l,style:c,sizes:a,srcSet:t,src:e,ref:E,onLoad:e=>{g(e.currentTarget,u,y,w,x,h,k)},onError:e=>{v(!0),"empty"!==u&&x(!0),P&&P(e)}})});function w({isAppRouter:e,imgAttributes:t}){let a={as:"image",imageSrcSet:t.srcSet,imageSizes:t.sizes,crossOrigin:t.crossOrigin,referrerPolicy:t.referrerPolicy,...b(t.fetchPriority)};return e&&o.default.preload?(o.default.preload(t.src,a),null):(0,n.jsx)(l.default,{children:(0,n.jsx)("link",{rel:"preload",href:t.srcSet?void 0:t.src,...a},"__nimg-"+t.src+t.srcSet+t.sizes)})}let x=(0,s.forwardRef)((e,t)=>{let a=(0,s.useContext)(p.RouterContext),i=(0,s.useContext)(u.ImageConfigContext),r=(0,s.useMemo)(()=>{let e=f||i||d.imageConfigDefault,t=[...e.deviceSizes,...e.imageSizes].sort((e,t)=>e-t),a=e.deviceSizes.sort((e,t)=>e-t),r=e.qualities?.sort((e,t)=>e-t);return{...e,allSizes:t,deviceSizes:a,qualities:r,localPatterns:"undefined"==typeof window?i?.localPatterns:e.localPatterns}},[i]),{onLoad:o,onLoadingComplete:l}=e,m=(0,s.useRef)(o);(0,s.useEffect)(()=>{m.current=o},[o]);let g=(0,s.useRef)(l);(0,s.useEffect)(()=>{g.current=l},[l]);
11let[b,x]=(0,s.useState)(!1),[v,k]=(0,s.useState)(!1),{props:_,meta:P}=(0,c.getImgProps)(e,{defaultLoader:h.default,imgConf:r,blurComplete:b,showAltText:v});return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(y,{..._,unoptimized:P.unoptimized,placeholder:P.placeholder,fill:P.fill,onLoadRef:m,onLoadingCompleteRef:g,setBlurComplete:x,setShowAltText:k,sizesInput:e.sizes,ref:t}),P.preload?(0,n.jsx)(w,{isAppRouter:!a,imgAttributes:_}):null]})});("function"==typeof a.default||"object"==typeof a.default&&null!==a.default)&&void 0===a.default.__esModule&&(Object.defineProperty(a.default,"__esModule",{value:!0}),Object.assign(a.default,a),t.exports=a.default)},94909,(e,t,a)=>{"use strict";Object.defineProperty(a,"__esModule",{value:!0});var i={default:function(){return d},getImageProps:function(){return c}};for(var r in i)Object.defineProperty(a,r,{enumerable:!0,get:i[r]});let n=e.r(55682),s=e.r(4857),o=e.r(85437),l=n._(e.r(1948));function c(e){let{props:t}=(0,s.getImgProps)(e,{defaultLoader:l.default,imgConf:{deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],qualities:[75],path:"/_next/image",loader:"default",dangerouslyAllowSVG:!1,unoptimized:!1}});for(let[e,a]of Object.entries(t))void 0===a&&delete t[e];return{props:t}}let d=o.Image},57688,(e,t,a)=>{t.exports=e.r(94909)},27864,e=>{"use strict";let t={uk:{currency:"GBP",freeHref:"https://app.dentistrydashboard.com/auth/register?intent=ai_notes_free",trialHref:"https://app.dentistrydashboard.com/auth/register?plan=70",trialPlanId:"70",trialPlanName:"Dentist Zone",trialPrice:40.99,trialDays:14},us:{currency:"USD",freeHref:"https://us.dentistrydashboard.com/auth/register?intent=ai_notes_free",trialHref:"https://us.dentistrydashboard.com/auth/register?plan=3",trialPlanId:"3",trialPlanName:"Dentist Zone (US)",trialPrice:79,trialDays:14}};e.s(["FREE_NOTES_STARTER_MARKETING_ENABLED",0,!1,"getAiNotesMarketingCta",0,e=>{let a=t[e];return{badge:`Start your ${a.trialDays}-day AI Notes trial`,body:`Start the full-access ${a.trialDays}-day AI Notes trial and test unlimited daily notes, longer consultations, letters, referrals, consent forms, and treatment plans.`,chipLabels:[`${a.trialDays}-day full-access trial`,"Unlimited daily AI Notes","Letters, referrals, consent forms, and treatment plans","us"===e?"Works with Dentrix, Eaglesoft, and Open Dental":"Works with SOE, R4, Dentally, and Carestream"],currency:a.currency,eventName:"marketing.trial_cta_click",href:a.trialHref,label:`Start ${a.trialDays}-day trial`,mobileLabel:"Start AI Notes Trial",planId:a.trialPlanId,planName:a.trialPlanName,price:a.trialPrice,trialDays:a.trialDays}}])}]);
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.