/**
 * Do not edit directly
 * Generated on Fri, 02 Aug 2024 20:03:08 GMT
 */
/**
 * Do not edit directly
 * Generated on Fri, 02 Aug 2024 20:03:08 GMT
 */
/**
 * Do not edit directly
 * Generated on Fri, 02 Aug 2024 20:03:08 GMT
 */
/**
 * Do not edit directly
 * Generated on Fri, 02 Aug 2024 20:03:08 GMT
 */
/**
 * Do not edit directly
 * Generated on Fri, 02 Aug 2024 20:03:06 GMT
 */
/* mixins & extensions */
/* helper to properly scale internal durations */
/**
* Currently only used in Checkbox.
*/
:host([disabled]) {
  cursor: default;
  -webkit-user-select: none;
          user-select: none;
  opacity: var(--calcite-opacity-disabled);
}

:host([disabled]) *,
:host([disabled]) ::slotted(*) {
  pointer-events: none;
}

/**
* CSS Custom Properties
*
* These properties can be overridden using the component's tag as selector.
*
* @prop --calcite-checkbox-size: Specifies the component's height and width.
*/
:host([scale=s]) {
  --calcite-checkbox-size: 0.75rem;
}

:host([scale=m]) {
  --calcite-checkbox-size: var(--calcite-font-size--1);
}

:host([scale=l]) {
  --calcite-checkbox-size: 1rem;
}

:host {
  position: relative;
  display: inline-flex;
  cursor: pointer;
  -webkit-user-select: none;
          user-select: none;
  -webkit-tap-highlight-color: transparent;
}
:host .check-svg,
:host .toggle {
  inline-size: var(--calcite-checkbox-size);
  block-size: var(--calcite-checkbox-size);
}
:host .check-svg {
  pointer-events: none;
  box-sizing: border-box;
  display: block;
  overflow: hidden;
  background-color: var(--calcite-color-foreground-1);
  fill: currentColor;
  stroke: currentColor;
  stroke-width: 1;
  transition: background-color, block-size, border-color, box-shadow, color, inset-block-end, inset-block-start, inset-inline-end, inset-inline-start inset-size, opacity, outline-color, transform var(--calcite-animation-timing) ease-in-out 0s, outline 0s, outline-offset 0s;
  box-shadow: inset 0 0 0 1px var(--calcite-color-border-input);
  color: var(--calcite-color-background);
}

:host([status=invalid]:not([checked])) .check-svg {
  box-shadow: inset 0 0 0 1px var(--calcite-color-status-danger);
}
:host([status=invalid]:not([checked])) .toggle:focus {
  outline: 2px solid var(--calcite-color-status-danger);
  outline-offset: calc(
            2px *
            calc(
              1 -
              2 * clamp(
                0,
                var(--calcite-offset-invert-focus),
                1
              )
            )
          );
}

:host([checked]) .check-svg,
:host([indeterminate]) .check-svg {
  background-color: var(--calcite-color-brand);
  box-shadow: inset 0 0 0 1px var(--calcite-color-brand);
}

:host([hovered]) .toggle .check-svg,
:host .toggle:hover .check-svg {
  box-shadow: inset 0 0 0 2px var(--calcite-color-brand);
}

.toggle {
  position: relative;
  outline-color: transparent;
}
.toggle:active, .toggle:focus, .toggle:focus-visible {
  outline: 2px solid var(--calcite-ui-focus-color, var(--calcite-color-brand));
  outline-offset: calc(
            2px *
            calc(
              1 -
              2 * clamp(
                0,
                var(--calcite-offset-invert-focus),
                1
              )
            )
          );
}
.toggle::after, .toggle::before {
  inset-block-start: 50%;
  inset-inline-start: 50%;
  min-block-size: 1.5rem;
  min-inline-size: 1.5rem;
  position: absolute;
}

.toggle:not(.calcite--rtl)::after {
  content: "";
  transform: translateX(-50%) translateY(-50%);
}

.toggle.calcite--rtl::before {
  content: "";
  transform: translateX(50%) translateY(-50%);
}

:host([disabled]) ::slotted([calcite-hydrated][disabled]),
:host([disabled]) [calcite-hydrated][disabled] {
  /* prevent opacity stacking */
  opacity: 1;
}

.interaction-container {
  display: contents;
}

::slotted(input[slot=hidden-form-input]) {
  margin: 0 !important;
  opacity: 0 !important;
  outline: none !important;
  padding: 0 !important;
  position: absolute !important;
  inset: 0 !important;
  transform: none !important;
  -webkit-appearance: none !important;
  z-index: -1 !important;
}

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

[hidden] {
  display: none;
}