/* Use like: ---------------------------------------------- */
/* div.radiobox > div.radio*n > input[type="radio"] + label */
/* -------------------------------------------------------- */

.radiobox {
  display: flex;
  /* flex-wrap: wrap; */
  gap: 8px;
  padding: 4px;
  background-color: var(--color-bg-tertiary-highlight);
}

.radio {
  position: relative;
  z-index: 1;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 4px;
  box-sizing: border-box;
  width: 100%;
  height: 32px;
  padding: 0 12px;
  color: var(--color-elem-secondary-highlight);
  font-size: var(--font-size-span-m);
  font-weight: 500;
  white-space: nowrap;
  letter-spacing: var(--font-letter-spacing);
  text-decoration: none;
  cursor: pointer;
  transition: var(--transition-m);
}

.radio > input[type="radio"] {
  position: absolute;
  opacity: 0;
}

.radio > input[type="radio"] + label {
  cursor: pointer;
}

.radio > input[type="radio"] + label::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  transition: var(--transition-m);
}

.radio > input[type="radio"]:checked + label {
  color: var(--color-elem-primary);
}

.radio > input[type="radio"]:checked + label::after {
  background-color: var(--color-bg-primary);
  box-shadow: var(--shadow-button);
  border-radius: var(--border-radius-s);
}

/* Use like: ---------------------------------------------- */
/* div.radiobox > div.radio*n > input[type="radio"] + label */
/* -------------------------------------------------------- */

/* Адаптация под структуру Contact Form 7 */
.radiobox {
  display: flex;
  gap: 8px;
  padding: 4px;
  background-color: var(--color-bg-tertiary-highlight);
}

/* Контейнер для каждой радиокнопки (span.wpcf7-list-item) */
.radiobox .wpcf7-list-item {
  margin: 0;
  width: 100%;
}

/* Обертка для label и input */
.radiobox .wpcf7-list-item-label {
  position: relative;
  z-index: 1;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 4px;
  box-sizing: border-box;
  width: 100%;
  height: 32px;
  padding: 0 12px;
  color: var(--color-elem-secondary-highlight);
  font-size: var(--font-size-span-m);
  font-weight: 500;
  white-space: nowrap;
  letter-spacing: var(--font-letter-spacing);
  text-decoration: none;
  cursor: pointer;
  transition: var(--transition-m);
}

/* Скрываем оригинальный input */
.radiobox input[type="radio"] {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}

/* Стили для псевдоэлемента */
.radiobox .wpcf7-list-item-label::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  transition: var(--transition-m);
}

/* Активное состояние */
.radiobox input[type="radio"]:checked + .wpcf7-list-item-label {
  color: var(--color-elem-primary);
}

.radiobox input[type="radio"]:checked + .wpcf7-list-item-label::after {
  background-color: var(--color-bg-primary);
  box-shadow: var(--shadow-button);
  border-radius: var(--border-radius-s);
}

.radio {
  width: 100%;
}

/* Адаптация под структуру Contact Form 7 */
.wpcf7-form .radiobox {
  display: flex;
  gap: 8px;
  padding: 4px;
  background-color: var(--color-bg-tertiary-highlight);
}

.wpcf7-form .radiobox p {
  display: contents;
}

.wpcf7-form .radiobox .wpcf7-list-item {
  margin: 0;
  width: 100%;
}

.wpcf7-form .radiobox .wpcf7-list-item-label {
  position: relative;
  z-index: 1;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 4px;
  box-sizing: border-box;
  width: 100%;
  height: 32px;
  padding: 0 12px;
  color: var(--color-elem-secondary-highlight);
  font-size: var(--font-size-span-m);
  font-weight: 500;
  white-space: nowrap;
  letter-spacing: var(--font-letter-spacing);
  text-decoration: none;
  cursor: pointer;
  transition: var(--transition-m);
}

.wpcf7-form .radiobox input[type="radio"] {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}

.wpcf7-form .radiobox .wpcf7-list-item-label::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  transition: var(--transition-m);
}

.wpcf7-form .radiobox input[type="radio"]:checked + .wpcf7-list-item-label {
  color: var(--color-elem-primary);
}

.wpcf7-form
  .radiobox
  input[type="radio"]:checked
  + .wpcf7-list-item-label::after {
  background-color: var(--color-bg-primary);
  box-shadow: var(--shadow-button);
  border-radius: var(--border-radius-s);
}

.wpcf7-form .radiobox .wpcf7-form-control-wrap {
  width: 100%;
}
