.lio-choice-card-group {
  display: flex;
  inline-size: 100%;
  min-inline-size: var(--space-zero);
  flex-direction: column;
  gap: var(--space-lg);
  margin: var(--space-zero);
  padding: calc(var(--space-md) - var(--border-w));
  overflow: hidden;
  border: var(--border-w) solid var(--border);
  border-radius: var(--radius-3xl);
  background: var(--surface);
  color: var(--text);
  font-family: var(--font-geist);
}

.lio-choice-card-group__legend {
  position: absolute;
  inline-size: var(--space-px);
  block-size: var(--space-px);
  padding: var(--space-zero);
  margin: calc(var(--space-px) * -1);
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  border: 0;
}

.lio-choice-card-group__header {
  display: grid;
  gap: var(--space-xs2);
}

.lio-choice-card-group__title {
  color: var(--text);
  font: var(--heading-l);
}

.lio-choice-card-group__description {
  margin: var(--space-zero);
  color: var(--text-tertiary);
  font: var(--body-m);
}

.lio-choice-card-group__items {
  display: grid;
  grid-template-columns: repeat(3, minmax(var(--space-zero), 1fr));
  gap: var(--space-base);
}

.lio-choice-card {
  position: relative;
  display: flex;
  min-inline-size: var(--space-zero);
  min-block-size: 90px;
  padding: var(--space-sm) var(--space-base);
  overflow: hidden;
  border: var(--border-w) solid var(--border);
  border-radius: var(--radius-2xl);
  background: var(--surface);
  cursor: pointer;
  transition: background-color 150ms ease, border-color 150ms ease, box-shadow 150ms ease;
}

.lio-choice-card:hover {
  background: var(--surface-hover);
}

.lio-choice-card:has(.lio-choice-card__input:focus-visible) {
  box-shadow: var(--ring-brand);
}

.lio-choice-card:has(.lio-choice-card__input:checked) {
  border-color: var(--border-brand-hover);
  background: var(--brand-surface);
}

.lio-choice-card:has(.lio-choice-card__input:disabled) {
  opacity: var(--opacity-disabled);
  cursor: not-allowed;
}

.lio-choice-card__input {
  position: absolute;
  inline-size: var(--space-px);
  block-size: var(--space-px);
  opacity: 0;
  pointer-events: none;
}

.lio-choice-card__icon {
  display: inline-flex;
  inline-size: var(--size-4xl);
  block-size: var(--size-4xl);
  flex: none;
  align-items: center;
  justify-content: center;
  border-radius: var(--radius-xl);
  background: var(--brand-surface);
  color: var(--icon-brand-secondary);
}

.lio-choice-card__icon img,
.lio-choice-card__icon svg {
  display: block;
  inline-size: var(--size-xl);
  block-size: var(--size-xl);
}

.lio-choice-card:has(.lio-choice-card__input:checked) .lio-choice-card__icon {
  background: var(--brand-surface-selected);
}

.lio-choice-card__copy {
  display: grid;
  min-inline-size: var(--space-zero);
  align-content: start;
  gap: var(--space-xs2);
}

.lio-choice-card__title {
  color: var(--text);
  font: 500 14px/20px var(--font-geist);
}

.lio-choice-card__description {
  color: var(--text-tertiary);
  font: 400 14px/20px var(--font-geist);
}

@media (max-width: 620px) {
  .lio-choice-card-group {
    padding: var(--space-base);
    border-radius: var(--radius-2xl);
  }

  .lio-choice-card-group__items {
    grid-template-columns: minmax(var(--space-zero), 1fr);
  }

  .lio-choice-card {
    min-block-size: auto;
  }
}
