/* Maison de Veux cursor: two circles. A small bright dot sits on the pointer; a larger highlighted ring follows a beat behind.
   The system arrow is hidden (only once the circles are running, and only on devices with a real mouse).
   Text fields, resize handles and the like keep the system cursor, and the circles step aside there. */
html.mdv-cur,html.mdv-cur body{cursor:none}
html.mdv-cur [data-mdv-cur]:not([data-mdv-cur="nat"]){cursor:none!important}
/* things that are always clickable never flash the system hand while the page redraws */
html.mdv-cur a,html.mdv-cur button:not(:disabled),html.mdv-cur [role="button"]:not([aria-disabled="true"]),html.mdv-cur summary,html.mdv-cur label,html.mdv-cur select:not(:disabled){cursor:none!important}

.mdv-cr{position:fixed;left:0;top:0;width:0;height:0;z-index:2147483000;pointer-events:none;opacity:0;transition:opacity .25s ease;contain:layout style}
.mdv-cr.on{opacity:1}
.mdv-cr.off{opacity:0!important}
.mdv-cr i{position:absolute;left:0;top:0;border-radius:50%;display:grid;place-items:center;backface-visibility:hidden}
/* the highlighted ring */
.mdv-cr .mdv-cr-r{width:44px;height:44px;margin:-22px 0 0 -22px;border:1.5px solid rgba(239,233,223,.95);
  background:radial-gradient(circle at 50% 50%,rgba(239,233,223,.20),rgba(239,233,223,.06) 62%,rgba(239,233,223,0) 100%);
  box-shadow:0 0 0 1.5px rgba(10,9,8,.55),0 0 18px rgba(239,233,223,.28),inset 0 0 12px rgba(239,233,223,.16);
  transition:width .45s cubic-bezier(.16,1,.3,1),height .45s cubic-bezier(.16,1,.3,1),margin .45s cubic-bezier(.16,1,.3,1),background .3s ease,border-color .3s ease,box-shadow .3s ease,transform .18s ease}
/* the bright centre */
.mdv-cr .mdv-cr-d{width:9px;height:9px;margin:-4.5px 0 0 -4.5px;background:#efe9df;box-shadow:0 0 0 1.5px rgba(10,9,8,.55),0 0 12px 1px rgba(239,233,223,.7);transition:width .3s ease,height .3s ease,margin .3s ease,opacity .25s ease}
/* over something you can click: the ring opens and warms to brass, the dot shrinks */
.mdv-cr.link .mdv-cr-r{width:70px;height:70px;margin:-35px 0 0 -35px;border-color:#c9a878;background:radial-gradient(circle,rgba(201,168,120,.26),rgba(201,168,120,.07) 65%,rgba(201,168,120,0));box-shadow:0 0 0 1.5px rgba(10,9,8,.5),0 0 22px rgba(201,168,120,.4),inset 0 0 14px rgba(201,168,120,.22)}
.mdv-cr.link .mdv-cr-d{width:5px;height:5px;margin:-2.5px 0 0 -2.5px}
/* over a model or a gateway: a filled disc with a word in it */
.mdv-cr.label .mdv-cr-r{width:98px;height:98px;margin:-49px 0 0 -49px;border-color:transparent;background:rgba(239,233,223,.96);box-shadow:0 8px 24px rgba(0,0,0,.35)}
.mdv-cr.label .mdv-cr-r::after{content:attr(data-label);font:500 9px/1 'Jost',system-ui,sans-serif;letter-spacing:.26em;text-indent:.26em;text-transform:uppercase;color:#0a0908}
.mdv-cr.label .mdv-cr-d{opacity:0}
.mdv-cr.down .mdv-cr-r{transform:scale(.82)}
@media(prefers-reduced-motion:reduce){.mdv-cr i{transition:none!important}}
@media(hover:none),(pointer:coarse){.mdv-cr{display:none}}
