@keyframes rotation {0% {transform: rotate(0deg);}
	to {transform: rotate(1turn);}}
.b-ext .c-button {--btnHeight: calc(var(--font-size) * 4);--btnBgColor: none;--btnBorderColor: transparent;--btnColor: black;min-height: var(--btnHeight);background: var(--btnBgColor);border: 2px solid var(--btnBorderColor);border-radius: calc(var(--font-size) * .8);padding: 0;color: var(--btnColor);display: inline-flex;align-items: center;justify-content: center;text-decoration: none;font-size: calc(var(--font-size) * 1.4);font-weight: 600;}
.b-ext .c-button:not([disabled]) {cursor: pointer;}
@media (hover:hover)and (pointer:fine) {.b-ext .c-button:hover:not([disabled]) {color: var(--btnColor);}}
.b-ext .c-button:disabled {--btnColor: var(--neutral-500);--btnBorderColor: var(--neutral-200);--btnBgColor: var(--neutral-200);cursor: default;}
.b-ext .c-button .c-icon {fill: currentColor;}
.b-ext .c-button--primary {--btnColor: var(--button-color-primary-default-text);--btnBorderColor: var(--button-color-primary-default-border);--btnBgColor: var(--button-color-primary-default-background);--btnBgColorLoading: var(--green-800);padding: 0 calc(var(--font-size) * 1.6);}
@media (hover:hover)and (pointer:fine) {.b-ext .c-button--primary:hover:not([disabled]) {background-color: var(--button-color-primary-hover-background);}}
.b-ext .c-button--primary.c-button--error-500 {--btnBgColor: var(--error-500);}
@media (hover:hover)and (pointer:fine) {.b-ext .c-button--primary.c-button--error-500:hover:not([disabled]) {background-color: var(--error-500);}}
.b-ext .c-button--primary:disabled {--btnColor: var(--button-color-primary-disable-text);--btnBorderColor: var(--button-color-primary-disable-border);--btnBgColor: var(--button-color-primary-disable-background);}
.b-ext .c-button--secondary {--btnColor: var(--button-color-secondary-default-text);--btnBorderColor: var(--button-color-secondary-default-border);--btnBgColor: var(--button-color-secondary-default-background);padding: 0 calc(var(--font-size) * 1.6);}
@media (hover:hover)and (pointer:fine) {.b-ext .c-button--secondary:hover:not([disabled]) {--btnColor: var(--button-color-secondary-hover-text);--btnBorderColor: var(--button-color-secondary-hover-border);--btnBgColor: var(--button-color-secondary-hover-background);}}
.b-ext .c-button--secondary:disabled {--btnColor: var(--button-color-secondary-disable-text);--btnBorderColor: var(--button-color-secondary-disable-border);--btnBgColor: var(--button-color-secondary-disable-background);}
.b-ext .c-button--tertiary {--btnColor: var(--button-color-tertiary-default-text);--btnBorderColor: var(--button-color-tertiary-default-border);--btnBgColor: var(--button-color-tertiary-default-background);padding: 0 calc(var(--font-size) * 1.6);}
@media (hover:hover)and (pointer:fine) {.b-ext .c-button--tertiary:hover:not([disabled]) {--btnColor: var(--button-color-tertiary-hover-text);--btnBorderColor: var(--button-color-tertiary-hover-border);--btnBgColor: var(--button-color-tertiary-hover-background);}}
.b-ext .c-button--tertiary:disabled {--btnColor: var(--button-color-tertiary-disable-text);--btnBorderColor: var(--button-color-tertiary-disable-border);--btnBgColor: var(--button-color-tertiary-disable-background);}
.b-ext .c-button--quaternary {--btnColor: var(--button-color-quaternary-default-text);--btnBorderColor: var(--button-color-quaternary-default-border);--btnBgColor: var(--button-color-quaternary-default-background);padding: 0 calc(var(--font-size) * 1.6);}
@media (hover:hover)and (pointer:fine) {.b-ext .c-button--quaternary:hover:not([disabled]) {--btnColor: var(--button-color-quaternary-hover-text);--btnBorderColor: var(--button-color-quaternary-hover-border);--btnBgColor: var(--button-color-quaternary-hover-background);}}
.b-ext .c-button--quaternary:disabled {--btnColor: var(--button-color-quaternary-disable-text);--btnBorderColor: var(--button-color-quaternary-disable-border);--btnBgColor: var(--button-color-quaternary-disable-background);}
.b-ext .c-button--ghost {--btnColor: var(--button-color-ghost-default-text);--btnBorderColor: var(--button-color-ghost-default-border);--btnBgColor: var(--button-color-ghost-default-background);padding: 0 calc(var(--font-size) * 1.6);}
@media (hover:hover)and (pointer:fine) {.b-ext .c-button--ghost:hover:not([disabled]) {--btnColor: var(--button-color-ghost-hover-text);--btnBorderColor: var(--button-color-ghost-hover-border);--btnBgColor: var(--button-color-ghost-hover-background);}}
.b-ext .c-button--ghost:disabled {--btnColor: var(--button-color-ghost-disable-text);--btnBorderColor: var(--button-color-ghost-disable-border);--btnBgColor: var(--button-color-ghost-disable-background);}
.b-ext .c-button--link {padding: 0 !important;text-decoration: underline;font-weight: 400;min-height: 0;color: var(--color-text-accent-default);}
@media (hover:hover)and (pointer:fine) {.b-ext .c-button--link:hover:not([disabled]) {text-decoration: none;color: var(--color-text-accent-default);}}
.b-ext .c-button--link-noUnderline {padding: 0;font-weight: 400;text-decoration: none;min-height: 0;}
@media (hover:hover)and (pointer:fine) {.b-ext .c-button--link-noUnderline:hover:not([disabled]) {text-decoration: underline;}}
.b-ext .c-button--backTop {border-radius: calc(var(--font-size) * 100) !important;}
.b-ext .c-button.c-button--xs {--btnHeight: calc(var(--font-size) * 2.4);font-size: calc(var(--font-size) * 1.2);border-radius: calc(var(--font-size) * .6);padding: 0 calc(var(--font-size) * .8);--iconSize: calc(var(--font-size) * 1.6);border: 1px solid var(--btnBorderColor);}
.b-ext .c-button--sm {--btnHeight: calc(var(--font-size) * 3.2);padding: 0 calc(var(--font-size) * 1.2);--iconSize: calc(var(--font-size) * 2);}
.b-ext .c-button--md {--btnHeight: calc(var(--font-size) * 4);--iconSize: calc(var(--font-size) * 2.4);}
.b-ext .c-button--lg {--btnHeight: calc(var(--font-size) * 4.8);padding: 0 calc(var(--font-size) * 2);--iconSize: calc(var(--font-size) * 2.8);}
.b-ext .c-button--full-w {width: 100%;justify-content: center;}
.b-ext .c-button--icon-left {padding-left: calc(var(--font-size) * 1.2);}
.b-ext .c-button--icon-left:before {content: "";margin-right: calc(var(--font-size) * .6);display: block;flex-shrink: 0;}
.b-ext .c-button--icon-left.c-button--xs {padding-left: calc(var(--font-size) * .6);}
.b-ext .c-button--icon-left.c-button--xs:before {margin-right: calc(var(--font-size) * .6);}
.b-ext .c-button--icon-left.c-button--sm {padding-left: calc(var(--font-size) * .8);}
.b-ext .c-button--icon-left.c-button--sm:before {margin-right: calc(var(--font-size) * .6);}
.b-ext .c-button--icon-left.c-button--lg {padding-left: calc(var(--font-size) * 1.6);}
.b-ext .c-button--icon-left.c-button--lg:before {margin-right: calc(var(--font-size) * .8);}
.b-ext .c-button--icon-right {padding-right: calc(var(--font-size) * 1.2);}
.b-ext .c-button--icon-right:after {content: "";margin-left: calc(var(--font-size) * .6);display: block;flex-shrink: 0;}
.b-ext .c-button--icon-right.c-button--xs {padding-right: calc(var(--font-size) * .6);}
.b-ext .c-button--icon-right.c-button--xs:after {margin-left: calc(var(--font-size) * .6);}
.b-ext .c-button--icon-right.c-button--sm {padding-right: calc(var(--font-size) * .8);}
.b-ext .c-button--icon-right.c-button--sm:after {margin-left: calc(var(--font-size) * .6);}
.b-ext .c-button--icon-right.c-button--lg {padding-right: calc(var(--font-size) * 1.6);}
.b-ext .c-button--icon-right.c-button--lg:after {margin-left: calc(var(--font-size) * .8);}
.b-ext .c-button[class*=c-icon-]:not([class*=c-button--icon-]) {justify-content: flex-start;max-height: var(--btnHeight);max-width: var(--btnHeight);overflow: hidden;padding-left: calc(( var(--btnHeight) - var(--iconSize) ) / 2 - calc(var(--font-size) * .2));padding-right: calc(( var(--btnHeight) - var(--iconSize) ) / 2 - calc(var(--font-size) * .2));white-space: nowrap;}
.b-ext .c-button[class*=c-icon-]:not([class*=c-button--icon-]):before {content: "";margin-left: 0;margin-right: calc(( var(--btnHeight) - var(--iconSize) ) / 2);flex-shrink: 0;transform: translateZ(0);}
.b-ext .c-icon-loading:after, .b-ext .c-icon-loading:before {animation: spin .6s linear infinite;}
.b-ext .c-button.isLoading {position: relative;overflow: hidden;}
.b-ext .c-button.isLoading span {position: relative;z-index: var(--zindex-above);}
.b-ext .c-button.isLoading:before {content: "";transform: translateX(-100%);background-color: var(--btnBgColorLoading);width: calc(100% + 2px);height: calc(100% + 2px);z-index: 0;position: absolute;top: -1px;left: -1px;animation: loadingButton 4s ease-in-out;animation-fill-mode: forwards;}
@keyframes spin {0% {transform: rotate(0deg);}
	to {transform: rotate(1turn);}}
@keyframes loadingButton {0% {transform: translateX(-100%);}
	70% {transform: translateX(0);opacity: 1;}
	90% {transform: translateX(0);opacity: 1;}
	to {transform: translateX(0);opacity: 0;}}