/* Lagos Life radio. Owner 5c. Spec: inputs.html#checkbox-radio.
   Shares the box, focus, error and inactive rules with checkbox.css (link both).
   Markup: <fieldset class="ll-radio-group"><legend>…</legend>
             <label class="ll-radio"><input class="ll-radio__box" type="radio" name="x"><span class="ll-radio__label">…</span></label>
           </fieldset> */

.ll-radio-group { display: grid; gap: 0; margin: 0; padding: 0; border: 0; min-width: 0; }
.ll-radio-group > legend { padding: 0; margin-bottom: var(--space-1); font: var(--type-label); color: var(--ink); }

.ll-radio {
  display: flex;
  align-items: flex-start;
  gap: var(--space-3);
  min-height: var(--tap-min);
  padding: calc((var(--tap-min) - var(--checkbox-size)) / 2) 0;
  color: var(--ink);
  font: var(--type-body-sm);
  cursor: pointer;
}
.ll-radio__label { padding-top: var(--space-0-5); min-width: 0; }
.ll-radio__hint { display: block; font: var(--type-label-sm); font-weight: var(--weight-regular); color: var(--ink-soft); }

.ll-radio__box { border-radius: 50%; }
.ll-radio__box::before {
  content: "";
  width: var(--space-2-5);
  height: var(--space-2-5);
  border-radius: 50%;
  background-color: var(--leaf-deep);
  transform: scale(0);
  transition: transform var(--duration-pop) var(--ease-spring);
}
.ll-radio__box:checked { box-shadow: inset 0 0 0 2px var(--leaf-deep); }
.ll-radio__box:checked::before { transform: scale(1); }
.ll-radio__box:checked:focus-visible,
.ll-radio__box:checked[data-demo-state="focus"] { box-shadow: 0 0 0 var(--focus-offset) var(--focus-halo), inset 0 0 0 2px var(--leaf-deep); }
.ll-radio__box:disabled::before { background-color: var(--ink-inactive); }
