diff --git a/src/components/Radio.vue b/src/components/Radio.vue
index 20f68d29..10c88074 100644
--- a/src/components/Radio.vue
+++ b/src/components/Radio.vue
@@ -22,11 +22,11 @@ onMounted(() => {
{{ label }}
@@ -39,11 +39,32 @@ label {
--b-border-width: 2px;
}
-input[type="checkbox"]:checked + span {
- --at-apply: bg-$bew-theme-color-70 border-$bew-theme-color;
-}
+input[type="checkbox"]{
-input[type="checkbox"]:checked + span::after {
- --at-apply: border-$bew-theme-color translate-x-full;
+ &:hover + span {
+ --at-apply: bg-$bew-fill-2;
+ }
+
+ &:active + span::after {
+ --at-apply: scale-90;
+ }
+
+ &:checked + span {
+ --at-apply: bg-$bew-theme-color-60 border-$bew-theme-color;
+ }
+
+ &:checked:hover + span {
+ --at-apply: bg-$bew-theme-color-80 border-$bew-theme-color;
+ box-shadow: 0 0 6px 2px var(--bew-theme-color-40), inset 0 0 6px var(--bew-theme-color-30);
+ }
+
+ & + span,
+ & + span::after {
+ transition: .3s cubic-bezier(.25,.15,.29,1.51);
+ }
+
+ &:checked + span::after {
+ --at-apply: border-$bew-theme-color translate-x-full;
+ }
}