.nvr-icon-wrap {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    border: 1.5px solid;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-size: 1rem;
}

.model-card {
    border: 1.5px solid var(--bs-border-color);
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.15s ease;
    background: var(--bs-body-bg);
}

.model-card:hover {
    border-color: var(--bs-primary);
    box-shadow: 0 0 0 3px rgba(var(--bs-primary-rgb), 0.1);
}

.model-card-selected {
    border-color: var(--bs-primary);
    background-color: rgba(var(--bs-primary-rgb), 0.05);
    box-shadow: 0 0 0 3px rgba(var(--bs-primary-rgb), 0.15);
}

.stream-card {
    border: 1.5px solid var(--bs-border-color);
    border-radius: 8px;
    padding: 10px 12px;
    cursor: pointer;
    transition: all 0.15s ease;
    background: var(--bs-body-bg);
}

.stream-card:hover {
    border-color: var(--bs-primary);
    background: rgba(var(--bs-primary-rgb), 0.04);
}

.stream-card-selected {
    border-color: #22c55e;
    background: rgba(34, 197, 94, 0.06);
}

.stream-card-icon {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bs-secondary-bg);
    color: var(--bs-secondary-color);
    flex-shrink: 0;
    transition: all 0.15s;
}

.stream-card-icon.active {
    background: rgba(34, 197, 94, 0.15);
    color: #22c55e;
}
