/**
 * 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([read-only]) *, :host([disabled]) *,
:host([read-only]) ::slotted(*),
:host([disabled]) ::slotted(*) {
  pointer-events: none;
}

/**
* CSS Custom Properties
*
* These properties can be overridden using the component's tag as selector.
*
* @prop --calcite-rating-spacing-unit: The amount of left and right margin spacing between each rating star.
*/
:host {
  position: relative;
  display: flex;
  align-items: center;
  inline-size: -moz-fit-content;
  inline-size: fit-content;
}

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

.interaction-container {
  display: contents;
}

:host([scale=s]) {
  block-size: 1.5rem;
  --calcite-rating-spacing-unit: 0.25rem;
}

:host([scale=m]) {
  block-size: 2rem;
  --calcite-rating-spacing-unit: 0.5rem;
}

:host([scale=l]) {
  block-size: 2.75rem;
  --calcite-rating-spacing-unit: 0.75rem;
}

.fieldset {
  margin: 0;
  display: flex;
  border-width: 0;
  padding: 0;
  align-items: center;
  gap: var(--calcite-rating-spacing-unit);
}

.wrapper {
  display: inline-block;
}

.star {
  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;
  position: relative;
  display: flex;
  flex-direction: column;
  cursor: pointer;
  color: var(--calcite-color-border-input);
}
.star:focus {
  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
              )
            )
          );
}

.average,
.fraction {
  color: var(--calcite-color-status-warning);
}

.hovered,
.selected {
  color: var(--calcite-color-brand);
}

.fraction {
  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;
  position: absolute;
  pointer-events: none;
  inset-block-start: 0;
  overflow: hidden;
  inset-inline-start: 0;
}

calcite-chip {
  pointer-events: none;
  cursor: default;
}

.number--average {
  font-weight: bold;
}

.number--count {
  color: var(--calcite-color-text-2);
  font-style: italic;
}
.number--count:not(:first-child) {
  margin-inline-start: var(--calcite-rating-spacing-unit);
}

.visually-hidden {
  position: absolute;
  inline-size: 1px;
  block-size: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}

::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;
}