@property --angle-1{syntax:"<angle>";inherits:false;initial-value:-75deg}@property --angle-2{syntax:"<angle>";inherits:false;initial-value:-45deg}@keyframes glass-button-rim-shine{0%{--angle-1:-75deg}to{--angle-1:285deg}}.glass-button-wrap{--global--size:1rem;--anim--hover-time:.4s;--anim--hover-ease:cubic-bezier(.25, 1, .5, 1);z-index:2;pointer-events:none;transition:all var(--anim--hover-time) var(--anim--hover-ease);font-size:var(--global--size);background:0 0;border-radius:999vw;display:inline-block;position:relative}.glass-button-shadow{--shadow-cuttoff-fix:2em;width:calc(100% + var(--shadow-cuttoff-fix));height:calc(100% + var(--shadow-cuttoff-fix));top:calc(0% - var(--shadow-cuttoff-fix) / 2);left:calc(0% - var(--shadow-cuttoff-fix) / 2);-webkit-filter:blur(clamp(2px,.125em,12px));-moz-filter:blur(clamp(2px, .125em, 12px));-ms-filter:blur(clamp(2px, .125em, 12px));pointer-events:none;position:absolute;overflow:visible}.glass-button-shadow:after{content:"";z-index:0;width:calc(100% - var(--shadow-cuttoff-fix) - .25em);height:calc(100% - var(--shadow-cuttoff-fix) - .25em);inset:0;top:calc(var(--shadow-cuttoff-fix) - .5em);left:calc(var(--shadow-cuttoff-fix) - .875em);box-sizing:border-box;transition:all var(--anim--hover-time) var(--anim--hover-ease);opacity:1;background:linear-gradient(#0003,#0000001a);border-radius:999vw;padding:.125em;position:absolute;overflow:visible;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.glass-button{--border-width:clamp(1px, .0625em, 4px);all:unset;cursor:pointer;-webkit-tap-highlight-color:#0000;pointer-events:auto;z-index:3;-webkit-backdrop-filter:blur(clamp(1px,.125em,4px));-moz-backdrop-filter:blur(clamp(1px, .125em, 4px));-ms-backdrop-filter:blur(clamp(1px, .125em, 4px));transition:all var(--anim--hover-time) var(--anim--hover-ease);background:linear-gradient(-75deg,#ffffff0d,#fff3,#ffffff0d);border-radius:999vw;text-decoration:none;display:inline-block;position:relative;box-shadow:inset 0 .125em .125em #0000000d,inset 0 -.125em .125em #ffffff80,0 .25em .125em -.125em #0003,inset 0 0 .1em .25em #fff3,0 0 #fff}.glass-button:hover{-webkit-backdrop-filter:blur(.01em);-moz-backdrop-filter:blur(.01em);-ms-backdrop-filter:blur(.01em);transform:scale(.975);box-shadow:inset 0 .125em .125em #0000000d,inset 0 -.125em .125em #ffffff80,0 .15em .05em -.1em #00000040,inset 0 0 .05em .1em #ffffff80,0 0 #fff}.glass-button>span{-webkit-user-select:none;user-select:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:all var(--anim--hover-time) var(--anim--hover-ease);display:block;position:relative}.glass-button>span:after{content:"";z-index:1;width:calc(100% - var(--border-width));height:calc(100% - var(--border-width));top:calc(0% + var(--border-width) / 2);left:calc(0% + var(--border-width) / 2);box-sizing:border-box;background:linear-gradient(var(--angle-2), #fff0 0%, #ffffff80 40% 50%, #fff0 55%);z-index:3;mix-blend-mode:screen;pointer-events:none;transition:background-position calc(var(--anim--hover-time) * 1.25) var(--anim--hover-ease), --angle-2 calc(var(--anim--hover-time) * 1.25) var(--anim--hover-ease);background-position:0%;background-repeat:no-repeat;background-size:200% 200%;border-radius:999vw;display:block;position:absolute;overflow:clip}.glass-button:hover>span:after{background-position:25%}.glass-button:active>span:after{--angle-2:-15deg;background-position:50% 15%}@media (hover:none) and (pointer:coarse){.glass-button>span:after,.glass-button:active>span:after{--angle-2:-45deg}}.glass-button:after{content:"";z-index:1;width:calc(100% + var(--border-width));height:calc(100% + var(--border-width));inset:0;top:calc(0% - var(--border-width) / 2);left:calc(0% - var(--border-width) / 2);padding:var(--border-width);box-sizing:border-box;background:conic-gradient(from var(--angle-1) at 50% 50%, transparent 0% 40%, #fff3 44%, #fff 50%, #fff3 56%, transparent 60% 100%), linear-gradient(180deg, #ffffff59, #ffffff59);transition:all var(--anim--hover-time) var(--anim--hover-ease), --angle-1 .5s ease;box-shadow:inset 0 0 0 calc(var(--border-width) / 2) #ffffff80;border-radius:999vw;position:absolute;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.glass-button:not(:hover):after{filter:drop-shadow(0 0 .2em #ffffffd9);animation:3s linear infinite glass-button-rim-shine}.glass-button:hover:after{--angle-1:-125deg}.glass-button:active:after{--angle-1:-75deg}@media (hover:none) and (pointer:coarse){.glass-button:after,.glass-button:hover:after,.glass-button:active:after{--angle-1:-75deg}}@media (prefers-reduced-motion:reduce){.glass-button:not(:hover):after{animation:none}}.glass-button-wrap:has(.glass-button:hover) .glass-button-shadow{-webkit-filter:blur(clamp(2px,.0625em,6px));-moz-filter:blur(clamp(2px, .0625em, 6px));-ms-filter:blur(clamp(2px, .0625em, 6px));transition:filter var(--anim--hover-time) var(--anim--hover-ease)}.glass-button-wrap:has(.glass-button:hover) .glass-button-shadow:after{top:calc(var(--shadow-cuttoff-fix) - .875em);opacity:1}.glass-button-wrap:has(.glass-button:active){transform:rotateX(25deg)}.glass-button-wrap:has(.glass-button:active) .glass-button{box-shadow:inset 0 .125em .125em #0000000d,inset 0 -.125em .125em #ffffff80,0 .125em .125em -.125em #0003,inset 0 0 .1em .25em #fff3,0 .225em .05em #0000000d,0 .25em #ffffffbf,inset 0 .25em .05em #00000026}.glass-button-wrap:has(.glass-button:active) .glass-button-shadow{-webkit-filter:blur(clamp(2px,.125em,12px));-moz-filter:blur(clamp(2px, .125em, 12px));-ms-filter:blur(clamp(2px, .125em, 12px))}
