/* GAU: a soft orbit around controls, based on the Sith logo contour.
   Decorative CSS only: no artwork, price, geometry or event changes. */
@property --gdu-button-orbit{syntax:"<angle>";inherits:false;initial-value:0deg}
.gdu-designer{--gdu-button-glow:var(--gdu-accent,#006b82)}
/* Action colours follow the already established pictogram palette. */
.gdu-designer :is(.gau-library-open,.gau-shape-grid button,.gaum-shape-grid button){--gdu-button-glow:#7e57a4}
.gdu-designer :is(.gau-upload,.gaum-upload){--gdu-button-glow:#087c8b}
.gdu-designer :is(.gau-remove,.gaum-remove,#gs-delete){--gdu-button-glow:#b84f61}
:where(.gdu-designer) :is(button,a.button,[role="button"],summary,.gau-upload,.gaum-upload){--gdu-button-halo:color-mix(in srgb,var(--gdu-button-glow) 27%,transparent);--gdu-button-light:color-mix(in srgb,var(--gdu-button-glow) 45%,white);box-shadow:0 1px 3px #173e4714,inset 0 1px 0 #ffffff38;transition:box-shadow .2s ease,border-color .2s ease;touch-action:manipulation}
:where(.gdu-designer) :is(button,a.button,[role="button"],.gau-upload,.gaum-upload):not(:disabled):not([aria-disabled="true"]):not([aria-busy="true"]):not(.loading){position:relative;isolation:isolate}
@supports (mask-composite:exclude) or (-webkit-mask-composite:xor){
:where(.gdu-designer) :is(button,a.button,[role="button"],.gau-upload,.gaum-upload):not(:disabled):not([aria-disabled="true"]):not([aria-busy="true"]):not(.loading)::after{content:"";position:absolute;inset:-2px;border-radius:inherit;padding:2px;pointer-events:none;z-index:2;opacity:0;background:conic-gradient(from var(--gdu-button-orbit),transparent 0deg,color-mix(in srgb,var(--gdu-button-glow) 40%,transparent) 35deg,var(--gdu-button-glow) 70deg,var(--gdu-button-light) 90deg,color-mix(in srgb,var(--gdu-button-glow) 55%,transparent) 120deg,transparent 160deg,color-mix(in srgb,var(--gdu-button-glow) 40%,transparent) 205deg,var(--gdu-button-glow) 245deg,var(--gdu-button-light) 265deg,color-mix(in srgb,var(--gdu-button-glow) 55%,transparent) 295deg,transparent 360deg);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;filter:blur(.6px);transition:opacity .2s ease}
}
@media(hover:hover) and (pointer:fine){
:where(.gdu-designer) :is(button,a.button,[role="button"],summary,.gau-upload,.gaum-upload):not(:disabled):not([aria-disabled="true"]):not([aria-busy="true"]):not(.loading):hover{border-color:var(--gdu-button-glow);box-shadow:0 2px 5px #173e4718,0 0 0 1px color-mix(in srgb,var(--gdu-button-glow) 22%,transparent),0 0 12px var(--gdu-button-halo),0 0 22px color-mix(in srgb,var(--gdu-button-glow) 12%,transparent),inset 0 1px 0 #ffffff50}
:where(.gdu-designer) :is(button,a.button,[role="button"],.gau-upload,.gaum-upload):not(:disabled):not([aria-disabled="true"]):not([aria-busy="true"]):not(.loading):hover::after{opacity:.9;animation:gdu-button-orbit 8s linear infinite}
}
:where(.gdu-designer) :is(button,a.button,[role="button"],summary,.gau-upload,.gaum-upload):not(:disabled):not([aria-disabled="true"]):not([aria-busy="true"]):not(.loading):focus-visible{outline:3px solid var(--gdu-button-glow)!important;outline-offset:3px!important;box-shadow:0 0 0 5px #fff,0 0 18px var(--gdu-button-halo)!important}
:where(.gdu-designer) :is(button,a.button,[role="button"],.gau-upload,.gaum-upload):not(:disabled):not([aria-disabled="true"]):not([aria-busy="true"]):not(.loading):focus-visible::after{opacity:.75;--gdu-button-orbit:35deg}
:where(.gdu-designer) :is(button,a.button,[role="button"],summary,.gau-upload,.gaum-upload):not(:disabled):not([aria-disabled="true"]):not([aria-busy="true"]):not(.loading):active{box-shadow:inset 0 2px 4px #173e4726,0 0 9px var(--gdu-button-halo)}
/* A pending operation never gains the appearance of a ready action. */
.gdu-designer [aria-busy="true"] :is(button,a.button,[role="button"],.gau-upload,.gaum-upload):not(.loading)::after{opacity:0!important;animation:none!important}
.gdu-designer [aria-busy="true"] :is(button,a.button,[role="button"],summary,.gau-upload,.gaum-upload){box-shadow:none!important}
@keyframes gdu-button-orbit{from{--gdu-button-orbit:0deg}to{--gdu-button-orbit:360deg}}
@media(prefers-reduced-motion:reduce){
:where(.gdu-designer) :is(button,a.button,[role="button"],summary,.gau-upload,.gaum-upload){transition:none!important}
:where(.gdu-designer) :is(button,a.button,[role="button"],.gau-upload,.gaum-upload):not(:disabled):not([aria-disabled="true"]):not([aria-busy="true"]):not(.loading)::after{animation:none!important;transition:none!important;--gdu-button-orbit:35deg}
}
@media(forced-colors:active){
:where(.gdu-designer) :is(button,a.button,[role="button"],.gau-upload,.gaum-upload):not(:disabled):not([aria-disabled="true"]):not([aria-busy="true"]):not(.loading)::after{display:none!important}
:where(.gdu-designer) :is(button,a.button,[role="button"],summary,.gau-upload,.gaum-upload){box-shadow:none!important}
}
@media print{
:where(.gdu-designer) :is(button,a.button,[role="button"],.gau-upload,.gaum-upload):not(:disabled):not([aria-disabled="true"]):not([aria-busy="true"]):not(.loading)::after{display:none!important}
:where(.gdu-designer) :is(button,a.button,[role="button"],summary,.gau-upload,.gaum-upload){box-shadow:none!important}
}
