/* Lightweight, theme-aware card-radio */
.om-card-radio { position: relative; }
.om-card-radio input {
position: absolute;
opacity: 0;
pointer-events: none;
}
.om-card-radio label{
cursor: pointer;
user-select: none;
height: 100%;
border: 1px solid var(--bs-border-color);
border-radius: var(--bs-border-radius-lg);
padding: .9rem .9rem;
background: var(--bs-body-bg);
transition: background-color .15s ease, border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}
.om-card-radio label:hover{
background: var(--bs-tertiary-bg);
border-color: rgba(var(--bs-primary-rgb), .35);
}
.om-card-radio input:focus-visible + label{
outline: 0;
box-shadow: 0 0 0 .25rem rgba(var(--bs-primary-rgb), .25);
}
.om-card-radio input:checked + label{
border-color: rgba(var(--bs-primary-rgb), .85);
box-shadow: 0 0 0 .2rem rgba(var(--bs-primary-rgb), .15);
background: rgba(var(--bs-primary-rgb), .06);
}
.om-card-radio .om-icon{
width: 2.25rem;
height: 2.25rem;
display: inline-flex;
align-items: center;
justify-content: center;
border-radius: .75rem;
background: var(--bs-tertiary-bg);
}
.om-card-radio input:checked + label .om-icon{
background: rgba(var(--bs-primary-rgb), .12);
}