/**
 * A heuristic that applies CSS to tablet
 * viewports.
 *
 * Usage:
 * @include tablet-viewport() {
 *   :host {
 *     background-color: green;
 *   }
 * }
 */
/**
 * A heuristic that applies CSS to mobile
 * viewports (i.e. phones, not tablets).
 *
 * Usage:
 * @include mobile-viewport() {
 *   :host {
 *     background-color: blue;
 *   }
 * }
 */
/**
 * Convert a pixels given value into rem
 * 
 * @param pixels - Value in pixels to be converted (i.e. px)
 * @param context (optional) - Baseline value
 */
/**
 * Convert a font size to a dynamic font size.
 * Fonts that participate in Dynamic Type should use
 * dynamic font sizes.
 * @param size - The initial font size including the unit (i.e. px or pt)
 * @param unit (optional) - The unit to convert to. Use this if you want to
 * convert to a unit other than $baselineUnit.
 */
/**
 * Convert a font size to a dynamic font size but impose
 * a maximum font size.
 * @param size - The initial font size including the unit (i.e. px or pt)
 * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
 * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
 * convert to a unit other than $baselineUnit.
 */
/**
 * Convert a font size to a dynamic font size but impose
 * a minimum font size.
 * @param size - The initial font size including the unit (i.e. px or pt)
 * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
 * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
 * convert to a unit other than $baselineUnit.
 */
/**
 * Convert a font size to a dynamic font size but impose
 * maximum and minimum font sizes.
 * @param size - The initial font size including the unit (i.e. px or pt)
 * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
 * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
 * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
 * convert to a unit other than $baselineUnit.
 */
:host {
  height: 100%;
}

:host(.in-modal-default) ion-content::part(scroll) {
  --padding-bottom: var(--token-space-400, var(--token-scale-400, 16px));
}

ion-item {
  --border-width: 0;
}

ion-item.ion-focused::part(native)::after {
  border: none;
}

ion-toolbar {
  font-size: var(--token-font-size-450, 18px);
  font-weight: var(--token-font-weight-medium, 500);
  letter-spacing: var(--token-font-letter-spacing-0, 0%);
  line-height: var(--token-font-line-height-700, var(--token-scale-700, 28px));
  text-decoration: none;
  text-transform: none;
}

ion-list ion-radio::part(container) {
  display: none;
}

ion-list ion-radio::part(label) {
  margin-left: 0;
  margin-right: 0;
  margin-top: 0;
  margin-bottom: 0;
}

ion-list ion-radio::part(label),
ion-list ion-checkbox::part(label) {
  font-size: var(--token-font-size-400, 16px);
  font-weight: var(--token-font-weight-medium, 500);
  letter-spacing: var(--token-font-letter-spacing-0, 0%);
  line-height: var(--token-font-line-height-600, var(--token-scale-600, 24px));
  text-decoration: none;
  text-transform: none;
}

.item-radio-checked,
.item-checkbox-checked {
  --background: var(--token-semantics-primary-100, var(--token-primitives-blue-100, #e9ecfc));
  --border-radius: var(--token-border-radius-400, var(--token-scale-400, 16px));
}

ion-content {
  /**
   * The important is needed to override the padding set
   * for modal sheet by the `core.ionic.scss` file.
   * The modal sheet within the select does not match the
   * padding of the modal sheet in the core.
   */
  /* stylelint-disable-next-line declaration-no-important */
  --padding-start: var(--token-space-400, var(--token-scale-400, 16px)) !important;
  /* stylelint-disable-next-line declaration-no-important */
  --padding-end: var(--token-space-400, var(--token-scale-400, 16px)) !important;
  /* stylelint-disable-next-line declaration-no-important */
  --padding-bottom: var(--token-space-1200, var(--token-scale-1200, 48px)) !important;
}
ion-content:has(.radio-checked) .ion-focused:not(.item-radio-checked) {
  --background-focused-opacity: 1;
}