.toggle {
display: inline-flex;
height: 1.5rem;
width: 2.75rem;
cursor: pointer;
align-items: center;
border-radius: 9999px;
border: 2px solid transparent;
background-color: var(--input);
padding: 0;
transition: all 0.2s ease;
}
.toggle:focus {
outline: none;
box-shadow: 0 0 0 2px hsl(var(--ring) / 0.2);
}
.toggle[data-state="checked"] {
background-color: var(--foreground);
}
.toggle:disabled {
cursor: not-allowed;
opacity: 0.5;
}
.toggle-thumb {
pointer-events: none;
display: block;
height: 1.25rem;
width: 1.25rem;
border-radius: 50%;
background-color: var(--foreground);
box-shadow: var(--shadow);
transition: transform 0.2s ease;
transform: translateX(0);
}
.toggle[data-state="checked"] .toggle-thumb {
transform: translateX(1.25rem);
background-color: var(--background);
}