.m3-radio{--radio-display:inline-flex;--radio-align-items:center;--radio-cursor:pointer;--radio-gap:0.75rem;--radio-size:1.25rem;--radio-touch-size:2.5rem;--radio-stroke-width:0.125rem;--radio-border-color:var(--color-text-muted);--radio-background:transparent;--radio-dot-size:0.625rem;--radio-dot-color:var(--color-primary);--radio-dot-opacity:0;--radio-selected-color:var(--color-primary);--radio-state-opacity:0;--radio-state-hover-opacity:0.08;--radio-state-pressed-opacity:0.12;--radio-state-size:0.625rem;--radio-label-size:0.875rem;--radio-label-color:var(--color-text);--radio-outline:none;--radio-outline-offset:0;--radio-box-shadow:none;--radio-transition:all 180ms var(--ease-in-out);align-items:var(--radio-align-items);cursor:var(--radio-cursor);display:var(--radio-display);gap:var(--radio-gap);user-select:none}.m3-radio input[type=radio]{appearance:none;background-color:var(--radio-background);border:none;cursor:var(--radio-cursor);height:var(--radio-touch-size);margin:0;position:relative;width:var(--radio-touch-size)}.m3-radio input[type=radio]:after,.m3-radio input[type=radio]:before{box-sizing:border-box;content:"";left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);transition:var(--radio-transition)}.m3-radio input[type=radio]:before{background-color:var(--radio-background);border:var(--radio-stroke-width) solid var(--radio-border-color);border-radius:var(--radius-full);box-shadow:var(--radio-box-shadow);height:var(--radio-size);outline:var(--radio-outline);outline-offset:var(--radio-outline-offset);width:var(--radio-size)}.m3-radio input[type=radio]:after{background-color:var(--radio-dot-color);border-radius:var(--radius-full);height:var(--radio-dot-size);opacity:var(--radio-dot-opacity);width:var(--radio-dot-size)}.m3-radio input[type=radio]:checked:before{--radio-border-color:var(--radio-selected-color)}.m3-radio input[type=radio]:checked:after{--radio-dot-opacity:1}.m3-radio input[type=radio]:hover:before{--radio-box-shadow:0 0 0 var(--radio-state-size) color-mix(in srgb,var(--radio-border-color) calc(var(--radio-state-hover-opacity)*100%),transparent)}.m3-radio input[type=radio]:checked:hover:before{--radio-box-shadow:0 0 0 var(--radio-state-size) color-mix(in srgb,var(--radio-selected-color) calc(var(--radio-state-hover-opacity)*100%),transparent)}.m3-radio input[type=radio]:active:before{--radio-box-shadow:0 0 0 var(--radio-state-size) color-mix(in srgb,var(--radio-border-color) calc(var(--radio-state-pressed-opacity)*100%),transparent)}.m3-radio input[type=radio]:checked:active:before{--radio-box-shadow:0 0 0 var(--radio-state-size) color-mix(in srgb,var(--radio-selected-color) calc(var(--radio-state-pressed-opacity)*100%),transparent)}.m3-radio input[type=radio]:focus-visible:before{--radio-outline:var(--border-width-2) solid var(--color-focus-ring);--radio-outline-offset:0.25rem}.m3-radio input[type=radio]:disabled{--radio-cursor:not-allowed}.m3-radio input[type=radio]:disabled:before{--radio-border-color:color-mix(in srgb,var(--color-text) 38%,transparent);--radio-box-shadow:none}.m3-radio input[type=radio]:disabled:after{--radio-dot-color:color-mix(in srgb,var(--color-text) 38%,transparent)}.m3-radio .m3-radio-label{color:var(--radio-label-color);font-size:var(--radio-label-size)}.m3-radio.radio-color\:primary{--radio-selected-color:var(--color-primary);--radio-dot-color:var(--color-primary)}.m3-radio.radio-color\:secondary{--radio-selected-color:var(--color-secondary);--radio-dot-color:var(--color-secondary)}.m3-radio.radio-color\:tertiary{--radio-selected-color:var(--color-tertiary);--radio-dot-color:var(--color-tertiary)}.m3-radio.radio-color\:danger{--radio-selected-color:var(--color-danger);--radio-dot-color:var(--color-danger)}.m3-radio.radio-state\:hover input[type=radio]:before{--radio-box-shadow:0 0 0 var(--radio-state-size) color-mix(in srgb,var(--radio-border-color) calc(var(--radio-state-hover-opacity)*100%),transparent)}.m3-radio.radio-state\:hover input[type=radio]:checked:before{--radio-box-shadow:0 0 0 var(--radio-state-size) color-mix(in srgb,var(--radio-selected-color) calc(var(--radio-state-hover-opacity)*100%),transparent)}.m3-radio.radio-state\:active input[type=radio]:before{--radio-box-shadow:0 0 0 var(--radio-state-size) color-mix(in srgb,var(--radio-border-color) calc(var(--radio-state-pressed-opacity)*100%),transparent)}.m3-radio.radio-state\:focus input[type=radio]:before{--radio-outline:var(--border-width-2) solid var(--color-focus-ring);--radio-outline-offset:0.25rem}