﻿/* --- GENERAL RESET --- */
input[type="checkbox"],
input[type="radio"] {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    margin: 0 5px 0 0;
    cursor: pointer;
    vertical-align: middle;
    display: inline-block;
    background-color: #fff;
    border: 2px solid #777;
    transition: all 0.2s ease;
}

/* --- CHECKBOXES --- */
input[type="checkbox"] {
    width: 18px;
    height: 18px;
    border-radius: 4px;
    position: relative;
}

    /* Hover / focus effects */
    input[type="checkbox"]:hover {
        border-color: #1e5696;
        box-shadow: 0 0 0 3px rgba(30, 86, 150, 0.15);
    }

    input[type="checkbox"]:focus-visible {
        outline: 2px solid #8bd3e6;
        outline-offset: 2px;
    }

    /* Checked state */
    input[type="checkbox"]:checked {
        background-color: #1e5696;
        border-color: #1e5696;
        background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3.5 8.5L6.5 11.5L12.5 5.5' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
        background-repeat: no-repeat;
        background-position: center;
        background-size: 90%;
    }

/* --- RADIOS --- */
input[type="radio"] {
    width: 22px;
    height: 22px;
    border-radius: 50%;
}

    /* Hover / focus */
    input[type="radio"]:hover {
        border-color: #1e5696;
        box-shadow: 0 0 0 3px rgba(30, 86, 150, 0.15);
    }

    input[type="radio"]:focus-visible {
        outline: 2px solid #8bd3e6;
        outline-offset: 2px;
    }

    /* Checked state (inner dot) */
    input[type="radio"]:checked {
        border-color: #1e5696;
        background-image: radial-gradient(#1e5696 40%, transparent 41%);
    }
input[type=checkbox]:checked:after {
    width: unset;
    height: unset;
    padding: unset;
    content: unset;
    margin: unset;
    color: unset;
    display: unset;
    background-color: unset;
}
/* --- LABEL STYLING (optional, if present) --- */
.forCheckbox label, input[type=checkbox] + label {
    cursor: pointer;
    color: #333;
    font-size: 1.3rem;
    line-height: 1.4;
    font-weight: 500;
}
