@layer components{:root{--dark-blue:#6b7280;--base-blue:#9ca3af;--light-blue:#e5e7eb}.dark-theme{--dark-blue:#9ca3af;--base-blue:#d1d5db;--light-blue:#4b5563}.odontogram-shell{--odontogram-max-width:400px}@media (max-width:640px){.odontogram-shell{--odontogram-max-width:calc(100vw - 1.5rem)}}@media (max-width:380px){.odontogram-shell{--odontogram-max-width:calc(100vw - 1rem)}}@media (min-width:1024px) and (max-height:860px){.odontogram-shell{--odontogram-max-width:360px}}@media (min-width:1024px) and (max-height:760px){.odontogram-shell{--odontogram-max-width:328px}}@media (min-width:1024px) and (max-height:700px){.odontogram-shell{--odontogram-max-width:298px}}.Odontogram svg{color:var(--base-blue);fill:none;transition:all .125s ease-in}.Odontogram svg path:nth-of-type(2){opacity:0;transition:all .2s ease-in}.Odontogram g.selected path:first-of-type{transition:stroke 1s}.Odontogram g.selected:hover path:first-of-type{stroke:currentColor;stroke-width:1px;stroke-linecap:round;stroke-dasharray:4 4;stroke-dashoffset:0;-webkit-filter:drop-shadow(0 0 8px);transition:stroke 5s;animation:1s linear 1s infinite dash-move}@keyframes dash-move{to{stroke-dashoffset:8px}}.Odontogram g.selected{--dark-blue:#2563eb;--base-blue:#60a5fa;--light-blue:#dbeafe;color:var(--dark-blue);transition:all .3s}.Odontogram g.selected path{stroke-width:2px}.Odontogram g.selected path:first-of-type{stroke:#2563eb!important}.Odontogram g.selected path:nth-of-type(2){fill:#dbeafe!important;opacity:1!important}.Odontogram g.highlighted path:first-of-type{stroke-width:1.5px;stroke:#0d9488!important}.Odontogram g.highlighted path:nth-of-type(2){fill:#0d9488!important;opacity:.08!important}g[class^=teeth-]:hover path:nth-of-type(2){fill:var(--light-blue);opacity:1}.Odontogram g[role=option]:focus-visible{outline:4px solid var(--dark-blue)!important}.tooth-extracted,.tooth-extracted g,.tooth-extracted g.highlighted{--dark-blue:#dc2626!important;--base-blue:#dc2626!important;--light-blue:#dc2626!important;color:#dc2626!important}.tooth-extracted path,.tooth-extracted g path,.tooth-extracted g.highlighted path{stroke:#dc2626!important}.tooth-extracted path:first-of-type,.tooth-extracted g path:first-of-type,.tooth-extracted g.highlighted path:first-of-type{stroke-width:2px;stroke-dasharray:3 2;stroke:#dc2626!important}.tooth-extracted path:nth-of-type(2),.tooth-extracted g path:nth-of-type(2),.tooth-extracted g.highlighted path:nth-of-type(2){fill:#dc2626!important;opacity:.08!important}.tooth-implant,.tooth-implant g,.tooth-implant g.highlighted{--dark-blue:#334155!important;--base-blue:#334155!important;--light-blue:#334155!important;color:#334155!important}.tooth-implant path,.tooth-implant g path,.tooth-implant g.highlighted path{stroke:#334155!important}.tooth-implant path:first-of-type,.tooth-implant g path:first-of-type,.tooth-implant g.highlighted path:first-of-type{stroke-width:2px;stroke:#334155!important}.tooth-implant path:nth-of-type(2),.tooth-implant g path:nth-of-type(2),.tooth-implant g.highlighted path:nth-of-type(2){fill:#334155!important;opacity:.08!important}.tooth-porcelain,.tooth-porcelain g,.tooth-porcelain g.highlighted{--dark-blue:#d97706!important;--base-blue:#d97706!important;--light-blue:#d97706!important;color:#d97706!important}.tooth-porcelain path,.tooth-porcelain g path,.tooth-porcelain g.highlighted path{stroke:#d97706!important}.tooth-porcelain path:first-of-type,.tooth-porcelain g path:first-of-type,.tooth-porcelain g.highlighted path:first-of-type{stroke-width:2px;stroke:#d97706!important}.tooth-porcelain path:nth-of-type(2),.tooth-porcelain g path:nth-of-type(2),.tooth-porcelain g.highlighted path:nth-of-type(2){fill:#d97706!important;opacity:.08!important}.tooth-missing,.tooth-missing g,.tooth-missing g.highlighted{--dark-blue:#94a3b8!important;--base-blue:#94a3b8!important;--light-blue:#cbd5e1!important;color:#94a3b8!important}.tooth-missing path,.tooth-missing g path,.tooth-missing g.highlighted path{opacity:.35;stroke:#94a3b8!important}.tooth-missing path:first-of-type,.tooth-missing g path:first-of-type,.tooth-missing g.highlighted path:first-of-type{stroke-width:1.75px;stroke-dasharray:2.5 2.5;stroke:#94a3b8!important}.tooth-missing path:nth-of-type(2),.tooth-missing g path:nth-of-type(2),.tooth-missing g.highlighted path:nth-of-type(2){fill:#cbd5e1!important;opacity:.3!important}@media (prefers-reduced-motion:reduce){.Odontogram svg{transition:none}}}
