:root {

    --variation-color: #1c1c1c;

    --variation-active-text: #ffffff;

    --variation-border-radius: 8px;

}

/*

|--------------------------------------------------------------------------

| Variation Wrapper

|--------------------------------------------------------------------------

*/

.variation-radios {

    display: flex;

    flex-wrap: wrap;

    gap: 12px;

    margin-top: 10px;

}

/*

|--------------------------------------------------------------------------

| Hide Radio

|--------------------------------------------------------------------------

*/

.variation-radios input[type="radio"] {

    display: none;

}

/*

|--------------------------------------------------------------------------

| Button Style

|--------------------------------------------------------------------------

*/

.variation-radios label {

    display: flex;

    flex-direction: column;

    align-items: center;

    justify-content: center;

    min-width: 120px;

    padding: 12px 16px;

    border: 2px solid var(--variation-color);

    border-radius: var(--variation-border-radius);

    cursor: pointer;

    transition: all 0.25s ease;

    background: #ffffff;

    color: var(--variation-color);

    text-align: center;

}

/*

|--------------------------------------------------------------------------

| Hover

|--------------------------------------------------------------------------

*/

.variation-radios label:hover {

    transform: translateY(-2px);

}

/*

|--------------------------------------------------------------------------

| Selected

|--------------------------------------------------------------------------

*/

.variation-radios input[type="radio"]:checked + label {

    background: var(--variation-color);

    color: var(--variation-active-text);

}

/*

|--------------------------------------------------------------------------

| Variation Name

|--------------------------------------------------------------------------

*/

.variation-name {

    font-size: 15px;

    font-weight: 600;

    line-height: 1.2;

}

/*

|--------------------------------------------------------------------------

| Variation Price

|--------------------------------------------------------------------------

*/

.variation-price {

    margin-top: 6px;

    font-size: 13px;

    opacity: 0.9;

}

/*

|--------------------------------------------------------------------------

| Hide Reset Link

|--------------------------------------------------------------------------

*/

a.reset_variations {

    display: none !important;

}

/*

|--------------------------------------------------------------------------

| Mobile

|--------------------------------------------------------------------------

*/

@media (max-width: 768px) {

    .variation-radios {

        gap: 10px;

    }

    .variation-radios label {

        min-width: 100px;

        padding: 10px 12px;

    }

}