/* Radio button */
input[type="radio"] {
-webkit-appearance: none;
appearance: none;
margin: 0;
font: inherit;
color: red;
width: 1.15em;
height: 1.15em;
border: 0.15em solid red;
border-radius: 50%;
transform: translateY(0.25em);
display: grid;
place-content: center;
}
input[type="radio"]::before {
content: "";
width: 0.65em;
height: 0.65em;
border-radius: 50%;
transform: scale(0);
transition: 120ms transform ease-in-out;
box-shadow: inset 1em 1em red;
display: block;
}
input[type="radio"]:checked::before {
transform: scale(1);
}
/* Checkbox */
input[type="checkbox"] {
-webkit-appearance: none;
appearance: none;
margin: 0;
font: inherit;
color: red;
width: 1.25em;
height: 1.25em;
border: 0.15em solid red;
display: inline-grid;
place-content: center;
}
input[type="checkbox"]::before {
content: '';
width: 0.45em;
height: 0.65em;
transform: scale(0);
transition: .12s transform ease-in-out;
border-width: 0 2px 2px 0;
border-color: red;
border-style: solid;
display: grid;
place-content: center;
}
input[type="checkbox"]:checked::before {
transform: scale(1) rotate(40deg);
}