.dot-border-button-module__TgkgTW__wrapper{--dot-size:7px;--line-weight:1px;--animation-speed:.32s;--dot-border-color:var(--ink);--dot-color:var(--dot-border-color);--line-color:color-mix(in srgb, var(--dot-border-color) 78%, transparent);--grid-color:color-mix(in srgb, var(--dot-border-color) 20%, transparent);isolation:isolate;border-radius:999px;width:100%;margin-top:4px;padding:4px;display:block;position:relative}.dot-border-button-module__TgkgTW__wrapper:after{content:"";z-index:-1;border-radius:inherit;opacity:0;background-image:repeating-linear-gradient(45deg, var(--grid-color) 0 1px, transparent 2px 5px);pointer-events:none;position:absolute;inset:0}.dot-border-button-module__TgkgTW__wrapper:not([data-disabled]):where(:hover,:focus-within):after{animation:dot-border-button-module__TgkgTW__reveal-grid calc(var(--animation-speed) * 4) ease-in-out forwards}.dot-border-button-module__TgkgTW__button{z-index:1;margin-top:0;position:relative}.dot-border-button-module__TgkgTW__content{justify-content:center;align-items:center;gap:9px;display:inline-flex}.dot-border-button-module__TgkgTW__content>svg{flex:none}.dot-border-button-module__TgkgTW__button:hover{letter-spacing:.035em;transform:translateY(-1px)scale(1.015)}.dot-border-button-module__TgkgTW__button:active{letter-spacing:.015em;transform:translateY(1px)scale(.99)}.dot-border-button-module__TgkgTW__button:disabled{cursor:wait;opacity:.72;transform:none}.dot-border-button-module__TgkgTW__spinner{border:1.5px solid color-mix(in srgb, currentColor 36%, transparent);border-top-color:currentColor;border-radius:50%;flex:none;width:15px;height:15px;animation:.7s linear infinite dot-border-button-module__TgkgTW__spin}.dot-border-button-module__TgkgTW__dot,.dot-border-button-module__TgkgTW__line{z-index:2;opacity:0;pointer-events:none;position:absolute}.dot-border-button-module__TgkgTW__dot{width:var(--dot-size);aspect-ratio:1;background:var(--dot-color);border-radius:2px}.dot-border-button-module__TgkgTW__dotTopLeft{top:50%;left:20%}.dot-border-button-module__TgkgTW__dotTopRight{top:50%;right:20%}.dot-border-button-module__TgkgTW__dotBottomRight{bottom:50%;right:20%}.dot-border-button-module__TgkgTW__dotBottomLeft{bottom:50%;left:20%}.dot-border-button-module__TgkgTW__wrapper:not([data-disabled]):where(:hover,:focus-within) .dot-border-button-module__TgkgTW__dotTopLeft{animation:dot-border-button-module__TgkgTW__move-top-left var(--animation-speed) ease-in-out forwards}.dot-border-button-module__TgkgTW__wrapper:not([data-disabled]):where(:hover,:focus-within) .dot-border-button-module__TgkgTW__dotTopRight{animation:dot-border-button-module__TgkgTW__move-top-right var(--animation-speed) ease-in-out calc(var(--animation-speed) * .6) forwards}.dot-border-button-module__TgkgTW__wrapper:not([data-disabled]):where(:hover,:focus-within) .dot-border-button-module__TgkgTW__dotBottomRight{animation:dot-border-button-module__TgkgTW__move-bottom-right var(--animation-speed) ease-in-out calc(var(--animation-speed) * 1.2) forwards}.dot-border-button-module__TgkgTW__wrapper:not([data-disabled]):where(:hover,:focus-within) .dot-border-button-module__TgkgTW__dotBottomLeft{animation:dot-border-button-module__TgkgTW__move-bottom-left var(--animation-speed) ease-in-out calc(var(--animation-speed) * 1.8) forwards}.dot-border-button-module__TgkgTW__lineTop,.dot-border-button-module__TgkgTW__lineBottom{width:100%;height:var(--line-weight);background-image:repeating-linear-gradient(90deg, transparent 0 calc(var(--line-weight) * 2), var(--line-color) calc(var(--line-weight) * 2) calc(var(--line-weight) * 4))}.dot-border-button-module__TgkgTW__lineLeft,.dot-border-button-module__TgkgTW__lineRight{width:var(--line-weight);background-image:repeating-linear-gradient(0deg, transparent 0 calc(var(--line-weight) * 2), var(--line-color) calc(var(--line-weight) * 2) calc(var(--line-weight) * 4));height:100%}.dot-border-button-module__TgkgTW__lineTop{transform-origin:0 0;top:0;left:0;transform:rotate(5deg)scaleX(0)}.dot-border-button-module__TgkgTW__lineRight{transform-origin:100% 0;top:0;right:0;transform:rotate(5deg)scaleY(0)}.dot-border-button-module__TgkgTW__lineBottom{transform-origin:100% 100%;bottom:0;right:0;transform:rotate(5deg)scaleX(0)}.dot-border-button-module__TgkgTW__lineLeft{transform-origin:0 100%;bottom:0;left:0;transform:scaleY(0)}.dot-border-button-module__TgkgTW__wrapper:not([data-disabled]):where(:hover,:focus-within) .dot-border-button-module__TgkgTW__lineTop{animation:dot-border-button-module__TgkgTW__draw-horizontal var(--animation-speed) ease-in-out calc(var(--animation-speed) * .8) forwards}.dot-border-button-module__TgkgTW__wrapper:not([data-disabled]):where(:hover,:focus-within) .dot-border-button-module__TgkgTW__lineRight{animation:dot-border-button-module__TgkgTW__draw-vertical var(--animation-speed) ease-in-out calc(var(--animation-speed) * 1.4) forwards}.dot-border-button-module__TgkgTW__wrapper:not([data-disabled]):where(:hover,:focus-within) .dot-border-button-module__TgkgTW__lineBottom{animation:dot-border-button-module__TgkgTW__draw-horizontal var(--animation-speed) ease-in-out calc(var(--animation-speed) * 2) forwards}.dot-border-button-module__TgkgTW__wrapper:not([data-disabled]):where(:hover,:focus-within) .dot-border-button-module__TgkgTW__lineLeft{animation:dot-border-button-module__TgkgTW__draw-vertical var(--animation-speed) ease-in-out calc(var(--animation-speed) * 2.4) forwards}@keyframes dot-border-button-module__TgkgTW__reveal-grid{0%,80%{opacity:0}to{opacity:1}}@keyframes dot-border-button-module__TgkgTW__move-top-left{90%{opacity:.6}to{top:calc(var(--dot-size) * -.5);left:calc(var(--dot-size) * -.5);opacity:1}}@keyframes dot-border-button-module__TgkgTW__move-top-right{80%{opacity:.6}to{top:calc(var(--dot-size) * -.5);right:calc(var(--dot-size) * -.5);opacity:1}}@keyframes dot-border-button-module__TgkgTW__move-bottom-right{80%{opacity:.6}to{right:calc(var(--dot-size) * -.5);bottom:calc(var(--dot-size) * -.5);opacity:1}}@keyframes dot-border-button-module__TgkgTW__move-bottom-left{80%{opacity:.6}to{bottom:calc(var(--dot-size) * -.5);left:calc(var(--dot-size) * -.5);opacity:1}}@keyframes dot-border-button-module__TgkgTW__draw-horizontal{to{opacity:1;transform:scaleX(1)}}@keyframes dot-border-button-module__TgkgTW__draw-vertical{to{opacity:1;transform:scaleY(1)}}@keyframes dot-border-button-module__TgkgTW__spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.dot-border-button-module__TgkgTW__button:hover,.dot-border-button-module__TgkgTW__button:active{letter-spacing:.01em;transform:none}.dot-border-button-module__TgkgTW__spinner{animation:none}.dot-border-button-module__TgkgTW__wrapper:not([data-disabled]):where(:hover,:focus-within):after{opacity:1}.dot-border-button-module__TgkgTW__wrapper:not([data-disabled]):where(:hover,:focus-within) .dot-border-button-module__TgkgTW__lineTop,.dot-border-button-module__TgkgTW__wrapper:not([data-disabled]):where(:hover,:focus-within) .dot-border-button-module__TgkgTW__lineBottom{opacity:1;transform:scaleX(1)}.dot-border-button-module__TgkgTW__wrapper:not([data-disabled]):where(:hover,:focus-within) .dot-border-button-module__TgkgTW__lineLeft,.dot-border-button-module__TgkgTW__wrapper:not([data-disabled]):where(:hover,:focus-within) .dot-border-button-module__TgkgTW__lineRight{opacity:1;transform:scaleY(1)}.dot-border-button-module__TgkgTW__wrapper:not([data-disabled]):where(:hover,:focus-within) .dot-border-button-module__TgkgTW__dotTopLeft{top:calc(var(--dot-size) * -.5);left:calc(var(--dot-size) * -.5);opacity:1}.dot-border-button-module__TgkgTW__wrapper:not([data-disabled]):where(:hover,:focus-within) .dot-border-button-module__TgkgTW__dotTopRight{top:calc(var(--dot-size) * -.5);right:calc(var(--dot-size) * -.5);opacity:1}.dot-border-button-module__TgkgTW__wrapper:not([data-disabled]):where(:hover,:focus-within) .dot-border-button-module__TgkgTW__dotBottomRight{right:calc(var(--dot-size) * -.5);bottom:calc(var(--dot-size) * -.5);opacity:1}.dot-border-button-module__TgkgTW__wrapper:not([data-disabled]):where(:hover,:focus-within) .dot-border-button-module__TgkgTW__dotBottomLeft{bottom:calc(var(--dot-size) * -.5);left:calc(var(--dot-size) * -.5);opacity:1}}
