/**
 * Auto-generated file. Do not edit directly.
 */
/* stylelint-disable value-keyword-case */
/* stylelint-enable value-keyword-case */
:host {
  display: inline-block;
  max-width: 100%;
  vertical-align: middle;
  /* stylelint-disable property-no-vendor-prefix */
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
  /* stylelint-enable property-no-vendor-prefix */
}

:host([hidden]) {
  display: none;
}

:host([data-button-group=middle]),
:host([data-button-group=last]) {
  margin-left: -1px;
}

.cat-button {
  position: relative;
  font: inherit;
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  border-radius: var(--cat-border-radius-m, 0.25rem);
  text-decoration: none;
  width: 100%;
  box-sizing: border-box;
  cursor: pointer;
  transition: color 125ms linear, border-color 125ms linear, background-color 125ms linear, box-shadow 125ms linear;
}
.cat-button:focus-visible {
  outline: 2px solid rgb(var(--cat-border-color-focus, 0, 113, 255));
  outline-offset: 1px;
}
.cat-button > * {
  pointer-events: none;
}

.cat-button-content {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.cat-button-empty .cat-button-content {
  display: none;
}

.cat-button-content-inner {
  word-wrap: break-word;
  word-break: break-word;
}
.cat-button-ellipsed .cat-button-content-inner {
  /* stylelint-disable value-no-vendor-prefix, property-no-vendor-prefix */
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  /* stylelint-enable value-no-vendor-prefix, property-no-vendor-prefix */
}

.cat-button-disabled {
  cursor: not-allowed;
}

.cat-button-round {
  border-radius: 10rem;
}

.cat-button-loading {
  cursor: default;
}
.cat-button-loading cat-spinner {
  position: absolute;
}
.cat-button-loading > *:not(cat-spinner) {
  visibility: hidden;
}

.cat-button-group-first {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.cat-button-group-middle {
  border-radius: 0;
}
.cat-button-group-last {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.cat-button-group:hover {
  z-index: 1;
}
.cat-button-group:focus-visible {
  z-index: 2;
}

.cat-button-filled {
  background-color: rgb(var(--bg));
  color: rgb(var(--fill));
  font-weight: var(--cat-font-weight-button, 600);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: greyscale;
}
.cat-button-filled.cat-button-disabled {
  --bg: 242, 244, 247;
  --fill: var(--cat-font-color-muted, 81, 92, 108);
}

.cat-button-outlined {
  background-color: rgb(var(--outlined-bg));
  box-shadow: inset 0 0 0 1px color-mix(in srgb, rgb(var(--base)) 20%, rgb(var(--outlined-bg)));
  color: rgb(var(--text));
}
.cat-button-outlined.cat-button-disabled {
  --base: var(--cat-font-color-muted, 81, 92, 108);
  --text: var(--cat-font-color-muted, 81, 92, 108);
}
.cat-button-outlined:hover:not(.cat-button-disabled):not(.cat-button-loading) {
  background-color: color-mix(in srgb, rgb(var(--base)) 10%, rgb(var(--outlined-bg)));
}
.cat-button-outlined.cat-button-active:not(.cat-button-disabled):not(.cat-button-loading) {
  background-color: color-mix(in srgb, rgb(var(--base)) 10%, rgb(var(--outlined-bg)));
}
.cat-button-outlined:active:not(.cat-button-disabled):not(.cat-button-loading) {
  background-color: color-mix(in srgb, rgb(var(--base)) 10%, rgb(var(--outlined-bg)));
}

.cat-button-text {
  background-color: transparent;
  color: rgb(var(--text));
}
.cat-button-text.cat-button-disabled {
  --text: var(--cat-font-color-muted, 81, 92, 108);
}
.cat-button-text:hover:not(.cat-button-disabled):not(.cat-button-loading) {
  background-color: rgba(var(--base), 0.1);
}
.cat-button-text.cat-button-active:not(.cat-button-disabled):not(.cat-button-loading) {
  background-color: rgba(var(--base), 0.1);
}

.cat-button-link {
  background-color: transparent;
  color: rgb(var(--text));
  text-decoration: var(--cat-link-button-decoration, none);
  text-underline-offset: 2px;
  text-decoration-thickness: 1px;
}
.cat-button-link.cat-button-disabled {
  --text: var(--cat-font-color-muted, 81, 92, 108);
}
.cat-button-link:hover:not(.cat-button-disabled):not(.cat-button-loading) {
  text-decoration: var(--cat-link-button-decoration-hover, underline);
}
.cat-button-link.cat-button-active:not(.cat-button-disabled):not(.cat-button-loading) {
  text-decoration: var(--cat-link-button-decoration-hover, underline);
}

.cat-button-primary {
  --bg: var(--cat-primary-bg, 0, 129, 148);
  --fill: var(--cat-primary-fill, 255, 255, 255);
  --text: var(--cat-primary-text, 0, 129, 148);
  --outlined-bg: var(--cat-primary-bg-outlined, 255, 255, 255);
  --base: var(--cat-primary-text, 0, 129, 148);
}
.cat-button-primary:hover:not(.cat-button-disabled):not(.cat-button-loading) {
  --bg: var(--cat-primary-bg-hover, 1, 115, 132);
  --fill: var(--cat-primary-fill-hover, 255, 255, 255);
  --text: var(--cat-primary-text-hover, 1, 115, 132);
}
.cat-button-primary.cat-button-active:not(.cat-button-disabled):not(.cat-button-loading), .cat-button-primary:active:not(.cat-button-disabled):not(.cat-button-loading) {
  --bg: var(--cat-primary-bg-active, 2, 99, 113);
  --fill: var(--cat-primary-fill-active, 255, 255, 255);
  --text: var(--cat-primary-text-active, 2, 99, 113);
}

.cat-button-secondary {
  --bg: var(--cat-secondary-bg, 105, 118, 135);
  --fill: var(--cat-secondary-fill, 255, 255, 255);
  --text: var(--cat-secondary-text, 0, 0, 0);
  --outlined-bg: var(--cat-secondary-bg-outlined, 255, 255, 255);
  --base: var(--cat-secondary-bg, 105, 118, 135);
}
.cat-button-secondary:hover:not(.cat-button-disabled):not(.cat-button-loading) {
  --bg: var(--cat-secondary-bg-hover, 105, 118, 135);
  --fill: var(--cat-secondary-fill-hover, 255, 255, 255);
  --text: var(--cat-secondary-text-hover, 0, 0, 0);
}
.cat-button-secondary.cat-button-active:not(.cat-button-disabled):not(.cat-button-loading), .cat-button-secondary:active:not(.cat-button-disabled):not(.cat-button-loading) {
  --bg: var(--cat-secondary-bg-active, 105, 118, 135);
  --fill: var(--cat-secondary-fill-active, 255, 255, 255);
  --text: var(--cat-secondary-text-active, 0, 0, 0);
}

.cat-button-info {
  --bg: var(--cat-info-bg, 0, 115, 230);
  --fill: var(--cat-info-fill, 255, 255, 255);
  --text: var(--cat-info-text, 0, 115, 230);
  --outlined-bg: var(--cat-info-bg-outlined, 255, 255, 255);
  --base: var(--cat-info-text, 0, 115, 230);
}
.cat-button-info:hover:not(.cat-button-disabled):not(.cat-button-loading) {
  --bg: var(--cat-info-bg-hover, 0, 107, 227);
  --fill: var(--cat-info-fill-hover, 255, 255, 255);
  --text: var(--cat-info-text-hover, 0, 107, 227);
}
.cat-button-info.cat-button-active:not(.cat-button-disabled):not(.cat-button-loading), .cat-button-info:active:not(.cat-button-disabled):not(.cat-button-loading) {
  --bg: var(--cat-info-bg-active, 0, 96, 223);
  --fill: var(--cat-info-fill-active, 255, 255, 255);
  --text: var(--cat-info-text-active, 0, 96, 223);
}

.cat-button-success {
  --bg: var(--cat-success-bg, 0, 132, 88);
  --fill: var(--cat-success-fill, 255, 255, 255);
  --text: var(--cat-success-text, 0, 132, 88);
  --outlined-bg: var(--cat-success-bg-outlined, 255, 255, 255);
  --base: var(--cat-success-text, 0, 132, 88);
}
.cat-button-success:hover:not(.cat-button-disabled):not(.cat-button-loading) {
  --bg: var(--cat-success-bg-hover, 0, 117, 78);
  --fill: var(--cat-success-fill-hover, 255, 255, 255);
  --text: var(--cat-success-text-hover, 0, 117, 78);
}
.cat-button-success.cat-button-active:not(.cat-button-disabled):not(.cat-button-loading), .cat-button-success:active:not(.cat-button-disabled):not(.cat-button-loading) {
  --bg: var(--cat-success-bg-active, 0, 105, 70);
  --fill: var(--cat-success-fill-active, 255, 255, 255);
  --text: var(--cat-success-text-active, 0, 105, 70);
}

.cat-button-warning {
  --bg: var(--cat-warning-bg, 255, 206, 128);
  --fill: var(--cat-warning-fill, 0, 0, 0);
  --text: var(--cat-warning-text, 159, 97, 0);
  --outlined-bg: var(--cat-warning-bg-outlined, 255, 255, 255);
  --base: var(--cat-warning-text, 159, 97, 0);
}
.cat-button-warning:hover:not(.cat-button-disabled):not(.cat-button-loading) {
  --bg: var(--cat-warning-bg-hover, 255, 214, 148);
  --fill: var(--cat-warning-fill-hover, 0, 0, 0);
  --text: var(--cat-warning-text-hover, 159, 97, 0);
}
.cat-button-warning.cat-button-active:not(.cat-button-disabled):not(.cat-button-loading), .cat-button-warning:active:not(.cat-button-disabled):not(.cat-button-loading) {
  --bg: var(--cat-warning-bg-active, 255, 222, 168);
  --fill: var(--cat-warning-fill-active, 0, 0, 0);
  --text: var(--cat-warning-text-active, 159, 97, 0);
}

.cat-button-danger {
  --bg: var(--cat-danger-bg, 217, 52, 13);
  --fill: var(--cat-danger-fill, 255, 255, 255);
  --text: var(--cat-danger-text, 217, 52, 13);
  --outlined-bg: var(--cat-danger-bg-outlined, 255, 255, 255);
  --base: var(--cat-danger-text, 217, 52, 13);
}
.cat-button-danger:hover:not(.cat-button-disabled):not(.cat-button-loading) {
  --bg: var(--cat-danger-bg-hover, 194, 46, 11);
  --fill: var(--cat-danger-fill-hover, 255, 255, 255);
  --text: var(--cat-danger-text-hover, 194, 46, 11);
}
.cat-button-danger.cat-button-active:not(.cat-button-disabled):not(.cat-button-loading), .cat-button-danger:active:not(.cat-button-disabled):not(.cat-button-loading) {
  --bg: var(--cat-danger-bg-active, 174, 42, 10);
  --fill: var(--cat-danger-fill-active, 255, 255, 255);
  --text: var(--cat-danger-text-active, 174, 42, 10);
}

:host(.cat-button-pull:not([size])) {
  margin: -0.625rem -0.75rem;
}

:host(.cat-button-pull-h:not([size])) {
  margin-left: -0.75rem;
  margin-right: -0.75rem;
}

:host(.cat-button-pull-v:not([size])) {
  margin-top: -0.625rem;
  margin-bottom: -0.625rem;
}

:host(.cat-button-pull-t:not([size])) {
  margin-top: -0.625rem;
}

:host(.cat-button-pull-l:not([size])) {
  margin-left: -0.75rem;
}

:host(.cat-button-pull-b:not([size])) {
  margin-bottom: -0.625rem;
}

:host(.cat-button-pull-r:not([size])) {
  margin-right: -0.75rem;
}

.cat-button-xs {
  min-width: 1.5rem;
  padding: 0.1875rem 0.25rem;
  font-size: 0.875rem;
  line-height: 1.125rem;
  gap: 0.25rem;
}
.cat-button-xs.cat-button-icon {
  width: 1.5rem;
  height: 1.5rem;
  padding: 0;
}

:host(.cat-button-pull[size=xs]) {
  margin: -0.1875rem -0.25rem;
}

:host(.cat-button-pull-h[size=xs]) {
  margin-left: -0.25rem;
  margin-right: -0.25rem;
}

:host(.cat-button-pull-v[size=xs]) {
  margin-top: -0.1875rem;
  margin-bottom: -0.1875rem;
}

:host(.cat-button-pull-t[size=xs]) {
  margin-top: -0.1875rem;
}

:host(.cat-button-pull-l[size=xs]) {
  margin-left: -0.25rem;
}

:host(.cat-button-pull-b[size=xs]) {
  margin-bottom: -0.1875rem;
}

:host(.cat-button-pull-r[size=xs]) {
  margin-right: -0.25rem;
}

.cat-button-s {
  min-width: 2rem;
  padding: 0.375rem 0.5rem;
  font-size: 0.9375rem;
  line-height: 1.25rem;
  gap: 0.25rem;
}
.cat-button-s cat-icon {
  margin-top: -0.125rem;
  margin-bottom: -0.125rem;
}
.cat-button-s.cat-button-icon {
  width: 2rem;
  height: 2rem;
  padding: 0;
}

:host(.cat-button-pull[size=s]) {
  margin: -0.375rem -0.5rem;
}

:host(.cat-button-pull-h[size=s]) {
  margin-left: -0.5rem;
  margin-right: -0.5rem;
}

:host(.cat-button-pull-v[size=s]) {
  margin-top: -0.375rem;
  margin-bottom: -0.375rem;
}

:host(.cat-button-pull-t[size=s]) {
  margin-top: -0.375rem;
}

:host(.cat-button-pull-l[size=s]) {
  margin-left: -0.5rem;
}

:host(.cat-button-pull-b[size=s]) {
  margin-bottom: -0.375rem;
}

:host(.cat-button-pull-r[size=s]) {
  margin-right: -0.5rem;
}

.cat-button-m {
  min-width: 2.5rem;
  padding: 0.625rem 0.75rem;
  font-size: 0.9375rem;
  line-height: 1.25rem;
  gap: 0.25rem;
}
.cat-button-m cat-icon {
  margin-top: -0.125rem;
  margin-bottom: -0.125rem;
}
.cat-button-m.cat-button-icon {
  width: 2.5rem;
  height: 2.5rem;
  padding: 0;
}

:host(.cat-button-pull[size=m]) {
  margin: -0.625rem -0.75rem;
}

:host(.cat-button-pull-h[size=m]) {
  margin-left: -0.75rem;
  margin-right: -0.75rem;
}

:host(.cat-button-pull-v[size=m]) {
  margin-top: -0.625rem;
  margin-bottom: -0.625rem;
}

:host(.cat-button-pull-t[size=m]) {
  margin-top: -0.625rem;
}

:host(.cat-button-pull-l[size=m]) {
  margin-left: -0.75rem;
}

:host(.cat-button-pull-b[size=m]) {
  margin-bottom: -0.625rem;
}

:host(.cat-button-pull-r[size=m]) {
  margin-right: -0.75rem;
}

.cat-button-l {
  min-width: 3rem;
  padding: 0.875rem 1rem;
  font-size: 0.9375rem;
  line-height: 1.25rem;
  gap: 0.5rem;
}
.cat-button-l cat-icon {
  margin-top: -0.125rem;
  margin-bottom: -0.125rem;
}
.cat-button-l.cat-button-icon {
  width: 3rem;
  height: 3rem;
  padding: 0;
}

:host(.cat-button-pull[size=l]) {
  margin: -0.875rem -1rem;
}

:host(.cat-button-pull-h[size=l]) {
  margin-left: -1rem;
  margin-right: -1rem;
}

:host(.cat-button-pull-v[size=l]) {
  margin-top: -0.875rem;
  margin-bottom: -0.875rem;
}

:host(.cat-button-pull-t[size=l]) {
  margin-top: -0.875rem;
}

:host(.cat-button-pull-l[size=l]) {
  margin-left: -1rem;
}

:host(.cat-button-pull-b[size=l]) {
  margin-bottom: -0.875rem;
}

:host(.cat-button-pull-r[size=l]) {
  margin-right: -1rem;
}

.cat-button-xl {
  min-width: 3.5rem;
  padding: 1rem 1.25rem;
  font-size: 1.125rem;
  line-height: 1.5rem;
  gap: 0.75rem;
}
.cat-button-xl.cat-button-icon {
  width: 3.5rem;
  height: 3.5rem;
  padding: 0;
}

:host(.cat-button-pull[size=xl]) {
  margin: -1rem -1.25rem;
}

:host(.cat-button-pull-h[size=xl]) {
  margin-left: -1.25rem;
  margin-right: -1.25rem;
}

:host(.cat-button-pull-v[size=xl]) {
  margin-top: -1rem;
  margin-bottom: -1rem;
}

:host(.cat-button-pull-t[size=xl]) {
  margin-top: -1rem;
}

:host(.cat-button-pull-l[size=xl]) {
  margin-left: -1.25rem;
}

:host(.cat-button-pull-b[size=xl]) {
  margin-bottom: -1rem;
}

:host(.cat-button-pull-r[size=xl]) {
  margin-right: -1.25rem;
}

:host(.cat-tab)::part(button),
:host(.cat-tab-more-button)::part(button) {
  padding: 1.125rem 0.75rem;
  --cat-secondary-bg: transparent;
  --cat-primary-text: transparent;
  --cat-danger-text: transparent;
}
:host(.cat-tab)::part(content)::before,
:host(.cat-tab-more-button)::part(content)::before {
  content: attr(data-text);
  content: attr(data-text)/"";
  height: 0;
  visibility: hidden;
  overflow: hidden;
  user-select: none;
  pointer-events: none;
  font-weight: 700;
}

:host(.cat-text-left) .cat-button {
  justify-content: left;
  text-align: left;
}

:host(.cat-text-right) .cat-button {
  justify-content: right;
  text-align: right;
}

:host(.cat-nav-item) {
  width: 100%;
}
:host(.cat-nav-item) .cat-button {
  box-shadow: none;
  justify-content: left;
  gap: 0.5rem;
}
:host(.cat-nav-item) .cat-button:focus-visible {
  outline-offset: -2px;
}

:host(.cat-time-format) .cat-button {
  border-radius: 0;
}

:host(.cat-date-toggle) .cat-button,
:host(.cat-time-toggle) .cat-button {
  margin-left: -1px;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

:host(.cat-date-item) .cat-button:hover,
:host(.cat-date-toggle) .cat-button:hover,
:host(.cat-time-format) .cat-button:hover,
:host(.cat-time-toggle) .cat-button:hover {
  z-index: 1;
}
:host(.cat-date-item) .cat-button:focus-visible,
:host(.cat-date-toggle) .cat-button:focus-visible,
:host(.cat-time-format) .cat-button:focus-visible,
:host(.cat-time-toggle) .cat-button:focus-visible {
  z-index: 2;
}

:host(.cat-date-item) .cat-button {
  padding: 0;
  min-width: 2rem;
  max-height: 3rem;
  aspect-ratio: 1;
}

:host(.date-start:not(.date-end)) .cat-button {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

:host(.date-end:not(.date-start)) .cat-button {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

:host(.cat-inline) {
  display: inline;
}
:host(.cat-inline) .cat-button {
  display: inline;
  padding: 0;
}
:host(.cat-inline) .cat-button-content {
  display: inline;
}