﻿.card-radio-group {
    display: flex;
    flex-direction: column;
    gap: 4px;
    font-family: sans-serif;
    max-width: 100%;
    margin-bottom: 8px;
}

    .card-radio-group .radio-card {
        display: flex;
        align-items: flex-start;
        gap: 10px;
        padding: 8px 12px;
        border: 1.4px solid #e2e5e9;
        border-radius: 4px;
        cursor: pointer;
        transition: border-color 0.15s ease, background 0.15s ease;
        position: relative;
    }

        .card-radio-group .radio-card:hover {
            border-color: #b3c6f7;
        }

        .card-radio-group .radio-card input {
            position: absolute;
            opacity: 0;
            pointer-events: none;
        }

    .card-radio-group .radio-dot {
        width: 16px;
        height: 16px;
        border: 2px solid #c3c9d1;
        border-radius: 50%;
        flex-shrink: 0;
        margin-top: 2px;
        position: relative;
        transition: border-color 0.15s ease;
    }

        .card-radio-group .radio-dot::after {
            content: "";
            position: absolute;
            top: 50%;
            left: 50%;
            width: 8px;
            height: 8px;
            border-radius: 50%;
            background: #3b6df0;
            transform: translate(-50%, -50%) scale(0);
            transition: transform 0.15s ease;
        }

    .card-radio-group .radio-icon {
        font-size: 15px;
        margin-top: 1px;
    }

    .card-radio-group .radio-text {
        display: flex;
        flex-direction: column;
        gap: 2px;
    }

    .card-radio-group .radio-title {
        font-size: 14px;
        font-weight: 600;
        color: #1f2430;
    }

    .card-radio-group .radio-subtitle {
        font-size: 12.5px;
        color: #8a90a0;
    }

    .card-radio-group .radio-card input:checked ~ .radio-dot {
        border-color: #3b6df0;
    }

        .card-radio-group .radio-card input:checked ~ .radio-dot::after {
            transform: translate(-50%, -50%) scale(1);
        }

    .card-radio-group .radio-card:has(input:checked) {
        border-color: var(--primary);
        background: #f2f6fe;
    }

    .card-radio-group .radio-icon {
        display: flex;
        align-items: center;
        color: var(--primary);
        margin-top: 2px;
    }

    .card-radio-group .radio-card input:checked ~ .radio-icon {
        color: var(--primary);
    }

.notfication-error {
    color: #dc2626;
    font-size: 13px;
}
