.radio-0001 input[type="radio"] {
    appearance: none;
    display: block;
    margin-right: 10px;
    width: 24px;
    height: 24px;
    border-radius: 25px;
    cursor: pointer;
    box-shadow: rgba(255, 255, 255, 0.15) 0 1px 1px, inset rgba(0, 0, 0, 0.5) 0 0 0 1px;
    background-color: rgba(0, 0, 0, 0.2);
    background-image: radial-gradient( rgba(237, 228, 255, 1) 0%, rgba(215, 187, 245, 1) 15%, rgba(160, 118, 249, 0.3) 28%, rgba(101, 40, 247, 0) 70% );
    background-repeat: no-repeat;
    transition: .15s cubic-bezier(0, .8, 1, 1);
    filter: blur(1px);
}
.radio-0001 input[type="radio"]:checked {
    transition: .2s .15s cubic-bezier(1, 0, .2, 1);
}
.radio-0001 input[type="radio"]:active {
    transition: .1s cubic-bezier(1, 0, .2, 1);
}

.radio-0001 input[type="radio"],
.radio-0001 input[type="radio"]:active {
    background-position: 0 -24px;
}
.radio-0001 input[type="radio"]:checked {
    background-position: 0 0;
}

/* *************************************** */
.radio-0002 input[type="radio"] {
    appearance: none;
    width: 20px;
    height: 20px;
    border-radius: 25px 12px 25px 12px;
    padding: 5px;
    cursor: pointer;
    box-shadow: rgba(255, 255, 255, 0.15) 0 1px 1px, inset rgba(0, 0, 0, 0.5) 0 0 0 1px;
    border: 0px solid rgba(184, 149, 112, 1);
}

.radio-0002 input[type="radio"]:checked {
    background-image: radial-gradient( rgba(237, 228, 255, 1) 0%, rgba(215, 187, 245, 1) 15%, rgba(160, 118, 249, 0.3) 28%, rgba(101, 40, 247, 0) 70% );
    box-shadow: rgba(255, 255, 255, 0.15) 0 1px 1px, inset rgba(0, 0, 0, 0.5) 0 0 0 1px;
    animation: anim-radio-0002 1s ease-out;
}

@keyframes anim-radio-0002 {
    0% {
        filter: brightness(1);
    }
    50% {
        filter: brightness(3.2);
    }
    100% {
        filter: brightness(1);
    }
}

/* *************************************** */
.radio-0003 input[type="radio"] {
    appearance: none;
    width: 20px;
    height: 20px;
    border-radius: 5px;
    padding: 1px;
    cursor: pointer;
    box-shadow: rgba(255, 255, 255, 0.15) 0 1px 1px, inset rgba(0, 0, 0, 0.5) 0 0 0 1px;
}

.radio-0003 input[type="radio"]:checked {
    background-image: linear-gradient(135deg, rgba(169 ,108 ,254 ,1) 0%, rgba(236,113,207,1) 50%, rgba(255,134,153,1) 75%, rgba(255,168,102,1) 100%);
    background-size: 10px 10px;
    background-position: center;
    background-repeat: no-repeat;
    animation: anim-radio-0003 1s ease-out;
    filter: blur(1px);
}

@keyframes anim-radio-0003 {
    0% {
        filter: brightness(1) blur(1px);
    }
    50% {
        filter: brightness(1.5) blur(1px);
    }
    100% {
        filter: brightness(1) blur(1px);
    }
}

/* *************************************** */
.radio-0004 input[type="radio"] {
    appearance: none;
    width: 22px;
    height: 22px;
    border-radius: 25px;
    cursor: pointer;
    box-shadow: rgba(255, 255, 255, 0.15) 0 1px 1px, inset rgba(0, 0, 0, 0.5) 0 0 0 1px;
}

.radio-0004 input[type="radio"]:checked::before {
    content: '😊';
    font-size: 16px;
    transition: 1s ease-out;
}

/* *************************************** */
.radio-0005 .radio-input-0005 {
    overflow: hidden;
    position: absolute;
    width: 1px;
}

.radio-0005:hover {
    color: #2260ff;
}

.radio-0005 .radio-input-0005:checked + .radio-tile:before {
    transform: scale(1);
    opacity: 1;
}

.radio-0005 .radio-tile {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 80px;
    min-height: 80px;
    border-radius: 5px;
    border: 2px solid rgba(181, 191, 217, 1);
    background-color: rgba(255, 255, 255, 1);
    transition: 0.15s ease;
    cursor: pointer;
}
.radio-0005 .radio-tile:before {
    content: "";
    position: absolute;
    display: block;
    width: 20px;
    height: 20px;
    border: 1px solid rgba(181, 191, 217, 1);
    background-color: rgba(255, 255, 255, 0.5);
    border-radius: 5px;
    top: 5px;
    left: 5px;
    opacity: 0;
    transform: scale(0);
    transition: 0.25s ease;
    background-image: url("../images/btn-image/green-tick.png");
    background-size: 12px;
    background-repeat: no-repeat;
    background-position: 50% 50%;
}
/* ************************************* */
.radio-0006 input[type="radio"] {
    appearance: none;
    display: block;
    width: 24px;
    height: 24px;
    cursor: pointer;
    margin-bottom: 10px;
    border-bottom: 1px dotted rgba(184, 149, 112, 1);
    transition: .15s cubic-bezier(0, .8, 1, 1);
    filter: blur(1.1);
}
.radio-0006 input[type="radio"]:checked {
    transition: .2s .15s cubic-bezier(1, 0, .2, 1);
}
.radio-0006 input[type="radio"]:active {
    transition: .1s cubic-bezier(1, 0, .2, 1);
}

.radio-0006 input[type="radio"]:checked::before{
    content: "✓";
    display: flex;
    align-items: center;
    justify-content: center;
    color: rgba(0, 123, 2, 0.912);
}

/* *************************************** */
.radio-0007 input[type="radio"] {
    appearance: none;
    position: relative;
    display: block;
    margin-right: 10px;
    width: 24px;
    height: 24px;
    border-radius: 25px;
    cursor: pointer;
    box-shadow: rgba(255, 255, 255, 0.15) 0 1px 1px, inset rgba(0, 0, 0, 0.5) 0 0 0 1px;
    background-color: rgba(0, 0, 0, 0.2);
    background-image: radial-gradient(76% 151% at 52% -52%, rgba(255, 255, 255, 0.23) 0%, transparent 100%);
    background-repeat: no-repeat;
    background-size: 24px;
    transition: .15s cubic-bezier(0, .8, 1, 1);
    filter: brightness(1.1);
    transform: scale(0);
}

.radio-0007 input[type="radio"]::before {
    content: '';
    position: absolute;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    top: 8px;
    left: 8px;
    background-color: rgba(240, 248, 255, 1);
    filter: blur(1px);
}
.radio-0007 input[type="radio"]:checked {
    transform: scale(1);
}

.radio-0007 input[type="radio"]:active {
    transition: .1s cubic-bezier(1, 0, .2, 1);
}

.radio-0007 input[type="radio"],
.radio-0007 input[type="radio"]:active {
    background-position: 24px 0;
}

.radio-0007 input[type="radio"]:checked {
    background-position: 0 0;
}

/* *************************************** */
.radio-0008 input[type="radio"] {
    appearance: none;
    display: block;
    margin-right: 10px;
    width: 24px;
    height: 24px;
    border-radius: 5px;
    cursor: pointer;
    box-shadow: rgba(255, 255, 255, 0.15) 0 1px 1px, inset rgba(0, 0, 0, 0.5) 0 0 0 1px;
    background-color: rgba(0, 0, 0, 0.2);
    background-image: url("../images/btn-image/green-tick.png");
    background-size: 22px;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    transition: .15s cubic-bezier(0, .8, 1, 1);
    filter: blur(1.1);
}

.radio-0008 input[type="radio"]:checked {
    transition: .2s .15s cubic-bezier(1, 0, .2, 1);
}

.radio-0008 input[type="radio"]:active {
    transition: .1s cubic-bezier(1, 0, .2, 1);
}

.radio-0008 input[type="radio"],
.radio-0008 input[type="radio"]:active {
    background-position: 24px 0;
}

.radio-0008 input[type="radio"]:checked {
    background-position: 0 0;
}

/* *************************************** */
.radio-0009 input[type="radio"] {    
    appearance: none;
    display: block;
    margin-right: 10px;
    width: 24px;
    height: 24px;
    border-radius: 25px;
    cursor: pointer;
    box-shadow: rgba(255, 255, 255, 0.15) 0 1px 1px, inset rgba(0, 0, 0, 0.5) 0 0 0 1px;
    background-color: rgba(0, 0, 0, 0.2);
    background-position: 0 -24px;
    transition: .15s cubic-bezier(0, .8, 1, 1);
    filter: blur(0.5px) brightness(1.5);
}

.radio-0009 input[type="radio"]:checked {
    box-shadow: 0 0 1em .25em rgba(115, 236, 139, 1),
        0 0 4em 1em rgba(84, 195, 146, 0.8),
        inset 0 0 .75em .25em rgba(115, 236, 139, 1);
    background-position: 0 0;
    transition: .2s .15s cubic-bezier(1, 0, .2, 1);
}

/* *************************************** */
.radio-0010 input[type="radio"] {
    --glow-color: rgba(255, 0, 112, 1);
    --glow-spread-color: rgba(160, 0, 22, 0.781);
    --enhanced-glow-color: rgba(255, 0, 202, 1);

    appearance: none;
    position: relative;
    display: block;
    margin-right: 10px;
    width: 24px;
    height: 24px;
    border-radius: 25px;
    cursor: pointer;
    box-shadow: rgba(255, 255, 255, 0.15) 0 1px 1px, inset rgba(0, 0, 0, 0.5) 0 0 0 1px;
    background-color: rgba(0, 0, 0, 0.2);
    background-image: radial-gradient(76% 151% at 52% -52%, rgba(255, 255, 255, 0.23) 0%, transparent 100%);
    background-repeat: no-repeat;
    background-size: 24px;
    transition: .15s cubic-bezier(0, .8, 1, 1);
    filter: brightness(1.1);
    transform: scale(0);
}

.radio-0010 input[type="radio"]::before {
    content: '';
    position: absolute;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    top: 8px;
    left: 8px;
    box-shadow: 0 0 1em .25em var(--glow-color),
        0 0 4em 1em var(--glow-spread-color),
        inset 0 0 .75em .25em var(--glow-color);
    filter: blur(1px);
}
.radio-0010 input[type="radio"]:checked {
    transform: scale(1);
}

.radio-0010 input[type="radio"]:active {
    transition: .1s cubic-bezier(1, 0, .2, 1);
}

.radio-0010 input[type="radio"],
.radio-0010 input[type="radio"]:active {
    background-position: 24px 0;
}

.radio-0010 input[type="radio"]:checked {
    background-position: 0 0;
    filter: blur(0.5px);
}

/* *************************************** */
.radio-0011 .radio-input-0011 {
    overflow: hidden;
    position: absolute;
    width: 1px;
}

.radio-0011:hover {
    color: #2260ff;
}

.radio-0011 .radio-input-0011:checked + .radio-tile:before {
    transform: scale(1);
    opacity: 1;
}

.radio-0011 .radio-tile {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 80px;
    min-height: 80px;
    border-radius: 5px;
    border: 2px solid rgba(181, 191, 217, 1);
    background-color: rgba(255, 255, 255, 1);
    transition: 0.15s ease;
    cursor: pointer;
}
.radio-0011 .radio-tile:before {
    content: "";
    position: absolute;
    display: block;
    width: 20px;
    height: 20px;
    border: 1px solid rgba(181, 191, 217, 1);
    background-color: rgba(255, 255, 255, 0.5);
    border-radius: 5px;
    top: 5px;
    left: 5px;
    opacity: 0;
    transform: scale(0);
    transition: 0.25s ease;
    background-image: url("../images/btn-image/green-tick.png");
    background-size: 12px;
    background-repeat: no-repeat;
    background-position: 50% 50%;
}
/* ************************************* */
.radio-0012-label{
    font-size: 16px;
    cursor: pointer;
}
.radio-0012{
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 5px;
}
.radio-0012 input[type="radio"] {
    appearance: none;
    position: relative;
    margin-right: 10px;
    background-color: rgba(0, 191, 255, 0.2);
    width: 40px;
    height: 18px;
    border-radius: 25px 25px 25px 25px;
    box-shadow: rgba(255, 255, 255, 0.15) 0 1px 1px, inset rgba(0, 0, 0, 0.5) 0 0 0 1px;
    background-image: radial-gradient(76% 151% at 52% -52%, rgba(255, 255, 255, 0.2) 0%, transparent 100%);
    transition: 0.2s ease-in-out;
    transform: scale(0);
    cursor: pointer;
}

.radio-0012 input[type="radio"]:checked {
    transform: scale(1);
}

.radio-0012-dot {
    position: absolute;
    box-shadow: 0 0 16px 4px rgba(0, 210, 255, 1), 0 0 64px 16px rgba(0, 0, 255, 0.8), inset 0 0 12px 4px rgba(0, 210, 255, 1);
    width: 24px;
    height: 8px;
    border-radius: 50px 50px 50px 50px;
    top: 8px;
    left: 8px;
    transition: 0.2s ease-in-out;
    transform: scale(0);
    filter: blur(1px);
}

.radio-0012 input[type="radio"]:checked ~ .radio-0012-dot {
    transform: scale(1);
}
/* ************************************* */