<div class="radio ">
    <fieldset class="fieldset " aria-labelledby="legend-id">
        <legend class="radio__legend " id="legend-id">
            Choose option
        </legend>
        <div class="radio__handler">
            <input type="radio" id="id1" name="radio1" class="radio__field">
            <label for="id1" class="radio__label">
                <span class="radio__text">
                    Option one
                </span>
            </label>
        </div>
        <div class="radio__handler">
            <input type="radio" id="id2" name="radio1" class="radio__field">
            <label for="id2" class="radio__label">
                <span class="radio__text">
                    Option two
                </span>
            </label>
        </div>
        <div class="radio__handler">
            <input type="radio" id="id3" name="radio1" class="radio__field">
            <label for="id3" class="radio__label">
                <span class="radio__text">
                    Options three Long label text. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque eu elementum dui, eget volutpat purus. Aliquam ullamcorper tortor non massa rhoncus, in faucibus ligula lacinia.
                </span>
            </label>
        </div>
    </fieldset>
</div>
        
    
        <div class="radio {{ class }}">
    <fieldset class="fieldset {{ fieldsetClass }}" aria-labelledby="{{ legendId }}">
        {{#if legend }}
            <legend class="radio__legend {{ legendClass }}" id="{{ legendId }}">
                {{ legend }}
            </legend>
        {{/if }}
        {{#each options}}
            <div class="radio__handler">
                <input
                    type="radio"
                    id="{{ id }}"
                    name="{{ ../name }}"
                    class="radio__field"
               >
                <label
                    for="{{ id }}"
                    class="radio__label"
                >
                    <span class="radio__text">
                        {{ label }}
                    </span>
                </label>
            </div>
        {{/each}}
    </fieldset>
</div>
    
        
            
            {
  "name": "radio1",
  "fieldsetClass": "",
  "legend": "Choose option",
  "legendId": "legend-id",
  "options": [
    {
      "id": "id1",
      "label": "Option one"
    },
    {
      "id": "id2",
      "label": "Option two"
    },
    {
      "id": "id3",
      "label": "Options three Long label text. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque eu elementum dui, eget volutpat purus. Aliquam ullamcorper tortor non massa rhoncus, in faucibus ligula lacinia. "
    }
  ]
}
            
        
    
                                $radio__size                    : 24px !default;
$radio__dot-size                : 12px !default;
$radio__margin                  : 0 0 $spacer--medium 0 !default;
$radio__label-font-size         : $font-size-base !default;
$radio__label-color             : $color-secondary !default;
$radio__label-color-active      : $color-primary !default;
$radio__label-font-weight-active: $font-weight-normal !default;
$radio__label-line-height       : $font-line-height !default;
$radio__label-margin            : $spacer--small 0 !default;
$radio__icon-margin-right       : $spacer !default;
$radio__icon-border             : 2px solid $color-primary !default;
$radio__icon-background         : $color-primary !default;
$radio__icon-transition         : $transition-base !default;
$radio__legend-margin           : $radio__margin !default;
$radio__text-width              : calc(100% - #{$radio__icon-margin-right + $radio__size}) !default;
                            
                            
                        
                                @import 'radio-variables';
.radio {
    position: relative;
    margin: $radio__margin;
    &__legend {
        margin: $radio__legend-margin;
        &--hidden {
            @include visually-hidden();
        }
    }
    &__handler {
        position: relative;
    }
    &__field {
        position: absolute;
        left: 0;
        height: $radio__size;
        width: $radio__size;
        opacity: 0;
        z-index: -1;
        &:checked + .radio__label {
            color: $radio__label-color-active;
            font-weight: $radio__label-font-weight-active;
            &:before {
                border-color: $radio__icon-background;
            }
            &:after {
                opacity: 1;
                transform: scale(1);
            }
        }
        &.focus-visible + .radio__label {
            @include focus();
        }
    }
    &__label {
        position: relative;
        display: flex;
        flex-flow: row nowrap;
        height: auto;
        width: 100%;
        margin: $radio__label-margin;
        line-height: $radio__label-line-height;
        font-size: $radio__label-font-size;
        color: $radio__label-color;
        cursor: pointer;
        &:before {
            content: '';
            position: relative;
            display: inline-block;
            border: $radio__icon-border;
            border-radius: $radio__size;
            width: $radio__size;
            min-width: $radio__size;
            height: $radio__size;
            margin-right: $radio__icon-margin-right;
        }
        &:after {
            position: absolute;
            top: 6px;
            left: 6px;
            content: '';
            width: $radio__dot-size;
            height: $radio__dot-size;
            border-radius: $radio__dot-size;
            margin: auto;
            opacity: 0;
            transform: scale(0);
            background-color: $radio__icon-background;
            transition: $radio__icon-transition;
        }
    }
    &__text {
        width: $radio__text-width;
    }
}
                            
                            
                        No notes defined.